Class AbstractEventSource

java.lang.Object
edu.sc.seis.sod.source.AbstractSource
edu.sc.seis.sod.source.event.AbstractEventSource
All Implemented Interfaces:
EventSource, Source
Direct Known Subclasses:
DelayedEventSource, FdsnEvent

public abstract class AbstractEventSource extends AbstractSource implements EventSource
  • Field Details

    • caughtUpToRealtime

      protected boolean caughtUpToRealtime
    • everCaughtUpToRealtime

      protected boolean everCaughtUpToRealtime
    • lastQueryTime

      protected edu.iris.Fissures.model.MicroSecondDate lastQueryTime
    • NO_DNS

      public static final String NO_DNS
      See Also:
    • sleepUntilTime

      protected edu.iris.Fissures.model.MicroSecondDate sleepUntilTime
    • increment

      protected edu.iris.Fissures.model.TimeInterval increment
    • lag

      protected edu.iris.Fissures.model.TimeInterval lag
    • refreshInterval

      protected edu.iris.Fissures.model.TimeInterval refreshInterval
    • nearRealTimeInterval

      protected edu.iris.Fissures.model.TimeInterval nearRealTimeInterval
    • EVENT_QUERY_INCREMENT

      public static final String EVENT_QUERY_INCREMENT
      See Also:
    • EVENT_REFRESH_INTERVAL

      public static final String EVENT_REFRESH_INTERVAL
      See Also:
    • EVENT_LAG

      public static final String EVENT_LAG
      See Also:
    • MIN_INCREMENT

      public static final edu.iris.Fissures.model.TimeInterval MIN_INCREMENT
  • Constructor Details

  • Method Details

    • getWaitBeforeNext

      public edu.iris.Fissures.model.TimeInterval getWaitBeforeNext()
      Description copied from interface: EventSource
      If the source needs to wait for more events to arrive, it should return the amount of time it wants to wait with this method.
      Specified by:
      getWaitBeforeNext in interface EventSource
    • caughtUpWithRealtime

      protected boolean caughtUpWithRealtime()
    • isEverCaughtUpToRealtime

      protected boolean isEverCaughtUpToRealtime()
    • getQueryStart

      protected edu.iris.Fissures.model.MicroSecondDate getQueryStart()
      Returns:
      - the next time to start asking for events
    • getQueryTime

      protected edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange getQueryTime()
      Returns:
      - the next time range to be queried for events
    • increaseQueryTimeWidth

      public void increaseQueryTimeWidth()
    • decreaseQueryTimeWidth

      public void decreaseQueryTimeWidth()
      decrease the time increment for queries, but only if it is larger than the minimum = 1Day to avoid many tiny queries to the server.
    • resetQueryTimeForLag

      protected edu.iris.Fissures.model.MicroSecondDate resetQueryTimeForLag()
      Scoots the query time back by the event lag amount from the run properties to the query start time at the earliest
    • getQueryEdge

      protected edu.iris.Fissures.model.MicroSecondDate getQueryEdge() throws edu.sc.seis.fissuresUtil.database.NotFound
      Returns:
      - latest time queried
      Throws:
      edu.sc.seis.fissuresUtil.database.NotFound
    • setQueryEdge

      protected void setQueryEdge(edu.iris.Fissures.model.MicroSecondDate edge)
      sets the latest time queried
    • updateQueryEdge

      protected void updateQueryEdge(edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange queryTime)
    • getSleepUntilTime

      public edu.iris.Fissures.model.MicroSecondDate getSleepUntilTime()
    • getLag

      public edu.iris.Fissures.model.TimeInterval getLag()
    • getIncrement

      public edu.iris.Fissures.model.TimeInterval getIncrement()
    • setIncrement

      public void setIncrement(edu.iris.Fissures.model.TimeInterval increment)
    • setLag

      public void setLag(edu.iris.Fissures.model.TimeInterval lag)
    • getRefreshInterval

      public edu.iris.Fissures.model.TimeInterval getRefreshInterval()