Package edu.sc.seis.sod.source.event
Class DelayedEventSource
java.lang.Object
edu.sc.seis.sod.source.AbstractSource
edu.sc.seis.sod.source.event.AbstractEventSource
edu.sc.seis.sod.source.event.DelayedEventSource
- All Implemented Interfaces:
EventSource
,Source
public class DelayedEventSource extends AbstractEventSource implements EventSource
-
Field Summary
Fields inherited from class edu.sc.seis.sod.source.event.AbstractEventSource
caughtUpToRealtime, EVENT_LAG, EVENT_QUERY_INCREMENT, EVENT_REFRESH_INTERVAL, everCaughtUpToRealtime, increment, lag, lastQueryTime, MIN_INCREMENT, nearRealTimeInterval, refreshInterval, sleepUntilTime
Fields inherited from class edu.sc.seis.sod.source.AbstractSource
name, NAME_ELEMENT, RETRIES_ELEMENT
-
Constructor Summary
Constructors Modifier Constructor Description protected
DelayedEventSource(java.time.Duration delay, EventSource source)
DelayedEventSource(org.w3c.dom.Element config)
-
Method Summary
Modifier and Type Method Description boolean
checkEvent(edu.sc.seis.sod.model.event.CacheEvent e)
edu.sc.seis.sod.model.common.TimeRange
getEventTimeRange()
java.time.Duration
getWaitBeforeNext()
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.boolean
hasNext()
edu.sc.seis.sod.model.event.CacheEvent[]
next()
Methods inherited from class edu.sc.seis.sod.source.event.AbstractEventSource
caughtUpWithRealtime, decreaseQueryTimeWidth, getIncrement, getLag, getQueryEdge, getQueryStart, getQueryTime, getRefreshInterval, getSleepUntilTime, increaseQueryTimeWidth, isEverCaughtUpToRealtime, resetQueryTimeForLag, setIncrement, setLag, setQueryEdge, updateQueryEdge
Methods inherited from class edu.sc.seis.sod.source.AbstractSource
appendToName, getName, getRetries, getRetryStrategy, setRetryStrategy
-
Constructor Details
-
Method Details
-
getEventTimeRange
public edu.sc.seis.sod.model.common.TimeRange getEventTimeRange()- Specified by:
getEventTimeRange
in interfaceEventSource
- Returns:
- - a MicroSecondTimeRange starting at least as early as the earliest event and ending at least as late as the latest event. No event should be returned by this source with an origin before the begin time or after the end time of this range.
-
getWaitBeforeNext
public java.time.Duration 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 interfaceEventSource
- Overrides:
getWaitBeforeNext
in classAbstractEventSource
-
hasNext
public boolean hasNext()- Specified by:
hasNext
in interfaceEventSource
- Returns:
- - false when this event source will return no new events from calls to next
-
next
public edu.sc.seis.sod.model.event.CacheEvent[] next()- Specified by:
next
in interfaceEventSource
- Returns:
- - the next set of events. Events can be returned from this method multiple times
-
checkEvent
public boolean checkEvent(edu.sc.seis.sod.model.event.CacheEvent e)
-