Package org.openehealth.ipf.boot.fhir
Class IpfBootFhirServlet
- java.lang.Object
-
- javax.servlet.GenericServlet
-
- javax.servlet.http.HttpServlet
-
- ca.uhn.fhir.rest.server.RestfulServer
-
- org.openehealth.ipf.commons.ihe.fhir.IpfFhirServlet
-
- org.openehealth.ipf.boot.fhir.IpfBootFhirServlet
-
- All Implemented Interfaces:
IRestfulServer<ServletRequestDetails>
,IRestfulServerDefaults
,Serializable
,javax.servlet.Servlet
,javax.servlet.ServletConfig
public class IpfBootFhirServlet extends IpfFhirServlet
- Author:
- Christian Ohr
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.openehealth.ipf.commons.ihe.fhir.IpfFhirServlet
DEFAULT_SERVLET_NAME
-
Fields inherited from class ca.uhn.fhir.rest.server.RestfulServer
DEFAULT_ETAG_SUPPORT, DEFAULT_PREFER_RETURN, REQUEST_START_TIME, SERVLET_CONTEXT_ATTRIBUTE
-
-
Constructor Summary
Constructors Constructor Description IpfBootFhirServlet(FhirContext fhirContext, ObjectProvider<IPagingProvider> pagingProvider)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected IPagingProvider
getDefaultPagingProvider(int pagingProviderSize)
Returns the instance ofIPagingProvider
to be used.-
Methods inherited from class org.openehealth.ipf.commons.ihe.fhir.IpfFhirServlet
destroy, getDefaultNarrativeGenerator, getDefaultPageSize, getFhirVersion, getLoggingInterceptor, getMaximumPageSize, getNarrativeGenerator, getPagingProviderSize, getServletName, init, initialize, isLogging, isPrettyPrint, isResponseHighlighting, isStrictErrorHandler, setDefaultPageSize, setFhirContext, setFhirVersion, setLogging, setMaximumPageSize, setNarrativeGenerator, setPagingProviderSize, setPrettyPrint, setResponseHighlighting, setServletName, setStrictErrorHandler
-
Methods inherited from class ca.uhn.fhir.rest.server.RestfulServer
addHeadersToResponse, addRequestIdToResponse, createConfiguration, createPoweredByAttributes, createPoweredByHeader, createPoweredByHeaderComponentName, createPoweredByHeaderProductName, createPoweredByHeaderProductVersion, determineResourceMethod, doDelete, doGet, doOptions, doPost, doPut, escapedLength, getAddProfileTag, getBundleInclusionRule, getDefaultPreferReturn, getDefaultResponseEncoding, getElementsSupport, getETagSupport, getFhirContext, getImplementationDescription, getInterceptors_, getInterceptorService, getOrCreateRequestId, getPagingProvider, getPlainProviders, getRequestPath, getResourceBindings, getResourceProviders, getServerAddressStrategy, getServerBaseForRequest, getServerBindings, getServerConformanceProvider, getServerName, getServerVersion, handleRequest, init, isDefaultPrettyPrint, isIgnoreServerParsedRequestParameters, isUncompressIncomingContents, newRequestDetails, newRequestDetails, newRequestId, populateRequestDetailsFromRequestPath, registerInterceptor, registerProvider, registerProviders, registerProviders, registerProviders, returnResponse, service, setAddProfileTag, setBundleInclusionRule, setDefaultPreferReturn, setDefaultPrettyPrint, setDefaultResponseEncoding, setElementsSupport, setETagSupport, setIgnoreServerParsedRequestParameters, setImplementationDescription, setInterceptors, setInterceptors, setInterceptorService, setPagingProvider, setPlainProviders, setPlainProviders, setProviders, setResourceProviders, setResourceProviders, setServerAddressStrategy, setServerConformanceProvider, setServerName, setServerVersion, setTenantIdentificationStrategy, setUncompressIncomingContents, throwUnknownFhirOperationException, throwUnknownFhirOperationException, throwUnknownResourceTypeException, unregisterAllProviders, unregisterInterceptor, unregisterProvider, unregisterProviders, validateRequest
-
Methods inherited from class javax.servlet.http.HttpServlet
doHead, doTrace, getLastModified, service
-
-
-
-
Constructor Detail
-
IpfBootFhirServlet
public IpfBootFhirServlet(FhirContext fhirContext, ObjectProvider<IPagingProvider> pagingProvider)
-
-
Method Detail
-
getDefaultPagingProvider
protected IPagingProvider getDefaultPagingProvider(int pagingProviderSize)
Description copied from class:IpfFhirServlet
Returns the instance ofIPagingProvider
to be used. This implemention returnsFifoMemoryPagingProvider
, you may overwrite this e.g. to add a provider backed by a decent Cache implementation. In this case, not forget to set the paging parameters accessible viaIpfFhirServlet.getPagingProviderSize()
,IpfFhirServlet.getDefaultPageSize()
andIpfFhirServlet.getMaximumPageSize()
.You can also return null in order to disable paging.
The way how paging is actually implemented depends on the respective FHIR consumer endpoints
- Overrides:
getDefaultPagingProvider
in classIpfFhirServlet
- Parameters:
pagingProviderSize
- maximum number of parallel paged requests. Note that each request may have an aribitrary number of result resources though.- Returns:
- implementation of
IPagingProvider
- See Also:
IPagingProvider
,IpfFhirServlet.getPagingProviderSize()
,IpfFhirServlet.getMaximumPageSize()
,IpfFhirServlet.getDefaultPageSize()
-
-