Package com.ibm.fhir.bucket.client
Class FHIRBucketClient
- java.lang.Object
 - 
- com.ibm.fhir.bucket.client.FHIRBucketClient
 
 
- 
public class FHIRBucketClient extends java.lang.ObjectHandles pooled HTTP/S connections to a FHIR server. Derived from the former High Volume Ingestion Tool (HVIT) which is known to scale to a large number of client connections. 
- 
- 
Constructor Summary
Constructors Constructor Description FHIRBucketClient(ClientPropertyAdapter cpa)Public constructor 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddHeader(java.lang.String key, java.lang.String value)Add the given key/value as a headerFhirServerResponsedelete(java.lang.String url)Issue a DELETE for the given urlFhirServerResponseget(java.lang.String url)Issue a GET request without request-specific headersFhirServerResponseget(java.lang.String url, RequestOptions requestOptions)Issue a GET request with request-specific headersjava.lang.StringgetBaseUrl()org.apache.http.pool.PoolStatsgetPoolInformation()Get statistics from the internal HTTP connection managervoidinit(java.lang.String tenantName)Initialize the SSL connection pool after all the required field values have been injectedprotected org.apache.http.impl.client.CloseableHttpClientobtainCloseableHttpClient(org.apache.http.conn.ConnectionKeepAliveStrategy connKeepAliveStrategy, ClientPropertyAdapter propertyAdapter)Overridden by child classes for specialized behavior.FhirServerResponsepost(java.lang.String url, RequestOptions requestOptions, java.lang.String body)Issue a POST request at the given url with request-specific headersFhirServerResponsepost(java.lang.String url, java.lang.String body)Issue a POST request at the given url without any request-specific headersprotected voidprocessOperationalOutcome(FhirServerResponse sr, org.apache.http.HttpEntity entity)Extract the operational outcome message from the response entityFhirServerResponseput(java.lang.String url, RequestOptions requestOptions, java.lang.String body)Issue a PUT request with request-specific headersFhirServerResponseput(java.lang.String url, java.lang.String body)Issue a PUT request without request-specific headersvoidshutdown()Shut down the pools associated with this client 
 - 
 
- 
- 
Constructor Detail
- 
FHIRBucketClient
public FHIRBucketClient(ClientPropertyAdapter cpa)
Public constructor- Parameters:
 cpa-
 
 - 
 
- 
Method Detail
- 
addHeader
public void addHeader(java.lang.String key, java.lang.String value)Add the given key/value as a header- Parameters:
 key-value-
 
- 
init
public void init(java.lang.String tenantName)
Initialize the SSL connection pool after all the required field values have been injected 
- 
get
public FhirServerResponse get(java.lang.String url)
Issue a GET request without request-specific headers- Parameters:
 url-- Returns:
 
 
- 
get
public FhirServerResponse get(java.lang.String url, RequestOptions requestOptions)
Issue a GET request with request-specific headers- Parameters:
 url-requestOptions- request-specific headers; can be null- Returns:
 
 
- 
post
public FhirServerResponse post(java.lang.String url, java.lang.String body)
Issue a POST request at the given url without any request-specific headers- Parameters:
 url-body-- Returns:
 
 
- 
post
public FhirServerResponse post(java.lang.String url, RequestOptions requestOptions, java.lang.String body)
Issue a POST request at the given url with request-specific headers- Parameters:
 url-requestOptions- request-specific headers; can be nullbody-- Returns:
 
 
- 
put
public FhirServerResponse put(java.lang.String url, java.lang.String body)
Issue a PUT request without request-specific headers- Parameters:
 url-body-- Returns:
 
 
- 
put
public FhirServerResponse put(java.lang.String url, RequestOptions requestOptions, java.lang.String body)
Issue a PUT request with request-specific headers- Parameters:
 url-requestOptions-body-- Returns:
 
 
- 
delete
public FhirServerResponse delete(java.lang.String url)
Issue a DELETE for the given url- Parameters:
 url-- Returns:
 
 
- 
shutdown
public void shutdown()
Shut down the pools associated with this client 
- 
getPoolInformation
public org.apache.http.pool.PoolStats getPoolInformation()
Get statistics from the internal HTTP connection manager- Returns:
 
 
- 
processOperationalOutcome
protected void processOperationalOutcome(FhirServerResponse sr, org.apache.http.HttpEntity entity)
Extract the operational outcome message from the response entity- Parameters:
 sr-entity-
 
- 
obtainCloseableHttpClient
protected org.apache.http.impl.client.CloseableHttpClient obtainCloseableHttpClient(org.apache.http.conn.ConnectionKeepAliveStrategy connKeepAliveStrategy, ClientPropertyAdapter propertyAdapter)Overridden by child classes for specialized behavior.- Parameters:
 connKeepAliveStrategy-
 
- 
getBaseUrl
public java.lang.String getBaseUrl()
- Returns:
 - the URL to the base of the FHIR server
 
 
 - 
 
 -