Class FhirController
java.lang.Object
org.techbd.service.http.hub.prime.api.FhirController
-
Constructor Summary
ConstructorDescriptionFhirController
(org.springframework.core.env.Environment environment, AppConfig appConfig, UdiPrimeJpaConfig udiPrimeJpaConfig, FHIRService fhirService, SftpManager sftpManager, SandboxHelpers sboxHelpers) -
Method Summary
Modifier and TypeMethodDescriptionbundleStatus
(String bundleSessionId, org.springframework.ui.Model model, jakarta.servlet.http.HttpServletRequest request) org.springframework.http.ResponseEntity
<String> getJsonFile
(String resourcePath, long simulateLifetimeMs) metadata
(org.springframework.ui.Model model, jakarta.servlet.http.HttpServletRequest request) validateBundle
(String payload, String tenantId, String fhirProfileUrlParam, String fhirProfileUrlHeader, String uaValidationStrategyJson, boolean includeRequestInOutcome, jakarta.servlet.http.HttpServletRequest request) validateBundleAndForward
(String payload, String tenantId, String fhirProfileUrlParam, String fhirProfileUrlHeader, String uaValidationStrategyJson, String customDataLakeApi, String dataLakeApiContentType, String healthCheck, boolean isSync, boolean includeRequestInOutcome, boolean includeIncomingPayloadInDB, boolean includeOperationOutcome, jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response)
-
Constructor Details
-
FhirController
public FhirController(org.springframework.core.env.Environment environment, AppConfig appConfig, UdiPrimeJpaConfig udiPrimeJpaConfig, FHIRService fhirService, SftpManager sftpManager, SandboxHelpers sboxHelpers)
-
-
Method Details
-
metadata
@GetMapping(value="/metadata", produces="application/xml") public String metadata(org.springframework.ui.Model model, jakarta.servlet.http.HttpServletRequest request) -
validateBundleAndForward
@PostMapping(value={"/Bundle","/Bundle/"}, consumes={"application/json","application/fhir+json"}) @ResponseBody @Async public Object validateBundleAndForward(@RequestBody @Nonnull String payload, @RequestHeader(value="X-TechBD-Tenant-ID",required=true) String tenantId, @RequestParam(value="profile",required=false) String fhirProfileUrlParam, @RequestHeader(value="X-TechBD-FHIR-Profile-URI",required=false) String fhirProfileUrlHeader, @RequestHeader(value="X-TechBD-FHIR-Validation-Strategy",required=false) String uaValidationStrategyJson, @RequestHeader(value="X-TechBD-DataLake-API-URL",required=false) String customDataLakeApi, @RequestHeader(value="X-TechBD-DataLake-API-Content-Type",required=false) String dataLakeApiContentType, @RequestHeader(value="X-TechBD-HealthCheck",required=false) String healthCheck, @RequestParam(value="immediate",required=false) boolean isSync, @RequestParam(value="include-request-in-outcome",required=false) boolean includeRequestInOutcome, @RequestParam(value="include-incoming-payload-in-db",required=false) boolean includeIncomingPayloadInDB, @RequestParam(value="include-operation-outcome",required=false,defaultValue="true") boolean includeOperationOutcome, jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) throws SQLException, IOException - Throws:
SQLException
IOException
-
validateBundle
@PostMapping(value={"/Bundle/$validate","/Bundle/$validate/"}, consumes={"application/json","application/fhir+json"}) @ResponseBody public Object validateBundle(@RequestBody @Nonnull String payload, @RequestHeader(value="X-TechBD-Tenant-ID",required=true) String tenantId, @RequestParam(value="profile",required=false) String fhirProfileUrlParam, @RequestHeader(value="X-TechBD-FHIR-Profile-URI",required=false) String fhirProfileUrlHeader, @RequestHeader(value="X-TechBD-FHIR-Validation-Strategy",required=false) String uaValidationStrategyJson, @RequestParam(value="include-request-in-outcome",required=false) boolean includeRequestInOutcome, jakarta.servlet.http.HttpServletRequest request) -
bundleStatus
-
getJsonFile
-