Apache CXF API

org.apache.cxf.jaxrs.client
Class JAXRSClientFactoryBean

java.lang.Object
  extended by org.apache.cxf.interceptor.AbstractBasicInterceptorProvider
      extended by org.apache.cxf.endpoint.AbstractEndpointFactory
          extended by org.apache.cxf.jaxrs.AbstractJAXRSFactoryBean
              extended by org.apache.cxf.jaxrs.client.JAXRSClientFactoryBean
All Implemented Interfaces:
InterceptorProvider
Direct Known Subclasses:
JAXRSClientFactoryBeanDefinitionParser.JAXRSSpringClientFactoryBean

public class JAXRSClientFactoryBean
extends AbstractJAXRSFactoryBean


Field Summary
 
Fields inherited from class org.apache.cxf.jaxrs.AbstractJAXRSFactoryBean
entityProviders, schemaLocations, serviceFactory
 
Fields inherited from class org.apache.cxf.endpoint.AbstractEndpointFactory
address, bindingConfig, bindingFactory, bindingId, bus, conduitSelector, dataBinding, destinationFactory, endpointName, endpointReference, features, properties, publishedEndpointUrl, serviceName, transportId
 
Constructor Summary
JAXRSClientFactoryBean()
           
JAXRSClientFactoryBean(JAXRSServiceFactoryBean serviceFactory)
           
 
Method Summary
protected  void applyFeatures(AbstractClient client)
           
 Client create()
          Create a Client instance.
<T> T
create(Class<T> cls, Object... varValues)
          Creates a proxy
 WebClient createWebClient()
          Creates a WebClient instance
 Client createWithValues(Object... varValues)
          Create a Client instance.
protected  ConduitSelector getConduitSelector(Endpoint ep)
           
 Map<String,List<String>> getHeaders()
          Gets the initial headers
 String getPassword()
          Gets the password
 Class<?> getServiceClass()
          Returns the service class
 String getUsername()
          Gets the user name
protected  void initClient(AbstractClient client, Endpoint ep, boolean addHeaders)
           
 void setClassLoader(ClassLoader loader)
          Sets the custom class loader to be used for creating proxies.
 void setHeaders(Map<String,String> map)
          Sets the headers new proxy or WebClient instances will be initialized with.
 void setInheritHeaders(boolean ih)
          Indicates if the headers set by a current proxy will be inherited when a subresource proxy is created vice versa.
 void setInitialState(ClientState initialState)
          Sets the initial client state, can be a thread-safe state.
 void setPassword(String password)
          Sets the password.
 void setResourceClass(Class<?> cls)
          Sets the resource class
 void setSecondsToKeepState(long time)
          Sets the time a thread-local client state will be kept.
 void setServiceClass(Class<?> cls)
          Sets the resource class, may be called from a Spring handler
 void setThreadSafe(boolean threadSafe)
          Indicates if a single proxy or WebClient instance can be reused by multiple threads.
 void setUsername(String username)
          Sets the username.
 
Methods inherited from class org.apache.cxf.jaxrs.AbstractJAXRSFactoryBean
checkResources, createBindingInfo, createEndpoint, createEndpointInfo, getBus, getProviders, getServiceFactory, setBus, setDataBindingProvider, setModelBeans, setModelBeans, setModelBeansWithServiceClass, setModelRef, setModelRefWithServiceClass, setProvider, setProviders, setSchemaLocation, setSchemaLocations, setServiceFactory, setServiceName, setupFactory
 
Methods inherited from class org.apache.cxf.endpoint.AbstractEndpointFactory
addToBeans, checkPrivateEndpoint, getAddress, getBindingConfig, getBindingFactory, getBindingId, getBus, getConduitSelector, getDataBinding, getDestinationFactory, getEndpointName, getFeatures, getProperties, getProperties, getPublishedEndpointUrl, getServiceName, getTransportId, initializeAnnotationInterceptors, initializeAnnotationInterceptors, initializeAnnotationInterceptors, setAddress, setBindingConfig, setBindingFactory, setBindingId, setConduitSelector, setDataBinding, setDestinationFactory, setEndpointName, setEndpointReference, setFeatures, setProperties, setPublishedEndpointUrl, setTransportId
 
