Class S3Provider
- java.lang.Object
-
- com.ibm.fhir.bulkdata.provider.impl.S3Provider
-
-
Constructor Summary
Constructors Constructor Description S3Provider(java.lang.String source)The provider loads the Client based on the Source.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Closes the StorageProvider wrapped resources.voidcreateSource()creates the base output location for the type.booleanexists()checks to see if the bucket exists.com.ibm.cloud.objectstorage.services.s3.AmazonS3getClient()com.ibm.cloud.objectstorage.services.s3.model.ListObjectsV2ResultgetListObject(java.lang.String prefix, java.lang.String continuationToken)get the list of objects based on the continuation token.longgetNumberOfLoaded()longgetNumberOfParseFailures()java.util.List<Resource>getResources()gets the read resources.longgetSize(java.lang.String workItem)gets the size of the given work item.voidlistBuckets()lists the buckets when logging out bucket detailsvoidpushEndOfJobOperationOutcomes(java.io.ByteArrayOutputStream baos, java.lang.String folder, java.lang.String fileName)Pushes End of Job OperationOutcomes and closes the Outcomes StorageProvidervoidpushOperationOutcomes()Pushes the Operation OutcomesvoidreadResources(long numOfLinesToSkip, java.lang.String workItem)reads from a given workitem (or file) in a source and skips a certain noumber of linesvoidregisterTransient(long executionId, ExportTransientUserData transientUserData, java.lang.String cosBucketPathPrefix, java.lang.String fhirResourceType)voidregisterTransient(ImportTransientUserData transientUserData)voidwriteResources(java.lang.String mediaType, java.util.List<ReadResultDTO> dtos)wraps the complexity of writing FHIR Resources out to a target
-
-
-
Constructor Detail
-
S3Provider
public S3Provider(java.lang.String source) throws FHIRExceptionThe provider loads the Client based on the Source. The Source (storageProvider) must be s3 compatible.- Parameters:
source-- Throws:
FHIRException
-
-
Method Detail
-
exists
public boolean exists()
checks to see if the bucket exists.- Returns:
-
listBuckets
public void listBuckets()
lists the buckets when logging out bucket details
-
getListObject
public com.ibm.cloud.objectstorage.services.s3.model.ListObjectsV2Result getListObject(java.lang.String prefix, java.lang.String continuationToken) throws FHIRExceptionget the list of objects based on the continuation token.- Parameters:
prefix- the search keycontinuationToken- null or string indicating a continuation token.- Returns:
- Throws:
FHIRException
-
getSize
public long getSize(java.lang.String workItem) throws FHIRExceptionDescription copied from interface:Providergets the size of the given work item.- Specified by:
getSizein interfaceProvider- Returns:
- Throws:
FHIRException
-
getResources
public java.util.List<Resource> getResources() throws FHIRException
Description copied from interface:Providergets the read resources.- Specified by:
getResourcesin interfaceProvider- Returns:
- Throws:
FHIRException
-
getNumberOfParseFailures
public long getNumberOfParseFailures() throws FHIRException- Specified by:
getNumberOfParseFailuresin interfaceProvider- Throws:
FHIRException
-
registerTransient
public void registerTransient(ImportTransientUserData transientUserData)
- Specified by:
registerTransientin interfaceProvider
-
getNumberOfLoaded
public long getNumberOfLoaded() throws FHIRException- Specified by:
getNumberOfLoadedin interfaceProvider- Throws:
FHIRException
-
readResources
public void readResources(long numOfLinesToSkip, java.lang.String workItem) throws FHIRExceptionDescription copied from interface:Providerreads from a given workitem (or file) in a source and skips a certain noumber of lines- Specified by:
readResourcesin interfaceProvider- Throws:
FHIRException
-
pushOperationOutcomes
public void pushOperationOutcomes() throws FHIRExceptionDescription copied from interface:ProviderPushes the Operation Outcomes- Specified by:
pushOperationOutcomesin interfaceProvider- Throws:
FHIRException
-
createSource
public void createSource() throws FHIRExceptionDescription copied from interface:Providercreates the base output location for the type.- Specified by:
createSourcein interfaceProvider- Throws:
FHIRException
-
getClient
public com.ibm.cloud.objectstorage.services.s3.AmazonS3 getClient()
-
close
public void close() throws java.lang.ExceptionDescription copied from interface:ProviderCloses the StorageProvider wrapped resources.
-
writeResources
public void writeResources(java.lang.String mediaType, java.util.List<ReadResultDTO> dtos) throws java.lang.ExceptionDescription copied from interface:Providerwraps the complexity of writing FHIR Resources out to a target- Specified by:
writeResourcesin interfaceProvider- Throws:
java.lang.Exception
-
registerTransient
public void registerTransient(long executionId, ExportTransientUserData transientUserData, java.lang.String cosBucketPathPrefix, java.lang.String fhirResourceType) throws java.lang.Exception- Specified by:
registerTransientin interfaceProvider- Throws:
java.lang.Exception
-
pushEndOfJobOperationOutcomes
public void pushEndOfJobOperationOutcomes(java.io.ByteArrayOutputStream baos, java.lang.String folder, java.lang.String fileName) throws FHIRExceptionDescription copied from interface:ProviderPushes End of Job OperationOutcomes and closes the Outcomes StorageProvider- Specified by:
pushEndOfJobOperationOutcomesin interfaceProvider- Parameters:
baos- the byte array output stream that is passed infolder- the folder where the file is to be storedfileName- the output filename to be used- Throws:
FHIRException
-
-