Class RestProxy

  • All Implemented Interfaces:
    InvocationHandler

    public final class RestProxy
    extends Object
    implements InvocationHandler
    Type to create a proxy implementation for an interface describing REST API methods. RestProxy can create proxy implementations for interfaces with methods that return deserialized Java objects as well as asynchronous Single objects that resolve to a deserialized Java object.
    • Method Detail

      • send

        public Mono<HttpResponse> send​(HttpRequest request,
                                       Context contextData)
        Send the provided request asynchronously, applying any request policies provided to the HttpClient instance.
        Parameters:
        request - the HTTP request to send
        contextData - the context
        Returns:
        a Mono that emits HttpResponse asynchronously
      • create

        public static <A> A create​(Class<A> swaggerInterface)
        Create a proxy implementation of the provided Swagger interface.
        Type Parameters:
        A - the type of the Swagger interface
        Parameters:
        swaggerInterface - the Swagger interface to provide a proxy implementation for
        Returns:
        a proxy implementation of the provided Swagger interface
      • create

        public static <A> A create​(Class<A> swaggerInterface,
                                   HttpPipeline httpPipeline)
        Create a proxy implementation of the provided Swagger interface.
        Type Parameters:
        A - the type of the Swagger interface
        Parameters:
        swaggerInterface - the Swagger interface to provide a proxy implementation for
        httpPipeline - the HttpPipelinePolicy and HttpClient pipeline that will be used to send Http requests
        Returns:
        a proxy implementation of the provided Swagger interface
      • create

        public static <A> A create​(Class<A> swaggerInterface,
                                   HttpPipeline httpPipeline,
                                   SerializerAdapter serializer)
        Create a proxy implementation of the provided Swagger interface.
        Type Parameters:
        A - the type of the Swagger interface.
        Parameters:
        swaggerInterface - the Swagger interface to provide a proxy implementation for
        httpPipeline - the HttpPipelinePolicy and HttpClient pipline that will be used to send Http requests
        serializer - the serializer that will be used to convert POJOs to and from request and response bodies
        Returns:
        a proxy implementation of the provided Swagger interface