Methods inherited from class org.apache.cxf.interceptor.AbstractBasicInterceptorProvider
getInFaultInterceptors, getInInterceptors, getOutFaultInterceptors, getOutInterceptors, setInFaultInterceptors, setInInterceptors, setOutFaultInterceptors, setOutInterceptors
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JAXRSClientFactoryBean

public JAXRSClientFactoryBean()

JAXRSClientFactoryBean

public JAXRSClientFactoryBean(JAXRSServiceFactoryBean serviceFactory)
Method Detail

setClassLoader

public void setClassLoader(ClassLoader loader)
Sets the custom class loader to be used for creating proxies. By default the class loader of the given serviceClass will be used.

Parameters:
loader -

setThreadSafe

public void setThreadSafe(boolean threadSafe)
Indicates if a single proxy or WebClient instance can be reused by multiple threads.

Parameters:
threadSafe - if true then multiple threads can invoke on the same proxy or WebClient instance.

setSecondsToKeepState

public void setSecondsToKeepState(long time)
Sets the time a thread-local client state will be kept. This property is ignored for thread-unsafe clients

Parameters:
secondsToKeepState -

getUsername

public String getUsername()
Gets the user name

Returns:
the name

setUsername

public void setUsername(String username)
Sets the username. Setting the username and password is a simple way to create a Basic Authentication token.

Parameters:
username - the user name

getPassword

public String getPassword()
Gets the password

Returns:
the password

setPassword

public void setPassword(String password)
Sets the password. Setting the username and password is a simple way to create a Basic Authentication token.

Parameters:
password - the password

setInheritHeaders

public void setInheritHeaders(boolean ih)
Indicates if the headers set by a current proxy will be inherited when a subresource proxy is created vice versa.

Parameters:
ih - if set to true then the current headers will be inherited

setResourceClass

public void setResourceClass(Class<?> cls)
Sets the resource class

Parameters:
cls - the resource class

setServiceClass

public void setServiceClass(Class<?> cls)
Sets the resource class, may be called from a Spring handler

Parameters:
cls - the resource class

getServiceClass

public Class<?> getServiceClass()
Returns the service class

Parameters:
cls - the service class

setHeaders

public void setHeaders(Map<String,String> map)
Sets the headers new proxy or WebClient instances will be initialized with.

Parameters:
map - the headers

getHeaders

public Map<String,List<String>> getHeaders()
Gets the initial headers

Returns:
the headers

createWebClient

public WebClient createWebClient()
Creates a WebClient instance

Returns:
WebClient instance

create

public <T> T create(Class<T> cls,
                    Object... varValues)
Creates a proxy

Parameters:
cls - the proxy class
varValues - optional list of values which will be used to substitute template variables specified in the class-level JAX-RS Path annotations
Returns:
the proxy

create

public Client create()
Create a Client instance. Proxies and WebClients are Clients.

Returns:
the client

createWithValues

public Client createWithValues(Object... varValues)
Create a Client instance. Proxies and WebClients are Clients.

Parameters:
varValues - optional list of values which will be used to substitute template variables specified in the class-level JAX-RS Path annotations
Returns:
the client

getConduitSelector

protected ConduitSelector getConduitSelector(Endpoint ep)

initClient

protected void initClient(AbstractClient client,
                          Endpoint ep,
                          boolean addHeaders)

applyFeatures

protected void applyFeatures(AbstractClient client)

setInitialState

public void setInitialState(ClientState initialState)
Sets the initial client state, can be a thread-safe state.

Parameters:
initialState - the state

Apache CXF API

Apache CXF