All Classes and Interfaces
Class
Description
Convenience superclass which provides default implementations of
ValueConverter methods.Abstract superclass for exceptions that would normally result in an HTTP 400 (Bad Request) status code.
Encapsulates non-preflight CORS HTTP request data.
Contract for types that authorize CORS requests.
Encapsulates CORS preflight-related HTTP request data.
Response headers to send over the wire for CORS preflight requests.
Builder used to construct instances of
CorsPreflightResponse via CorsPreflightResponse.withAccessControlAllowOrigin(String).Builder used to copy instances of
CorsPreflightResponse via CorsPreflightResponse.copy().Response headers to send over the wire for non-preflight CORS requests.
Builder used to construct instances of
CorsResponse via CorsResponse.withAccessControlAllowOrigin(String).Builder used to copy instances of
CorsResponse via CorsResponse.copy().Apply to Resource Methods to support the HTTP
DELETE method.Allows multiple
DELETE annotations to be applied to the same Resource Method.Apply to Resource Method parameters to enable HTML form parameter injection.
Convenience superclass which provides default implementations of
ValueConverter methods that convert from String to other types.Apply to Resource Methods to support the HTTP
GET method.Allows multiple
GET annotations to be applied to the same Resource Method.Represents the result of a
ServerSentEventSource "handshake".Type which indicates a successful Server-Sent Event handshake.
Builder used to construct instances of
HandshakeResult.Accepted.Type which indicates a rejected Server-Sent Event handshake.
Apply to Resource Methods to support the HTTP
HEAD method.Allows multiple
HEAD annotations to be applied to the same Resource Method.Typesafe representation of HTTP request methods.
Exception thrown when an HTTP form parameter value does not match the expected Java type.
Exception thrown when an HTTP multipart field value does not match the expected Java type.
Exception thrown when a URL path parameter value does not match the expected Java type.
Exception thrown when an HTTP query parameter value does not match the expected Java type.
Exception thrown when an HTTP request body does not match the expected Java type.
Exception thrown when an HTTP request cookie value does not match the expected Java type.
Exception thrown when the HTTP request line itself is malformed, such as a client specifying a nonexistent HTTP method.
Exception thrown when an HTTP request header value does not match the expected Java type.
Contract for concrete instance generation given type information.
"Hook" methods for customizing behavior in response to system lifecycle events -
server started, request received, response written, and so on.
An informational "loggable" event that occurs during Soklet's internal processing - for example, if an error occurs while handling a request.
Builder used to construct instances of
LogEvent via LogEvent.with(LogEventType, String).Builder used to copy instances of
LogEvent via LogEvent.copy().Kinds of
LogEvent instances that Soklet can produce.A finalized representation of a
Response, suitable for sending to clients over the wire.Builder used to construct instances of
MarshaledResponse via MarshaledResponse.withResponse(Response) or MarshaledResponse.withStatusCode(Integer).Builder used to copy instances of
MarshaledResponse via MarshaledResponse.copy().Exception thrown when a required HTTP form parameter is missing from the request.
Exception thrown when a required HTTP multipart field is missing from the request.
Exception thrown when a required HTTP query parameter is missing from the request.
Exception thrown when a required request body is missing from the HTTP request.
Exception thrown when a required request cookie is missing from the HTTP request.
Exception thrown when a required request header is missing from the HTTP request.
Apply to Resource Method parameters to enable HTML multipart form parameter injection.
Encapsulates an HTML form element name, binary and
String representations of its value, and other attributes as encoded according to the multipart/form-data specification.Builder used to construct instances of
MultipartField via MultipartField.withName(String)
or MultipartField.with(String, byte[]).Builder used to copy instances of
MultipartField via MultipartField.copy().Contract for parsing HTML form fields encoded according to the
multipart/form-data specification.Apply to Resource Methods to support the HTTP
OPTIONS method.Allows multiple
OPTIONS annotations to be applied to the same Resource Method.Apply to Resource Methods to support the HTTP
PATCH method.Allows multiple
PATCH annotations to be applied to the same Resource Method.Apply to Resource Method parameters to enable URL path parameter (for example,
/widgets/{widgetId}) injection.Apply to Resource Methods to support the HTTP
POST method.Allows multiple
POST annotations to be applied to the same Resource Method.Apply to Resource Methods to support the HTTP
PUT method.Allows multiple
PUT annotations to be applied to the same Resource Method.Strategies for encoding/decoding query strings:
Content-Type: application/x-www-form-urlencoded (supports "+" for spaces) or "strict" RFC 3986 (percent-decoding only).Apply to Resource Method parameters to enable HTTP query parameter injection.
Typesafe representation of HTTP Redirect types (
301, 302, 303, 307, 308).Encapsulates information specified in an HTTP request.
Builder used to copy instances of
Request via Request.copy().Builder used to construct instances of
Request via Request.withPath(HttpMethod, String).Builder used to construct instances of
Request via Request.withRawUrl(HttpMethod, String).Apply to Resource Method parameters to enable HTTP request body injection.
Contract for converting request body bytes into a corresponding Java type.
Apply to Resource Method parameters to enable HTTP request cookie injection.
Apply to Resource Method parameters to enable HTTP request header injection.
Encapsulates the results of a request that would normally be handled by your
Server (both logical response and bytes to be sent over the wire), used for integration testing via Simulator.performRequest(Request).Builder used to construct instances of
RequestResult via RequestResult.withMarshaledResponse(MarshaledResponse).Builder used to copy instances of
RequestResult via RequestResult.copy().Represents a Resource Method, which is a Java
Method invoked by Soklet to handle an HTTP request.Contract for determining parameter values to inject when invoking Resource Methods.
Contract for matching incoming HTTP requests with appropriate Resource Methods (Java methods to invoke to handle requests).
An HTTP URL path used to resolve a Resource Method at runtime, such as
/users/123.A compile-time HTTP URL path declaration associated with an annotated Resource Method, such as
/users/{userId}.Represents a
/-delimited part of a ResourcePathDeclaration.How to interpret a
ResourcePathDeclaration.Component of a ResourcePathDeclaration - is it literal text or a placeholder?Represents a logical HTTP response returned by a Resource Method.
Builder used to construct instances of
Response via Response.withStatusCode(Integer)
or Response.withRedirect(RedirectType, String).Builder used to copy instances of
Response via Response.copy().HTTP "response" Cookie representation which supports
Set-Cookie header encoding.Builder used to construct instances of
ResponseCookie via ResponseCookie.withName(String)
or ResponseCookie.with(String, String).Builder used to copy instances of
ResponseCookie via ResponseCookie.copy().Values which control whether a response cookie is sent with cross-site requests, providing some protection against cross-site request forgery attacks (CSRF).
Prepares responses for each request scenario Soklet supports (Resource Method, exception, CORS preflight, etc.)
Builder used to construct a standard implementation of
ResponseMarshaler.Function used to support pluggable implementations of
ResponseMarshaler.forContentTooLarge(Request, ResourceMethod).Function used to support pluggable implementations of
ResponseMarshaler.forCorsAllowed(Request, Cors, CorsResponse, MarshaledResponse).Function used to support pluggable implementations of
ResponseMarshaler.forCorsPreflightAllowed(Request, CorsPreflight, CorsPreflightResponse).Function used to support pluggable implementations of
ResponseMarshaler.forCorsPreflightRejected(Request, CorsPreflight).Function used to support pluggable implementations of
ResponseMarshaler.forHead(Request, MarshaledResponse).Function used to support pluggable implementations of
ResponseMarshaler.forMethodNotAllowed(Request, Set).Function used to support pluggable implementations of
ResponseMarshaler.forNotFound(Request).Function used to support pluggable implementations of
ResponseMarshaler.forOptions(Request, Set).Function used to support pluggable implementations of
ResponseMarshaler.forOptionsSplat(Request).Function used to support a pluggable "post-process" hook for any final customization or processing before data goes over the wire.
Function used to support pluggable implementations of
ResponseMarshaler.forResourceMethod(Request, Response, ResourceMethod).Function used to support pluggable implementations of
ResponseMarshaler.forThrowable(Request, Throwable, ResourceMethod).Contract for HTTP server implementations that are designed to be managed by a
Soklet instance.Builder used to construct a standard implementation of
Server.Request/response processing contract for
Server implementations.Encapsulates a Server-Sent Event payload that can be sent across the wire to a client.
Builder used to construct instances of
ServerSentEvent via ServerSentEvent.withEvent(String), ServerSentEvent.withData(String), or ServerSentEvent.withDefaults().Broadcasts a Server-Sent Event payload to all clients listening on a
ResourcePath.Sealed interface used by
Simulator.performServerSentEventRequest(Request) during integration tests, which encapsulates the 3 logical outcomes for SSE connections: accepted handshake, rejected handshake, and general request failure.Represents the result of an SSE accepted handshake (connection stays open) when simulated by
Simulator.performServerSentEventRequest(Request).Represents the result of an SSE rejected handshake (explicit rejection; connection closed) when simulated by
Simulator.performServerSentEventRequest(Request).Represents the result of an SSE request failure (implicit rejection, e.g. an exception occurred; connection closed) when simulated by
Simulator.performServerSentEventRequest(Request).A special HTTP server whose only purpose is to provide Server-Sent Event functionality.
Builder used to construct a standard implementation of
ServerSentEventServer.Request/response processing contract for
ServerSentEventServer implementations.Apply to Resource Methods to make them function as Server-Sent Event Sources.
Allows multiple
ServerSentEventSource annotations to be applied to the same Resource Method.Unicasts a Server-Sent Event or comment payload to a specific client listening on a
ResourcePath.Types of servers supported by Soklet - currently
ServerType.STANDARD_HTTP and ServerType.SERVER_SENT_EVENT.Events that might trigger a
Soklet instance to shut down.Simulates server behavior of accepting a request and returning a response without touching the network, useful for writing integration tests.
Soklet's main class - manages a
Server (and optionally a ServerSentEventServer) using the provided system configuration.Defines how a Soklet system is configured.
Builder used to construct instances of
SokletConfig.Builder used to copy instances of
SokletConfig.Soklet's standard Annotation Processor which is used to generate lookup tables of Resource Method definitions at compile time as well as prevent usage errors that are detectable by static analysis.
Formal enumeration of valid HTTP status codes.
Construct for creating type tokens that represent generic types.
A non-instantiable collection of utility methods.
Thrown if an error occurs during value conversion.
Contract for converting objects from one type to another.
A collection of
ValueConverter instances, supplemented with quality-of-life features that most applications need.Non-instantiable utility class that exists to vend a set of default
ValueConverter instances via ValueConverters.defaultValueConverters().