Class JaxRsRestfulClientFactory

  • All Implemented Interfaces:
    ca.uhn.fhir.rest.client.api.IRestfulClientFactory

    public class JaxRsRestfulClientFactory
    extends ca.uhn.fhir.rest.client.impl.RestfulClientFactory
    A Restful Client Factory, based on Jax Rs Default Jax-Rs client is NOT thread safe in static context, you should create a new factory every time or use a specific Jax-Rs client implementation which managed connection pool.
    Author:
    Peter Van Houte | peter.vanhoute@agfa.com | Agfa Healthcare
    • Field Summary

      • Fields inherited from interface ca.uhn.fhir.rest.client.api.IRestfulClientFactory

        DEFAULT_CONNECT_TIMEOUT, DEFAULT_CONNECTION_REQUEST_TIMEOUT, DEFAULT_POOL_MAX, DEFAULT_POOL_MAX_PER_ROUTE, DEFAULT_SERVER_VALIDATION_MODE, DEFAULT_SOCKET_TIMEOUT
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected JaxRsHttpClient getHttpClient​(String theServerBase)  
      ca.uhn.fhir.rest.client.api.IHttpClient getHttpClient​(StringBuilder url, Map<String,​List<String>> theIfNoneExistParams, String theIfNoneExistString, ca.uhn.fhir.rest.api.RequestTypeEnum theRequestType, List<ca.uhn.fhir.rest.client.api.Header> theHeaders)  
      javax.ws.rs.client.Client getNativeClientClient()  
      void register​(List<Class<?>> components)
      Register a list of Jax-Rs component (provider, filter...)
      protected void resetHttpClient()  
      void setHttpClient​(Object theHttpClient)
      Only accept clients of type javax.ws.rs.client.Client Can be used to set a specific Client implementation
      void setProxy​(String theHost, Integer thePort)
      Not supported with default Jax-Rs client implementation
      • Methods inherited from class ca.uhn.fhir.rest.client.impl.RestfulClientFactory

        getConnectionRequestTimeout, getConnectTimeout, getFhirContext, getPoolMaxPerRoute, getPoolMaxTotal, getProxyPassword, getProxyUsername, getServerValidationMode, getServerValidationModeEnum, getSocketTimeout, newClient, newGenericClient, setConnectionRequestTimeout, setConnectTimeout, setFhirContext, setPoolMaxPerRoute, setPoolMaxTotal, setProxyCredentials, setServerValidationMode, setServerValidationModeEnum, setSocketTimeout, validateConfigured, validateServerBase, validateServerBaseIfConfiguredToDoSo
    • Constructor Detail

      • JaxRsRestfulClientFactory

        public JaxRsRestfulClientFactory()
        Constructor. Note that you must set the FhirContext manually using RestfulClientFactory.setFhirContext(FhirContext) if this constructor is used!
      • JaxRsRestfulClientFactory

        public JaxRsRestfulClientFactory​(ca.uhn.fhir.context.FhirContext theFhirContext)
        Constructor
        Parameters:
        theFhirContext - The context
    • Method Detail

      • getHttpClient

        public ca.uhn.fhir.rest.client.api.IHttpClient getHttpClient​(StringBuilder url,
                                                                     Map<String,​List<String>> theIfNoneExistParams,
                                                                     String theIfNoneExistString,
                                                                     ca.uhn.fhir.rest.api.RequestTypeEnum theRequestType,
                                                                     List<ca.uhn.fhir.rest.client.api.Header> theHeaders)
      • setProxy

        public void setProxy​(String theHost,
                             Integer thePort)
        Not supported with default Jax-Rs client implementation
        Parameters:
        theHost - The host (or null to disable proxying, as is the default)
        thePort -
      • setHttpClient

        public void setHttpClient​(Object theHttpClient)
        Only accept clients of type javax.ws.rs.client.Client Can be used to set a specific Client implementation
        Parameters:
        theHttpClient -
      • register

        public void register​(List<Class<?>> components)
        Register a list of Jax-Rs component (provider, filter...)
        Parameters:
        components - list of Jax-Rs components to register
      • getHttpClient

        protected JaxRsHttpClient getHttpClient​(String theServerBase)
        Specified by:
        getHttpClient in class ca.uhn.fhir.rest.client.impl.RestfulClientFactory
      • resetHttpClient

        protected void resetHttpClient()
        Specified by:
        resetHttpClient in class ca.uhn.fhir.rest.client.impl.RestfulClientFactory