edu.sc.seis.sod.source.event

## Class FdsnEvent

- java.lang.Object
- - edu.sc.seis.sod.source.AbstractSource
  - - edu.sc.seis.sod.source.event.AbstractEventSource
    - - edu.sc.seis.sod.source.event.FdsnEvent

- All Implemented Interfaces:
    EventSource, Source

      public class FdsnEvent
      extends AbstractEventSource
      implements EventSource

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `BAD_PARAM_MESSAGE`
    `static java.lang.String` | `HOST_ELEMENT`
    `static java.lang.String` | `PORT_ELEMENT`
    `static java.lang.String` | `URL_ELEMENT`

    - ### 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, NO_DNS, refreshInterval, sleepUntilTime`

    - ### Fields inherited from class edu.sc.seis.sod.source.AbstractSource

      `name, NAME_ELEMENT, RETRIES_ELEMENT`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `FdsnEvent(org.w3c.dom.Element config)`
    `FdsnEvent(edu.sc.seis.seisFile.fdsnws.FDSNEventQueryParams queryParams)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `getDescription()`
    `edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange` | `getEventTimeRange()`
    `java.lang.String` | `getUserAgent()`
    `boolean` | `hasNext()`
    `java.util.List<edu.sc.seis.fissuresUtil.cache.CacheEvent>` | `internalNext(edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange queryTime)`
    `edu.sc.seis.fissuresUtil.cache.CacheEvent[]` | `next()`
    `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
    `void` | `setUserAgent(java.lang.String userAgent)`

    - ### Methods inherited from class edu.sc.seis.sod.source.event.AbstractEventSource

      `caughtUpWithRealtime, decreaseQueryTimeWidth, getIncrement, getLag, getQueryEdge, getQueryStart, getQueryTime, getRefreshInterval, getSleepUntilTime, getWaitBeforeNext, increaseQueryTimeWidth, isEverCaughtUpToRealtime, setIncrement, setLag, setQueryEdge, updateQueryEdge`

    - ### Methods inherited from class edu.sc.seis.sod.source.AbstractSource

      `appendToName, getFissuresNamingService, getName, getRetries, getRetryStrategy, setRetryStrategy`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface edu.sc.seis.sod.source.event.EventSource

      `getWaitBeforeNext`

    - ### Methods inherited from interface edu.sc.seis.sod.source.Source

      `appendToName, getName, getRetries`

- - ### Field Detail

    - #### URL_ELEMENT

          public static final java.lang.String URL_ELEMENT

      See Also:
        Constant Field Values

    - #### HOST_ELEMENT

          public static final java.lang.String HOST_ELEMENT

      See Also:
        Constant Field Values

    - #### PORT_ELEMENT

          public static final java.lang.String PORT_ELEMENT

      See Also:
        Constant Field Values

    - #### BAD_PARAM_MESSAGE

          public static final java.lang.String BAD_PARAM_MESSAGE

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### FdsnEvent

          public FdsnEvent(edu.sc.seis.seisFile.fdsnws.FDSNEventQueryParams queryParams)

    - #### FdsnEvent

          public FdsnEvent(org.w3c.dom.Element config)
                    throws ConfigurationException

      Throws:
        `ConfigurationException`

  - ### Method Detail

    - #### hasNext

          public boolean hasNext()

      Specified by:
        `hasNext` in interface `EventSource`
      Returns:
        - false when this event source will return no new events from calls to next

    - #### next

          public edu.sc.seis.fissuresUtil.cache.CacheEvent[] next()

      Specified by:
        `next` in interface `EventSource`
      Returns:
        - the next set of events. Events can be returned from this method multiple times

    - #### internalNext

          public java.util.List<edu.sc.seis.fissuresUtil.cache.CacheEvent> internalNext(edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange queryTime)
                                                                                 throws edu.sc.seis.seisFile.SeisFileException,
                                                                                        javax.xml.stream.XMLStreamException

      Throws:
        `edu.sc.seis.seisFile.SeisFileException`
        `javax.xml.stream.XMLStreamException`

    - #### getEventTimeRange

          public edu.sc.seis.fissuresUtil.time.MicroSecondTimeRange getEventTimeRange()

      Specified by:
        `getEventTimeRange` in interface `EventSource`
      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.

    - #### getDescription

          public java.lang.String getDescription()

      Specified by:
        `getDescription` in interface `EventSource`

    - #### resetQueryTimeForLag

          protected edu.iris.Fissures.model.MicroSecondDate resetQueryTimeForLag()

      Description copied from class: `AbstractEventSource`
      Scoots the query time back by the event lag amount from the run properties to the query start time at the earliest
      Overrides:
        `resetQueryTimeForLag` in class `AbstractEventSource`

    - #### getUserAgent

          public java.lang.String getUserAgent()

    - #### setUserAgent

          public void setUserAgent(java.lang.String userAgent)