Package org.jboss.resteasy.client.spring
Class RestClientProxyFactoryBean<T>
- java.lang.Object
-
- org.jboss.resteasy.client.spring.RestClientProxyFactoryBean<T>
-
- Type Parameters:
T
- The type representing the client interface.
- All Implemented Interfaces:
org.springframework.beans.factory.FactoryBean<T>
,org.springframework.beans.factory.InitializingBean
public class RestClientProxyFactoryBean<T> extends Object implements org.springframework.beans.factory.FactoryBean<T>, org.springframework.beans.factory.InitializingBean
FactoryBean
to generate a client proxy from a REST annotated interface.Example: The following spring xml configuration snippet makes a bean with the id echoClient. The bean is a generated proxy of the a.b.c.Echo interface to access the remote service on http://server.far.far.away:8080/echo base URI.
<bean id="echoClient" class="org.jboss.resteasy.client.spring.RestClientProxyFactoryBean" p:serviceInterface="a.b.c.Echo" p:baseUri="http://server.far.far.away:8080/echo" />
- Author:
- Attila Kiraly
-
-
Constructor Summary
Constructors Constructor Description RestClientProxyFactoryBean()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
afterPropertiesSet()
URI
getBaseUri()
ClientHttpEngine
getClientEngine()
org.apache.http.client.HttpClient
getHttpClient()
T
getObject()
Class<T>
getObjectType()
ResteasyProviderFactory
getResteasyProviderFactory()
Class<T>
getServiceInterface()
boolean
isSingleton()
void
setBaseUri(URI baseUri)
This is a mandatory property that needs to be set.void
setClientExecutor(ClientHttpEngine clientEngine)
Optional property for advanced usage.void
setHttpClient(org.apache.http.client.HttpClient httpClient)
Optional property.void
setResteasyProviderFactory(ResteasyProviderFactory resteasyProviderFactory)
Optional property for advanced usage.void
setServiceInterface(Class<T> serviceInterface)
This is a mandatory property that needs to be set.
-
-
-
Method Detail
-
getObjectType
public Class<T> getObjectType()
- Specified by:
getObjectType
in interfaceorg.springframework.beans.factory.FactoryBean<T>
-
isSingleton
public boolean isSingleton()
- Specified by:
isSingleton
in interfaceorg.springframework.beans.factory.FactoryBean<T>
-
afterPropertiesSet
public void afterPropertiesSet() throws Exception
- Specified by:
afterPropertiesSet
in interfaceorg.springframework.beans.factory.InitializingBean
- Throws:
Exception
-
setServiceInterface
public void setServiceInterface(Class<T> serviceInterface)
This is a mandatory property that needs to be set.- Parameters:
serviceInterface
- the interface for which a proxy is needed to be generated.
-
getBaseUri
public URI getBaseUri()
-
setBaseUri
public void setBaseUri(URI baseUri)
This is a mandatory property that needs to be set.- Parameters:
baseUri
- the remote service base address.
-
getHttpClient
public org.apache.http.client.HttpClient getHttpClient()
-
setHttpClient
public void setHttpClient(org.apache.http.client.HttpClient httpClient)
Optional property. If this property is set andclientEngine
is null, this will be used by proxy generation. This could be useful for example when you want to use aThreadSafeClientConnManager
instead of aSingleClientConnManager
which is the default inHttpClient
.- Parameters:
httpClient
- the instance to be used by proxy generation
-
getClientEngine
public ClientHttpEngine getClientEngine()
-
setClientExecutor
public void setClientExecutor(ClientHttpEngine clientEngine)
Optional property for advanced usage. If this property is set it will be used by proxy generation. If this property is set thehttpClient
property is ignored.- Parameters:
clientEngine
- the instance to be used by proxy generation
-
getResteasyProviderFactory
public ResteasyProviderFactory getResteasyProviderFactory()
-
setResteasyProviderFactory
public void setResteasyProviderFactory(ResteasyProviderFactory resteasyProviderFactory)
Optional property for advanced usage. For the most cases this property is not needed to be set.- Parameters:
resteasyProviderFactory
- the instance to be used by proxy generation.
-
-