play.api

Application

Related Docs: object Application | package api

trait Application extends AnyRef

A Play application.

Application creation is handled by the framework engine.

If you need to create an ad-hoc application, for example in case of unit testing, you can easily achieve this using:

val application = new DefaultApplication(new File("."), this.getClass.getClassloader, None, Play.Mode.Dev)

This will create an application using the current classloader.

Annotations
@implicitNotFound( ... )
Source
Application.scala
Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Application
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def actorSystem: ActorSystem

    The default ActorSystem used by the application.

  2. abstract def classloader: ClassLoader

    The application's classloader

  3. abstract def configuration: Configuration

  4. abstract def errorHandler: HttpErrorHandler

    The HTTP error handler

  5. abstract def mode: Mode.Mode

    Dev, Prod or Test

  6. abstract def path: File

    The absolute path hosting this application, mainly used by the getFile(path) helper method

  7. abstract def plugins: Seq[Deprecated]

  8. abstract def requestHandler: HttpRequestHandler

    The HTTP request handler

  9. abstract def stop(): Future[Unit]

    Stop the application.

    Stop the application. The returned future will be redeemed when all stop hooks have been run.

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  5. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  10. def getExistingFile(relativePath: String): Option[File]

    Retrieves a file relative to the application root path.

    Retrieves a file relative to the application root path. This method returns an Option[File], using None if the file was not found.

    Note that it is up to you to manage the files in the application root path in production. By default, there will be nothing available in the application root path.

    For example, to retrieve some deployment specific data file:

    val myDataFile = application.getExistingFile("data/data.xml")
    relativePath

    the relative path of the file to fetch

    returns

    an existing file

  11. def getFile(relativePath: String): File

    Retrieves a file relative to the application root path.

    Retrieves a file relative to the application root path.

    Note that it is up to you to manage the files in the application root path in production. By default, there will be nothing available in the application root path.

    For example, to retrieve some deployment specific data file:

    val myDataFile = application.getFile("data/data.xml")
    relativePath

    relative path of the file to fetch

    returns

    a file instance; it is not guaranteed that the file exists

  12. def global: GlobalSettings

  13. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  14. def injector: Injector

    Get the injector for this application.

    Get the injector for this application.

    returns

    The injector.

  15. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  16. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  17. final def notify(): Unit

    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  19. def plugin[T](implicit ct: ClassTag[T]): Option[T]

    Retrieves a plugin of type T.

    Retrieves a plugin of type T.

    For example, to retrieve the DBPlugin instance:

    val dbPlugin = application.plugin[DBPlugin].map(_.api).getOrElse(sys.error("problem with the plugin"))
    T

    the plugin type

    returns

    The plugin instance used by this application.

    Exceptions thrown

    Error if no plugins of type T are loaded by this application.

  20. def plugin[T](pluginClass: Class[T]): Option[T]

    Retrieves a plugin of type T.

    Retrieves a plugin of type T.

    For example, retrieving the DBPlugin instance:

    val dbPlugin = application.plugin(classOf[DBPlugin])
    T

    the plugin type

    pluginClass

    the plugin’s class

    returns

    the plugin instance, wrapped in an option, used by this application

    Exceptions thrown

    Error if no plugins of type T are loaded by this application

  21. def resource(name: String): Option[URL]

    Scans the application classloader to retrieve a resource.

    Scans the application classloader to retrieve a resource.

    The conf directory is included on the classpath, so this may be used to look up resources, relative to the conf directory.

    For example, to retrieve the conf/logger.xml configuration file:

    val maybeConf = application.resource("logger.xml")
    name

    the absolute name of the resource (from the classpath root)

    returns

    the resource URL, if found

  22. def resourceAsStream(name: String): Option[InputStream]

    Scans the application classloader to retrieve a resource’s contents as a stream.

    Scans the application classloader to retrieve a resource’s contents as a stream.

    The conf directory is included on the classpath, so this may be used to look up resources, relative to the conf directory.

    For example, to retrieve the conf/logger.xml configuration file:

    val maybeConf = application.resourceAsStream("logger.xml")
    name

    the absolute name of the resource (from the classpath root)

    returns

    a stream, if found

  23. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  24. def toString(): String

    Definition Classes
    AnyRef → Any
  25. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def routes: Router

    The router used by this application.

    The router used by this application.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.4.0) Either use HttpRequestHandler, or have the router injected

Inherited from AnyRef

Inherited from Any

Ungrouped