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.
Reasons a connection attempt was rejected before a request or SSE connection could be established.
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.
Read-only hook methods for observing system and request lifecycle events.
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().Contract for collecting operational metrics from Soklet.
A thread-safe histogram with fixed bucket boundaries.
Immutable snapshot of a
MetricsCollector.Histogram.Text format to use for
MetricsCollector.snapshotText(SnapshotTextOptions).Key for request read failures grouped by reason.
Key for request rejections grouped by reason.
Indicates whether a request was matched to a
ResourcePathDeclaration.Key for metrics grouped by HTTP method and route match information.
Key for metrics grouped by HTTP method, route match information, and status class (e.g. 2xx).
Key for metrics grouped by Server-Sent Event comment type, route match information, and drop reason.
Key for metrics grouped by Server-Sent Event comment type, route match information, and enqueue outcome.
Key for metrics grouped by Server-Sent Event comment type and route match information.
Reasons a Server-Sent Event payload or comment was dropped before it could be written.
Outcomes for a Server-Sent Event enqueue attempt.
Key for metrics grouped by Server-Sent Event route match information and drop reason.
Key for metrics grouped by Server-Sent Event route match information and enqueue outcome.
Key for metrics grouped by Server-Sent Event route match information and handshake failure reason.
Key for metrics grouped by Server-Sent Event route match information.
Key for metrics grouped by Server-Sent Event route match information and termination reason.
Immutable snapshot of collected metrics.
Builder used to construct instances of
MetricsCollector.Snapshot.Options for rendering a textual metrics snapshot.
Builder for
MetricsCollector.SnapshotTextOptions.Supported histogram rendering strategies.
A single text-format sample with its label set.
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.Represents a single HTTP header field value that includes a name and may include semicolon-delimited parameters - encoding rules per RFC specifications are strictly enforced.
Builder used to construct instances of
ParameterizedHeaderValue via ParameterizedHeaderValue.withName(String).A single header-value parameter: given a header value like
attachment; filename="resume.pdf"; filename*=UTF-8''r%C3%A9sum%C3%A9.pdf, there are two filename parameter name-value pairs.What type of header-value parameter this is:
ParameterizedHeaderValue.ParameterType.TOKEN, ParameterizedHeaderValue.ParameterType.QUOTED, or ParameterizedHeaderValue.ParameterType.RFC_8187.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.
Hook methods that can adjust Soklet's request processing flow.
Reasons a request could not be read or parsed into a valid
Request.Reasons an HTTP or SSE request was rejected before application-level handling began.
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().Represents the
Priority response cookie attribute.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.forServiceUnavailable(Request, 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.builder().Broadcasts a Server-Sent Event payload to all clients listening on a
ResourcePath.Encapsulates a Server-Sent Event comment payload and its comment type.
Types of Server-Sent Event comments.
Represents characteristics of a long-running connection that has been established with a
ServerSentEventServer.Categorizes why a Server-Sent Event handshake failed.
Categorizes why a Server-Sent Event connection terminated.
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.
Forwarded header trust policy.
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().