Package ca.uhn.fhir.rest.server.tenant
Class UrlBaseTenantIdentificationStrategy
java.lang.Object
ca.uhn.fhir.rest.server.tenant.UrlBaseTenantIdentificationStrategy
- All Implemented Interfaces:
ITenantIdentificationStrategy
public class UrlBaseTenantIdentificationStrategy
extends Object
implements ITenantIdentificationStrategy
This class is a tenant identification strategy which assumes that a single path
element will be present between the server base URL and individual request.
For example,
with this strategy enabled, given the following URL on a server with base URL http://example.com/base,
the server will extract the TENANT-A portion of the URL and use it as the tenant identifier. The
request will then proceed to read the resource with ID Patient/123.
GET http://example.com/base/TENANT-A/Patient/123
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidextractTenant(ca.uhn.fhir.util.UrlPathTokenizer theUrlPathTokenizer, RequestDetails theRequestDetails) Implementations should use this method to determine the tenant ID based on the incoming request andand populate it in theRequestDetails.setTenantId(String).massageServerBaseUrl(String theFhirServerBase, RequestDetails theRequestDetails) Implementations may use this method to tweak the server base URL if necessary based on the tenant ID
-
Constructor Details
-
UrlBaseTenantIdentificationStrategy
public UrlBaseTenantIdentificationStrategy()
-
-
Method Details
-
extractTenant
public void extractTenant(ca.uhn.fhir.util.UrlPathTokenizer theUrlPathTokenizer, RequestDetails theRequestDetails) Description copied from interface:ITenantIdentificationStrategyImplementations should use this method to determine the tenant ID based on the incoming request andand populate it in theRequestDetails.setTenantId(String).- Specified by:
extractTenantin interfaceITenantIdentificationStrategy- Parameters:
theUrlPathTokenizer- The tokenizer which is used to parse the request paththeRequestDetails- The request details object which can be used to access headers and to populate the tenant ID to
-
massageServerBaseUrl
Description copied from interface:ITenantIdentificationStrategyImplementations may use this method to tweak the server base URL if necessary based on the tenant ID- Specified by:
massageServerBaseUrlin interfaceITenantIdentificationStrategy
-