Package ca.cdr.api.fhirgw.svc
Interface IOperationOrchestrator
- All Superinterfaces:
IBaseOrchestrator<GatewayOperationRouteJson>
The implementer of this interface will provide the logics required to delegate and orchestrate the result of
the execution of an operation on a target server.
-
Method Summary
Modifier and TypeMethodDescriptioninvoke
(OperationRequest theOperationRequest, ServletRequestDetails theRequestDetails) Called by a system provider to invoke a FHIR operation which returns a single resource.void
invokeBulkExportOperation
(OperationRequest theOperationRequest, ServletRequestDetails theRequestDetails) Called by a system provider to invoke a bulk export operation on surrogate server(s).void
invokeBulkExportStatusOperation
(OperationRequest theOperationRequest, ServletRequestDetails theRequestDetails) Called by a system provider to invoke a bulk export status operation on surrogate server(s).invokeBundleReturning
(OperationRequest theOperationRequest, ServletRequestDetails theRequestDetails) Called by a system provider to invoke a FHIR operation which returns a page of results.invokeGraphql
(OperationRequest theOperationRequest, ServletRequestDetails theRequestDetails, String theGraphQLQuery) Called by a system provider to invoke a graphql operationinvokeOperationResponseReturning
(OperationRequest theOperationRequest, ServletRequestDetails theRequestDetails) Called by a system provider to invoke a FHIR operation on a surrogate server.void
invokeProxyLinkOperation
(OperationRequest theOperationRequest, ServletRequestDetails theRequestDetails) Called by a system provider to invoke a proxy-link operation which distributes received links on surrogate server(s).Methods inherited from interface ca.cdr.api.fhirgw.svc.IBaseOrchestrator
addRoute, setTargets
-
Method Details
-
invoke
Called by a system provider to invoke a FHIR operation which returns a single resource.- Parameters:
theOperationRequest
-theRequestDetails
-- Returns:
- usually a Parameters resource
-
invokeBundleReturning
IBundleProvider invokeBundleReturning(OperationRequest theOperationRequest, ServletRequestDetails theRequestDetails) Called by a system provider to invoke a FHIR operation which returns a page of results.- Parameters:
theOperationRequest
-theRequestDetails
-- Returns:
-
invokeGraphql
String invokeGraphql(OperationRequest theOperationRequest, ServletRequestDetails theRequestDetails, String theGraphQLQuery) Called by a system provider to invoke a graphql operation- Parameters:
theOperationRequest
-theRequestDetails
-theGraphQLQuery
-- Returns:
-
invokeOperationResponseReturning
List<OperationResponse> invokeOperationResponseReturning(OperationRequest theOperationRequest, ServletRequestDetails theRequestDetails) Called by a system provider to invoke a FHIR operation on a surrogate server. The returned OperationResponse's can be used to extract/transform target responses as per the implementer's choosing.- Parameters:
theOperationRequest
-theRequestDetails
-- Returns:
- a list of OperationResponse's
-
invokeBulkExportOperation
void invokeBulkExportOperation(OperationRequest theOperationRequest, ServletRequestDetails theRequestDetails) Called by a system provider to invoke a bulk export operation on surrogate server(s). Target server response headers are consolidated into a requestDetails response header.- Parameters:
theOperationRequest
-theRequestDetails
-
-
invokeBulkExportStatusOperation
void invokeBulkExportStatusOperation(OperationRequest theOperationRequest, ServletRequestDetails theRequestDetails) Called by a system provider to invoke a bulk export status operation on surrogate server(s). When some target servers reply `Accepted` (202) responses, an `Accepted` requestDetails response header is returned. When all target servers reply `OK` (200) responses, an `OK` requestDetails response header is returned together with target response contents consolidated into the requestDetails response content.- Parameters:
theOperationRequest
-theRequestDetails
-
-
invokeProxyLinkOperation
void invokeProxyLinkOperation(OperationRequest theOperationRequest, ServletRequestDetails theRequestDetails) Called by a system provider to invoke a proxy-link operation which distributes received links on surrogate server(s). Target server response contents are consolidated into the requestDetails response content.- Parameters:
theOperationRequest
-theRequestDetails
-
-