Interface Endpoint<RequestT,​ResponseT,​ErrorT>

  • Type Parameters:
    RequestT - the endpoint's request
    ResponseT - the endpoint's response. Use Void when there's no response body.
    ErrorT - the endpoint's error type. Use Void when error responses have no body.
    All Known Subinterfaces:
    JsonEndpoint<RequestT,​ResponseT,​ErrorT>
    All Known Implementing Classes:
    BooleanEndpoint, DelegatingJsonEndpoint, EndpointWithResponseMapperAttr, SimpleEndpoint

    public interface Endpoint<RequestT,​ResponseT,​ErrorT>
    An endpoint links requests and responses to HTTP protocol encoding. It also defines the error response when the server cannot perform the request.

    Requests are serialized as JSON by default, unless they implement specific marker interfaces that indicate otherwise and must be handled by the transport processing the request (e.g. NdJsonpSerializable).

    Response body decoding, when applicable, is defined by child interfaces like JsonEndpoint.

    • Method Detail

      • method

        java.lang.String method​(RequestT request)
        Get the endpoint's HTTP method for a request.
      • requestUrl

        java.lang.String requestUrl​(RequestT request)
        Get the URL path for a request.
      • queryParameters

        default java.util.Map<java.lang.String,​java.lang.String> queryParameters​(RequestT request)
        Get the query parameters for a request.
      • headers

        default java.util.Map<java.lang.String,​java.lang.String> headers​(RequestT request)
        Get the HTTP headers for a request.
      • hasRequestBody

        boolean hasRequestBody()
      • isError

        boolean isError​(int statusCode)
        Is this status code to be considered as an error?
      • errorDeserializer

        @Nullable
        JsonpDeserializer<ErrorT> errorDeserializer​(int statusCode)
        The entity parser for the error response body. Can be null to indicate that there's no error body.