A representation of the Accept-Encoding header
Configuration for action composition.
Configuration for action composition.
If annotations put on controllers should be executed before the ones put on actions.
If the action returned by the action creator should be executed before the action composition ones.
Defines the default content type for type A
.
Defines the default content type for type A
.
the content type
the default content type for A
, if any
Defines common HTTP Content-Type header values, according to the current available Codec.
The cookies configuration
The cookies configuration
Whether strict cookie parsing should be used. If true, will cause the entire cookie header to be discarded if a single cookie is found to be invalid.
Contains typeclasses for ContentTypeOf.
Default implementation of FileMimeTypes.
The default HTTP error handler.
The default HTTP error handler.
This class is intended to be extended, allowing users to reuse some of the functionality provided here.
A default implementation of HttpFilters that accepts filters as a varargs constructor and exposes them as a filters sequence.
A default implementation of HttpFilters that accepts filters as a varargs constructor and exposes them as a filters sequence. This is available for runtime DI users who don't want to do things in configuration using play.filters.enabled, because they need more fine grained control over the injected components.
For example:
class Filters @Inject()(defaultFilters: EnabledFilters, corsFilter: CORSFilter) extends DefaultHttpFilters(defaultFilters.filters :+ corsFilter: _*)
A base implementation of the HttpRequestHandler that handles Scala actions.
A base implementation of the HttpRequestHandler that handles Scala actions. If you use Java actions in your application, you should override JavaCompatibleHttpRequestHandler; otherwise you can override this for your custom handler.
Technically, this is not the default request handler that Play uses, rather, the JavaCompatibleHttpRequestHandler is the default one, in order to provide support for Java actions.
Default Writeable.
This class provides filters that are "automatically" enabled through play.filters.enabled
.
This class provides filters that are "automatically" enabled through play.filters.enabled
.
A list of default filters are defined in reference.conf.
See https://www.playframework.com/documentation/latest/Filters for more information.
A representation of an encoding preference as specified in the Accept-Encoding header.
A representation of an encoding preference as specified in the Accept-Encoding header. This contains an encoding name (or *), and an optional q-value.
Defines behavior for file type mappings.
Defines behavior for file type mappings.
This trait is primarily used with results and assets that send files, for users who want to send a file without having to specify an explicit content type. For example, a user can send a file with ".json":
implicit val fileMimeTypes = ... val file = new File("test.json") Ok.sendFile(file) // <-- uses implicit fileMimeTypes
and have a "json" -> "application/json" mapping done implicitly based off the file extension. The Assets controller handles this mapping automatically.
In a controller, an implicit FileMimeTypes object can either be defined explicitly:
class MyController @Inject()(implicit val fileMimeTypes: FileMimeTypes) extends BaseController { def sendFile() = ... }
or, if play.api.mvc.BaseController is extended, then an implicit fileMimeTypes instance is already made available from play.api.mvc.ControllerComponents, meaning that no explicit import is required:
class MyController @Inject()(val controllerComponents: ControllerComponents) extends BaseController { def sendFile() = ... }
Configuration for file MIME types, mapping from extension to content type.
Configuration for file MIME types, mapping from extension to content type.
the extension to mime type mapping.
The flash configuration
The flash configuration
The name of the cookie used to store the session
Whether the flash cookie should set the secure flag or not
Whether the HTTP only attribute of the cookie should be set
The domain to set for the session cookie, if defined
The path for which this cookie is valid
The cookie's SameSite attribute
The JWT specific information
Defines all standard HTTP headers.
An HTTP chunk.
An HTTP chunk.
May either be a HttpChunk.Chunk containing data, or a HttpChunk.LastChunk, signifying the last chunk in a stream, optionally with trailing headers.
HTTP related configuration of a Play application
HTTP related configuration of a Play application
The HTTP context
The parser configuration
The session configuration
The flash configuration
The fileMimeTypes configuration
An HTTP entity.
An HTTP entity.
HTTP entities come in three flavors, HttpEntity.Strict, HttpEntity.Streamed and HttpEntity.Chunked.
Component for handling HTTP errors in Play.
Component for handling HTTP errors in Play.
2.4.0
Provides filters to the play.api.http.HttpRequestHandler.
Defines HTTP protocol constants
Primary entry point for all HTTP requests on Play applications.
Standard HTTP Verbs
The JSON Web Token configuration
The JSON Web Token configuration
The signature algorithm used to sign the JWT
The period of time after which the JWT expires, if any.
The amount of clock skew to permit for expiration / not before checks
The claim key corresponding to the data map passed in by the user
A Java compatible HTTP request handler.
A Java compatible HTTP request handler.
If a router routes to Java actions, it will return instances of play.core.j.JavaHandler. This takes an instance of play.core.j.JavaHandlerComponents to supply the necessary infrastructure to invoke a Java action, and returns a new play.api.mvc.Handler that the core of Play knows how to handle.
If your application routes to Java actions, then you must use this request handler as the base class as is or as the base class for your custom HttpRequestHandler.
Adapter from the Java HttpFilters to the Scala HttpFilters interface.
Default Writeable with lower priority.
A media range as defined by RFC 2616 14.1
A media type as defined by RFC 2616 3.7.
A media type as defined by RFC 2616 3.7.
The media type
The media sub type
The parameters
Common HTTP MIME types
A filters provider that provides no filters.
Configuration for body parsers.
Configuration for body parsers.
The maximum size that a request body that should be buffered in memory.
The maximum size that a request body should be buffered on disk.
A port.
A port. This class is defined so that ports can be passed around implicitly.
The application secret.
The application secret. Must be set. A value of "changeme" will cause the application to fail to start in production.
With the Play secret we want to:
1) Encourage the practice of *not* using the same secret in dev and prod. 2) Make it obvious that the secret should be changed. 3) Ensure that in dev mode, the secret stays stable across restarts. 4) Ensure that in dev mode, sessions do not interfere with other applications that may be or have been running on localhost. Eg, if I start Play app 1, and it stores a PLAY_SESSION cookie for localhost:9000, then I stop it, and start Play app 2, when it reads the PLAY_SESSION cookie for localhost:9000, it should not see the session set by Play app 1. This can be achieved by using different secrets for the two, since if they are different, they will simply ignore the session cookie set by the other.
To achieve 1 and 2, we will, in Activator templates, set the default secret to be "changeme". This should make it obvious that the secret needs to be changed and discourage using the same secret in dev and prod.
For safety, if the secret is not set, or if it's changeme, and we are in prod mode, then we will fail fatally. This will further enforce both 1 and 2.
To achieve 3, if in dev or test mode, if the secret is either changeme or not set, we will generate a secret based on the location of application.conf. This should be stable across restarts for a given application.
To achieve 4, using the location of application.conf to generate the secret should ensure this.
the application secret
the JCE provider to use. If null, uses the platform default
The session configuration
The session configuration
The name of the cookie used to store the session
Whether the session cookie should set the secure flag or not
The max age of the session, none, use "session" sessions
Whether the HTTP only attribute of the cookie should be set
The domain to set for the session cookie, if defined
The path for which this cookie is valid
The cookie's SameSite attribute
The JWT specific information
Defines all standard HTTP status codes.
Transform a value of type A to a Byte Array.
Transform a value of type A to a Byte Array.
the content type
Default Content-Type typeclasses.
Defines common HTTP Content-Type header values, according to the current available Codec.
A default HTTP error handler that can be used when there's no application available.
A default HTTP error handler that can be used when there's no application available.
Note: this HttpErrorHandler should ONLY be used in DEV or TEST. The way this displays errors to the user is generally not suitable for a production environment.
Defines all standard HTTP headers.
Extracted so the Java default error handler can reuse this functionality
Defines HTTP protocol constants
Standard HTTP Verbs
A lazy HTTP error handler, that looks up the error handler from the current application
Common HTTP MIME types
Implementation of a [HttpRequestHandler] that always returns NotImplemented results
Defines all standard HTTP status codes, with additional helpers for determining the type of status.
Helper utilities for Writeable
.
HTTP date formatter, compliant to RFC 1123
Contains standard HTTP constants. For example: