Interface QuarantineInterface<T extends PersistentData>

Type Parameters:
T - a subclass of PersistentData
All Known Subinterfaces:
StoreAndForwardEngine

public interface QuarantineInterface<T extends PersistentData>
The QuarantineInterface provides a common API for handling quarantined data operations.
  • Method Details

    • storeQuarantined

      void storeQuarantined(List<T> data, Exception failureReason) throws Exception
      Stores quarantined data to this QuarantineInterface instance.
      Parameters:
      data - a list of type T to be stored as quarantined.
      failureReason - an exception representing the reason for quarantining.
      Throws:
      Exception - if there is an error storing the data.
    • retryQuarantined

      void retryQuarantined(List<Integer> quarantinedDataIds)
      Retries quarantined data such that data is attempted as good.
      Parameters:
      quarantinedDataIds - a list of IDs for the data that is to be retried.
    • deleteQuarantined

      void deleteQuarantined(List<Integer> quarantinedDataIds)
      Deletes quarantined data from this QuarantineInterface instance.
      Parameters:
      quarantinedDataIds - a list of IDs for the data that is to be deleted.
    • retrieveQuarantined

      List<T> retrieveQuarantined(List<Integer> quarantinedDataIds) throws Exception
      Retrieves the desired quarantined data from this QuarantineInterface instance.
      Parameters:
      quarantinedDataIds - a list of IDs for the data that is to be retrieved.
      Returns:
      a list of type T representing the quarantined data.
      Throws:
      Exception - if there is an error retrieving the data.
    • getQuarantinedDataInfo

      List<QuarantinedDataInfo> getQuarantinedDataInfo()
      Returns the quarantined data info. Note this does not return the actual data.
      Returns:
      a list of QuarantinedDataInfo objects describing the data that is currently quarantined.
    • getQuarantinedCount

      int getQuarantinedCount()
      Returns the total number of quarantined data within this QuarantineInterface instance.
      Returns:
      the number of items quarantined.