Class ProductArchivePolicy

All Implemented Interfaces:
Configurable

public class ProductArchivePolicy extends ArchivePolicy
An archive policy for products, instead of events. Allows removal of superseded products, preserving latest versions. Also allows targeting unassociated products.
  • Field Details

    • ARCHIVE_MIN_PRODUCT_AGE_PROPERTY

      public static final String ARCHIVE_MIN_PRODUCT_AGE_PROPERTY
      Property for archive min product age
      See Also:
    • ARCHIVE_MAX_PRODUCT_AGE_PROPERTY

      public static final String ARCHIVE_MAX_PRODUCT_AGE_PROPERTY
      Property for archive max product age
      See Also:
    • ARCHIVE_MIN_PRODUCT_TIME_PROPERTY

      public static final String ARCHIVE_MIN_PRODUCT_TIME_PROPERTY
      Property for archive min product time
      See Also:
    • ARCHIVE_MAX_PRODUCT_TIME_PROPERTY

      public static final String ARCHIVE_MAX_PRODUCT_TIME_PROPERTY
      Property for archive max product time
      See Also:
    • ARCHIVE_TYPE_PROPERTY

      public static final String ARCHIVE_TYPE_PROPERTY
      Property for archive product type
      See Also:
    • ARCHIVE_SOURCE_PROPERTY

      public static final String ARCHIVE_SOURCE_PROPERTY
      Property for archive product source
      See Also:
    • ARCHIVE_SUPERSEDED_PROPERTY

      public static final String ARCHIVE_SUPERSEDED_PROPERTY
      Property for archive superseded
      See Also:
    • ARCHIVE_UNASSOCIATED_PROPERTY

      public static final String ARCHIVE_UNASSOCIATED_PROPERTY
      Property for archive unassociated
      See Also:
    • ARCHIVE_STATUS_PROPERTY

      public static final String ARCHIVE_STATUS_PROPERTY
      Property for archive product status
      See Also:
    • DEFAULT_ARCHIVE_SUPERSEDED

      public static final String DEFAULT_ARCHIVE_SUPERSEDED
      Default state for archive superseded
      See Also:
    • DEFAULT_ARCHIVE_UNASSOCIATED

      public static final String DEFAULT_ARCHIVE_UNASSOCIATED
      Default state for archive unassociated
      See Also:
    • minProductAge

      protected Long minProductAge
      Configured parameter for min product age
    • maxProductAge

      protected Long maxProductAge
      Configured parameter for max product age
    • minProductTime

      protected Long minProductTime
      Configured parameter for min product time
    • maxProductTime

      protected Long maxProductTime
      Configured parameter for max product time
    • productType

      protected String productType
      Configured parameter for product type
    • productSource

      protected String productSource
      Configured parameter for product source
    • onlySuperseded

      protected boolean onlySuperseded
      Configured parameter for only superseded
    • onlyUnassociated

      protected boolean onlyUnassociated
      Configured parameter for only unassociated
    • productStatus

      protected String productStatus
      Configured parameter for product status
  • Constructor Details

    • ProductArchivePolicy

      public ProductArchivePolicy()
  • Method Details

    • configure

      public void configure(Config config) throws Exception
      Description copied from class: DefaultConfigurable
      Process configuration settings. Called before startup().
      Specified by:
      configure in interface Configurable
      Overrides:
      configure in class ArchivePolicy
      Parameters:
      config - the Config object with settings.
      Throws:
      Exception - if configuration exceptions occur.
    • getIndexQuery

      public ProductIndexQuery getIndexQuery()
      Overrides:
      getIndexQuery in class ArchivePolicy
      Returns:
      a ProductIndexQuery
    • isValidPolicy

      public boolean isValidPolicy()
      Overrides:
      isValidPolicy in class ArchivePolicy
      Returns:
      boolean if the policy is valid
    • getMinProductAge

      public Long getMinProductAge()
      Returns:
      minProductAge
    • setMinProductAge

      public void setMinProductAge(Long minProductAge)
      Parameters:
      minProductAge - to set
    • getMaxProductAge

      public Long getMaxProductAge()
      Returns:
      maxProductAge
    • setMaxProductAge

      public void setMaxProductAge(Long maxProductAge)
      Parameters:
      maxProductAge - to set
    • getMinProductTime

      public Long getMinProductTime()
      Returns:
      minProductTime
    • setMinProductTime

      public void setMinProductTime(Long minProductTime)
      Parameters:
      minProductTime - to set
    • getMaxProductTime

      public Long getMaxProductTime()
      Returns:
      maxProductTime
    • setMaxProductTime

      public void setMaxProductTime(Long maxProductTime)
      Parameters:
      maxProductTime - to set
    • getProductType

      public String getProductType()
      Returns:
      productType
    • setProductType

      public void setProductType(String productType)
      Parameters:
      productType - to set
    • getProductSource

      public String getProductSource()
      Returns:
      productSource
    • setProductSource

      public void setProductSource(String productSource)
      Parameters:
      productSource - to set
    • isOnlySuperseded

      public boolean isOnlySuperseded()
      Returns:
      onlySuperseded
    • setOnlySuperseded

      public void setOnlySuperseded(boolean onlySuperseded)
      Parameters:
      onlySuperseded - to set
    • isOnlyUnassociated

      public boolean isOnlyUnassociated()
      Returns:
      onlyUnassociated
    • setOnlyUnassociated

      public void setOnlyUnassociated(boolean onlyUnassociated)
      Parameters:
      onlyUnassociated - to set
    • getProductStatus

      public String getProductStatus()
      Returns:
      productStatus
    • setProductStatus

      public void setProductStatus(String productStatus)
      Parameters:
      productStatus - to set