Package play

Interface ApplicationLoader

  • All Known Implementing Classes:
    GuiceApplicationLoader

    public interface ApplicationLoader
    Loads an application. This is responsible for instantiating an application given a context.

    Application loaders are expected to instantiate all parts of an application, wiring everything together. They may be manually implemented, if compile time wiring is preferred, or core/third party implementations may be used, for example that provide a runtime dependency injection framework.

    During dev mode, an ApplicationLoader will be instantiated once, and called once, each time the application is reloaded. In prod mode, the ApplicationLoader will be instantiated and called once when the application is started.

    Out of the box Play provides a Java and Scala default implementation based on Guice. The Java implementation is the GuiceApplicationLoader and the Scala implementation is GuiceApplicationLoader.

    A custom application loader can be configured using the `play.application.loader` configuration property. Implementations must define a no-arg constructor.

    • Method Detail

      • load

        Application load​(ApplicationLoader.Context context)
        Load an application given the context.
        Parameters:
        context - the context the apps should be loaded into
        Returns:
        the loaded application
      • create

        static ApplicationLoader.Context create​(Environment environment,
                                                Map<String,​Object> initialSettings)
        Create an application loading context.

        Locates and loads the necessary configuration files for the application.

        Parameters:
        environment - The application environment.
        initialSettings - The initial settings. These settings are merged with the settings from the loaded configuration files, and together form the initialConfiguration provided by the context. It is intended for use in dev mode, to allow the build system to pass additional configuration into the application.
        Returns:
        the created context
      • create

        static ApplicationLoader.Context create​(Environment environment)
        Create an application loading context.

        Locates and loads the necessary configuration files for the application.

        Parameters:
        environment - The application environment.
        Returns:
        a context created with the provided underlying environment