Interface ISubmissionDataStorageService

All Known Implementing Classes:
AbstractSubmissionDataStorageService, AmazonHSMSubmissionDataStorageService, AmazonKMSSubmissionDataStorageService, AmazonS3SubmissionDataStorageService, AwsSubmissionDataStorageService, AzureSubmissionDataStorageService, CloudSubmissionDataStorageService, DatabaseSubmissionDataStorageService, FileSystemSubmissionDataStorageService, HybridCloudSubmissionDataStorageService, MockSubmissionDataStorageService

public interface ISubmissionDataStorageService
Provides a submission data storage interface.
See Also:
  • Method Details

    • storeSubmissionReceipt

      void storeSubmissionReceipt(Submission submission, byte[] receiptData)
      Store submission receipt data.
      Parameters:
      submission - the submission (required)
      receiptData - the receipt data (optional)
    • storeSubmissionXml

      void storeSubmissionXml(Submission submission, byte[] xmlData)
      Store submission form xml data.
      Parameters:
      submission - the submission (required)
      xmlData - the xml data (required)
    • storeSubmissionAndHistoryXml

      void storeSubmissionAndHistoryXml(Submission submission, SubmissionHistory history, byte[] xmlData)
      Store submission form xml data against the submission and submission history objects.
      Parameters:
      submission - the submission (required)
      history - the history (required)
      xmlData - the xml data (required)
      Since:
      4.2.0
    • storeSubmissionHistoryXml

      void storeSubmissionHistoryXml(SubmissionHistory history, byte[] xmlData)
      Store submission history xml data.
      Parameters:
      history - the history (required)
      xmlData - the xml data (required)
    • storeAttachment

      void storeAttachment(Submission submission, FileUpload fileUpload, byte[] fileData)
      Store the submission attachment file data.
      Parameters:
      submission - the associated submission (required)
      fileUpload - the file upload (required)
      fileData - the file data
    • getSubmissionReceipt

      byte[] getSubmissionReceipt(Submission submission)
      Gets the submission receipt data.
      Parameters:
      submission - the submission (required)
      Returns:
      the submission receipt
    • getSubmissionXml

      byte[] getSubmissionXml(Submission submission)
      Gets the submission xml data.
      Parameters:
      submission - the submission (required)
      Returns:
      the submission xml
    • getSubmissionHistoryXml

      byte[] getSubmissionHistoryXml(SubmissionHistory history)
      Gets the submission history xml data.
      Parameters:
      history - the history (required)
      Returns:
      the submission history xml
    • getAttachment

      byte[] getAttachment(FileUpload fileUpload)
      Gets the attachment file data.
      Parameters:
      fileUpload - the file upload (required)
      Returns:
      the attachment
    • deleteSubmissionData

      boolean deleteSubmissionData(Submission submission)
      Delete submission data, attachment data, submission history data and return true if successful.
      Parameters:
      submission - the submission to delete the data of (required)
      Returns:
      true if successful, or false if the data was already deleted
    • deleteAttachmentData

      boolean deleteAttachmentData(FileUpload fileUpload)
      Delete attachment data.
      Parameters:
      fileUpload - the file upload (required)
      Returns:
      true, if successful
    • getSubmissionXmlEncoding

      String getSubmissionXmlEncoding()
      Gets the submission xml encoding.
      Returns:
      the submission xml encoding
    • setSubmissionXmlEncoding

      void setSubmissionXmlEncoding(String storageEncoding)
      Sets the submission xml encoding.
      Parameters:
      storageEncoding - the new submission xml encoding
    • getReceiptPdfEncoding

      String getReceiptPdfEncoding()
      Gets the receipt pdf encoding.
      Returns:
      the receipt pdf encoding
    • setReceiptPdfEncoding

      void setReceiptPdfEncoding(String storageEncoding)
      Sets the receipt pdf encoding.
      Parameters:
      storageEncoding - the new receipt pdf encoding
    • getSubmissionHistoryXmlEncoding

      String getSubmissionHistoryXmlEncoding()
      Gets the submission history xml encoding.
      Returns:
      the submission history xml encoding
    • setSubmissionHistoryXmlEncoding

      void setSubmissionHistoryXmlEncoding(String storageEncoding)
      Sets the submission history xml encoding.
      Parameters:
      storageEncoding - the new submission history xml encoding
    • getAttachmentsEncoding

      String getAttachmentsEncoding()
      Gets the attachments encoding.
      Returns:
      the attachments encoding
    • setAttachmentsEncoding

      void setAttachmentsEncoding(String storageEncoding)
      Sets the attachments encoding.
      Parameters:
      storageEncoding - the new attachments encoding
    • encryptText

      String encryptText(Submission submission, String plainText)
      Encrypt a string related to a submission, returning Base64 encoded cipher text.
      Parameters:
      submission - the submission which the string relates to (required)
      plainText - the plain text string to be encrypted
      Returns:
      the encrypted string - note that this will generally be longer than the original
      Since:
      4.3.0
    • decryptText

      String decryptText(Submission submission, String cypherText)
      Decrypt a submission related string that was created using encryptText
      Parameters:
      submission - the submission which the string relates to (required)
      cypherText - the encrypted string
      Returns:
      the plain text string
      Since:
      4.3.0
    • hasExternalizeStorage

      @Deprecated boolean hasExternalizeStorage()
      Deprecated.
      Return true if the submission data storage service uses external storage (non TM database) of submission data. If this method returns true then the method deleteSubmissionData(Submission) should be called by the @link IDataRetentionManagementService when purging submission data.
      Returns:
      true if external storage (non TM database) is used to store submission data.
      Since:
      4.2.0
    • initializeCryptoDataKey

      boolean initializeCryptoDataKey(Submission submission)
      Initializes the crypto data key for the submission This is called on Render to avoid a race condition TMR-2171 with multi simultaneous Dynamic Data Calls.
      Parameters:
      submission - the submission to which the data key will be created
      Returns:
      true if the submission data storage crypto key is initialized.
      Since:
      18.5.9