Class FilesystemBinaryStorageSvcImpl

java.lang.Object
ca.uhn.fhir.jpa.binary.svc.BaseBinaryStorageSvcImpl
ca.uhn.fhir.jpa.binstore.FilesystemBinaryStorageSvcImpl
All Implemented Interfaces:
IBinaryStorageSvc

  • Constructor Details

  • Method Details

    • isValidBlobId

      public boolean isValidBlobId(String theNewBlobId)
      This implementation prevents: \ / | .
      Specified by:
      isValidBlobId in interface IBinaryStorageSvc
      Overrides:
      isValidBlobId in class BaseBinaryStorageSvcImpl
      Parameters:
      theNewBlobId - the blob ID to validate
      Returns:
      true if the blob ID is valid, false otherwise.
    • storeBlob

      @Nonnull public StoredDetails storeBlob(org.hl7.fhir.instance.model.api.IIdType theResourceId, String theBlobIdOrNull, String theContentType, InputStream theInputStream, ca.uhn.fhir.rest.api.server.RequestDetails theRequestDetails) throws IOException
      Description copied from interface: IBinaryStorageSvc
      Store a new binary blob
      Parameters:
      theResourceId - The resource ID that owns this blob. Note that it should not be possible to retrieve a blob without both the resource ID and the blob ID being correct.
      theBlobIdOrNull - If set, forces
      theContentType - The content type to associate with this blob
      theInputStream - An InputStream to read from. This method should close the stream when it has been fully consumed.
      theRequestDetails - The operation request details.
      Returns:
      Returns details about the stored data
      Throws:
      IOException
    • fetchBlobDetails

      public StoredDetails fetchBlobDetails(org.hl7.fhir.instance.model.api.IIdType theResourceId, String theBlobId) throws IOException
      Throws:
      IOException
    • writeBlob

      public boolean writeBlob(org.hl7.fhir.instance.model.api.IIdType theResourceId, String theBlobId, OutputStream theOutputStream) throws IOException
      Returns:
      Returns true if the blob was found and written, of false if the blob was not found (i.e. it was expunged or the ID was invalid)
      Throws:
      IOException
    • expungeBlob

      public void expungeBlob(org.hl7.fhir.instance.model.api.IIdType theResourceId, String theBlobId)
    • fetchBlob

      public byte[] fetchBlob(org.hl7.fhir.instance.model.api.IIdType theResourceId, String theBlobId) throws IOException
      Description copied from interface: IBinaryStorageSvc
      Fetch the contents of the given blob
      Parameters:
      theResourceId - The resource ID
      theBlobId - The blob ID
      Returns:
      The payload as a byte array
      Throws:
      IOException