Class UrlPrefixDecorator<R extends org.apache.flink.runtime.rest.messages.RequestBody,​P extends org.apache.flink.runtime.rest.messages.ResponseBody,​M extends org.apache.flink.runtime.rest.messages.MessageParameters>

  • Type Parameters:
    R - the type of the request body
    P - the type of the response body
    M - the type of the message parameters
    All Implemented Interfaces:
    org.apache.flink.runtime.rest.handler.RestHandlerSpecification, org.apache.flink.runtime.rest.messages.MessageHeaders<R,​P,​M>, org.apache.flink.runtime.rest.messages.UntypedResponseMessageHeaders<R,​M>

    public class UrlPrefixDecorator<R extends org.apache.flink.runtime.rest.messages.RequestBody,​P extends org.apache.flink.runtime.rest.messages.ResponseBody,​M extends org.apache.flink.runtime.rest.messages.MessageParameters>
    extends Object
    implements org.apache.flink.runtime.rest.messages.MessageHeaders<R,​P,​M>
    This class decorates the URL of the original message headers by adding a prefix. The purpose of this decorator is to provide a consistent URL prefix for all the REST API endpoints while preserving the behavior of the original message headers.
    • Constructor Detail

      • UrlPrefixDecorator

        public UrlPrefixDecorator​(org.apache.flink.runtime.rest.messages.MessageHeaders<R,​P,​M> messageHeaders,
                                  String urlPrefix)
        Constructs an instance of UrlPrefixDecorator.
        Parameters:
        messageHeaders - the original SqlGatewayMessageHeaders to be decorated
        urlPrefix - the URL prefix to be added to the target REST endpoint URL
    • Method Detail

      • getHttpMethod

        public org.apache.flink.runtime.rest.HttpMethodWrapper getHttpMethod()
        Specified by:
        getHttpMethod in interface org.apache.flink.runtime.rest.handler.RestHandlerSpecification
      • getTargetRestEndpointURL

        public String getTargetRestEndpointURL()
        Specified by:
        getTargetRestEndpointURL in interface org.apache.flink.runtime.rest.handler.RestHandlerSpecification
      • getResponseClass

        public Class<P> getResponseClass()
        Specified by:
        getResponseClass in interface org.apache.flink.runtime.rest.messages.MessageHeaders<R extends org.apache.flink.runtime.rest.messages.RequestBody,​P extends org.apache.flink.runtime.rest.messages.ResponseBody,​M extends org.apache.flink.runtime.rest.messages.MessageParameters>
      • getResponseStatusCode

        public org.apache.flink.shaded.netty4.io.netty.handler.codec.http.HttpResponseStatus getResponseStatusCode()
        Specified by:
        getResponseStatusCode in interface org.apache.flink.runtime.rest.messages.MessageHeaders<R extends org.apache.flink.runtime.rest.messages.RequestBody,​P extends org.apache.flink.runtime.rest.messages.ResponseBody,​M extends org.apache.flink.runtime.rest.messages.MessageParameters>
      • getDescription

        public String getDescription()
        Specified by:
        getDescription in interface org.apache.flink.runtime.rest.messages.MessageHeaders<R extends org.apache.flink.runtime.rest.messages.RequestBody,​P extends org.apache.flink.runtime.rest.messages.ResponseBody,​M extends org.apache.flink.runtime.rest.messages.MessageParameters>
      • getRequestClass

        public Class<R> getRequestClass()
        Specified by:
        getRequestClass in interface org.apache.flink.runtime.rest.messages.UntypedResponseMessageHeaders<R extends org.apache.flink.runtime.rest.messages.RequestBody,​P extends org.apache.flink.runtime.rest.messages.ResponseBody>
      • getUnresolvedMessageParameters

        public M getUnresolvedMessageParameters()
        Specified by:
        getUnresolvedMessageParameters in interface org.apache.flink.runtime.rest.messages.UntypedResponseMessageHeaders<R extends org.apache.flink.runtime.rest.messages.RequestBody,​P extends org.apache.flink.runtime.rest.messages.ResponseBody>
      • getSupportedAPIVersions

        public Collection<? extends org.apache.flink.runtime.rest.versioning.RestAPIVersion<?>> getSupportedAPIVersions()
        Specified by:
        getSupportedAPIVersions in interface org.apache.flink.runtime.rest.handler.RestHandlerSpecification
      • getResponseTypeParameters

        public Collection<Class<?>> getResponseTypeParameters()
        Specified by:
        getResponseTypeParameters in interface org.apache.flink.runtime.rest.messages.MessageHeaders<R extends org.apache.flink.runtime.rest.messages.RequestBody,​P extends org.apache.flink.runtime.rest.messages.ResponseBody,​M extends org.apache.flink.runtime.rest.messages.MessageParameters>
      • getDecorated

        public org.apache.flink.runtime.rest.messages.MessageHeaders<R,​P,​M> getDecorated()