Class ArchivePolicy

java.lang.Object
gov.usgs.util.DefaultConfigurable
gov.usgs.earthquake.indexer.ArchivePolicy
All Implemented Interfaces:
Configurable
Direct Known Subclasses:
ProductArchivePolicy

public class ArchivePolicy extends DefaultConfigurable
A policy for the Indexer to clean up Events in its ProductIndex. The policy is created by configuration parameters and generates a ProductIndexQuery. Any product/event matching the product index query is archived. Generally, archiving means the data for that product/event is removed from the index as well as the storage. Upon archiving, an EVENT_ARCHIVED type of IndexerEvent is sent to interested listeners. All archive policies run in their own thread (one thread separate from indexing for all archive policies, not one each) and execute at configured intervals.
  • Field Details

    • ARCHIVE_MIN_AGE_PROPERTY

      @Deprecated public static final String ARCHIVE_MIN_AGE_PROPERTY
      Deprecated.
      See Also:
    • ARCHIVE_MAX_AGE_PROPERTY

      @Deprecated public static final String ARCHIVE_MAX_AGE_PROPERTY
      Deprecated.
      See Also:
    • ARCHIVE_MIN_EVENT_AGE_PROPERTY

      public static final String ARCHIVE_MIN_EVENT_AGE_PROPERTY
      Property for archive minimum event age
      See Also:
    • ARCHIVE_MAX_EVENT_AGE_PROPERTY

      public static final String ARCHIVE_MAX_EVENT_AGE_PROPERTY
      Property for archive maximum event age
      See Also:
    • ARCHIVE_MIN_EVENT_TIME_PROPERTY

      public static final String ARCHIVE_MIN_EVENT_TIME_PROPERTY
      Property for archive minimum event time
      See Also:
    • ARCHIVE_MAX_EVENT_TIME_PROPERTY

      public static final String ARCHIVE_MAX_EVENT_TIME_PROPERTY
      Property for archive maximum event time
      See Also:
    • ARCHIVE_MIN_MAG_PROPERTY

      public static final String ARCHIVE_MIN_MAG_PROPERTY
      Property for archive minimum mag
      See Also:
    • ARCHIVE_MAX_MAG_PROPERTY

      public static final String ARCHIVE_MAX_MAG_PROPERTY
      Property for archive maximum mag
      See Also:
    • ARCHIVE_MIN_LAT_PROPERTY

      public static final String ARCHIVE_MIN_LAT_PROPERTY
      Property for archive minimum latitude
      See Also:
    • ARCHIVE_MAX_LAT_PROPERTY

      public static final String ARCHIVE_MAX_LAT_PROPERTY
      Property for archive maximum latitude
      See Also:
    • ARCHIVE_MIN_LNG_PROPERTY

      public static final String ARCHIVE_MIN_LNG_PROPERTY
      Property for archive minimum longitude
      See Also:
    • ARCHIVE_MAX_LNG_PROPERTY

      public static final String ARCHIVE_MAX_LNG_PROPERTY
      Property for archive maximum longitude
      See Also:
    • ARCHIVE_MIN_DEPTH_PROPERTY

      public static final String ARCHIVE_MIN_DEPTH_PROPERTY
      Property for archive minimum depth
      See Also:
    • ARCHIVE_MAX_DEPTH_PROPERTY

      public static final String ARCHIVE_MAX_DEPTH_PROPERTY
      Property for archive maximum depth
      See Also:
    • ARCHIVE_EVENT_SOURCE_PROPERTY

      public static final String ARCHIVE_EVENT_SOURCE_PROPERTY
      Property for archive event source
      See Also:
    • minAge

      @Deprecated protected Long minAge
      Deprecated.
    • maxAge

      @Deprecated protected Long maxAge
      Deprecated.
    • minEventAge

      protected Long minEventAge
      Configured parameter var for minEventAge
    • maxEventAge

      protected Long maxEventAge
      Configured parameter var for maxEventAge
    • minEventTime

      protected Long minEventTime
      Configured parameter var for minEventTime
    • maxEventTime

      protected Long maxEventTime
      Configured parameter var for maxEventTime
    • minMag

      protected BigDecimal minMag
      Configured parameter var for minMag
    • maxMag

      protected BigDecimal maxMag
      Configured parameter var for maxMag
    • minLat

      protected BigDecimal minLat
      Configured parameter var for minLat
    • maxLat

      protected BigDecimal maxLat
      Configured parameter var for maxLat
    • minLng

      protected BigDecimal minLng
      Configured parameter var for minLng
    • maxLng

      protected BigDecimal maxLng
      Configured parameter var for maxLng
    • minDepth

      protected BigDecimal minDepth
      Configured parameter var for minDepth
    • maxDepth

      protected BigDecimal maxDepth
      Configured parameter var for maxDepth
    • eventSource

      protected String eventSource
      Configured parameter var for eventSource
  • Constructor Details

    • ArchivePolicy

      public ArchivePolicy()
      Default Constructor
  • 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 DefaultConfigurable
      Parameters:
      config - the Config object with settings.
      Throws:
      Exception - if configuration exceptions occur.
    • shutdown

      public void shutdown() throws Exception
      Description copied from class: DefaultConfigurable
      Stop any processing/background threads.
      Specified by:
      shutdown in interface Configurable
      Overrides:
      shutdown in class DefaultConfigurable
      Throws:
      Exception - if exceptions occur while starting.
    • startup

      public void startup() throws Exception
      Description copied from class: DefaultConfigurable
      Start any processing/background threads.
      Specified by:
      startup in interface Configurable
      Overrides:
      startup in class DefaultConfigurable
      Throws:
      Exception - if exceptions occur while starting.
    • getIndexQuery

      public ProductIndexQuery getIndexQuery()
      Returns:
      a ProductIndexQuery
    • isValidPolicy

      public boolean isValidPolicy()
      Returns:
      boolean if the policy is valid
    • parseBigDecimal

      protected BigDecimal parseBigDecimal(Config config, String name)
      Gets the property 'name' from config and returns a BigDecimal of it
      Parameters:
      config - Config file
      name - name of property from config
      Returns:
      BigDecimal of property
    • parseDateOrLong

      protected Long parseDateOrLong(Config config, String name)
      Gets the property 'name' from config and returns a Date/Long of it
      Parameters:
      config - Config file
      name - name of property from config
      Returns:
      Date/Long of property
    • parseLong

      protected Long parseLong(Config config, String name)
      Gets the property 'name' from config and returns a Long of it
      Parameters:
      config - Config file
      name - name of property from config
      Returns:
      Long of property
    • getMinAge

      @Deprecated public Long getMinAge()
      Deprecated.
      Returns:
      minAge
    • setMinAge

      @Deprecated public void setMinAge(Long minAge)
      Deprecated.
      Parameters:
      minAge - to set
    • getMaxAge

      @Deprecated public Long getMaxAge()
      Deprecated.
      Returns:
      maxAge
    • setMaxAge

      @Deprecated public void setMaxAge(Long maxAge)
      Deprecated.
      Parameters:
      maxAge - to set
    • getMinEventAge

      public Long getMinEventAge()
      Returns:
      minEventAge
    • setMinEventAge

      public void setMinEventAge(Long minEventAge)
      Parameters:
      minEventAge - to set
    • getMaxEventAge

      public Long getMaxEventAge()
      Returns:
      maxEventAge
    • setMaxEventAge

      public void setMaxEventAge(Long maxEventAge)
      Parameters:
      maxEventAge - to set
    • getMinEventTime

      public Long getMinEventTime()
      Returns:
      minEventTime
    • setMinEventTime

      public void setMinEventTime(Long minEventTime)
      Parameters:
      minEventTime - to set
    • getMaxEventTime

      public Long getMaxEventTime()
      Returns:
      maxEventTime
    • setMaxEventTime

      public void setMaxEventTime(Long maxEventTime)
      Parameters:
      maxEventTime - to set
    • getMinMag

      public BigDecimal getMinMag()
      Returns:
      minMag
    • setMinMag

      public void setMinMag(BigDecimal minMag)
      Parameters:
      minMag - to set
    • getMaxMag

      public BigDecimal getMaxMag()
      Returns:
      maxMag
    • setMaxMag

      public void setMaxMag(BigDecimal maxMag)
      Parameters:
      maxMag - to set
    • getMinLat

      public BigDecimal getMinLat()
      Returns:
      minLat
    • setMinLat

      public void setMinLat(BigDecimal minLat)
      Parameters:
      minLat - to set
    • getMaxLat

      public BigDecimal getMaxLat()
      Returns:
      maxLat
    • setMaxLat

      public void setMaxLat(BigDecimal maxLat)
      Parameters:
      maxLat - to set
    • getMinLng

      public BigDecimal getMinLng()
      Returns:
      minLng
    • setMinLng

      public void setMinLng(BigDecimal minLng)
      Parameters:
      minLng - to set
    • getMaxLng

      public BigDecimal getMaxLng()
      Returns:
      maxLng
    • setMaxLng

      public void setMaxLng(BigDecimal maxLng)
      Parameters:
      maxLng - to set
    • getMinDepth

      public BigDecimal getMinDepth()
      Returns:
      minDepth
    • setMinDepth

      public void setMinDepth(BigDecimal minDepth)
      Parameters:
      minDepth - to set
    • getMaxDepth

      public BigDecimal getMaxDepth()
      Returns:
      maxDepth
    • setMaxDepth

      public void setMaxDepth(BigDecimal maxDepth)
      Parameters:
      maxDepth - to set
    • getEventSource

      public String getEventSource()
      Returns:
      eventSource
    • setEventSource

      public void setEventSource(String eventSource)
      Parameters:
      eventSource - to set