Apache Wink Client
The following section describes the Apache Wink Client and provides a detailed description of the Apache Wink Client component and its functionality.
Apache Wink Client Overview
The Apache Wink Client is an easy-to-use client, providing a high level Java API for writing clients that consume HTTP-based RESTful Web Services. The Apache Wink Client utilizes JAX-RS concepts, encapsulates Rest standards and protocols and maps Rest principles concepts to Java classes, which facilitates the development of clients for any HTTP-based Rest Web Services.
The Apache Wink Client also provides a Handlers mechanism that enables the manipulation of HTTP request/response messages.
The Apache Wink Clients main features are as follows:
- Utilizes JAX-RS Providers for resource serialization and deserialization
- Provides Java object models for Atom, Json, RSS, APP, CSV, Multipart and OpenSearch along with providers to serialize and deserialize these models
- Uses the JDK HttpUrlConnection as the underlying Http transport
- Allows for the easy replacement of the underlying Http transport
- Provides a Handlers mechanism for manipulation of HTTP request and response messages
- Http proxy
Apache Wink High Level Client Architecture Overview
The following diagram illustrates the high-level architecture of the Apache Wink Client.
The RestClient class is the Apache Wink Client entry point and is responsible for holding different configuration options and the provider registry.
The RestClient is used to create instances of the Resource class. The Resource class represents a web resource associated with a specific URI and is used to perform uniform interface operations on the resource it represents. Every method invocation goes through a user defined handlers chain that enables for manipulation of the request and response.