edu.sc.seis.sod.source.network

## Class NetworkFinder

- java.lang.Object
- - edu.sc.seis.sod.source.AbstractSource
  - - edu.sc.seis.sod.source.network.AbstractNetworkSource
    - - edu.sc.seis.sod.source.network.NetworkFinder

- All Implemented Interfaces:
    NetworkSource, Source
  Direct Known Subclasses:
    FilterNetworkFinder

      public class NetworkFinder
      extends AbstractNetworkSource

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected java.util.List<edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess>` | `byNameCache`
    `protected java.lang.String` | `dns`
    `protected edu.sc.seis.fissuresUtil.cache.VestingNetworkDC` | `netDC`
    `protected java.util.List<edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess>` | `recentNetworksCache`

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

      `constraints, REFRESH_ELEMENT, refreshInterval`

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

      `name, NAME_ELEMENT, RETRIES_ELEMENT`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `NetworkFinder(org.w3c.dom.Element config)`
    `NetworkFinder(java.lang.String dns, java.lang.String name, int retries)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess` | `checkCache(edu.iris.Fissures.IfNetwork.NetworkId netId)`
    `protected java.util.List<edu.iris.Fissures.network.ChannelImpl>` | `checkStationTimeOverlap(edu.iris.Fissures.network.StationImpl station, edu.iris.Fissures.IfNetwork.Channel[] inChannels)`
    `java.util.List<edu.iris.Fissures.network.ChannelImpl>` | `getChannels(edu.iris.Fissures.network.StationImpl station)`
    `java.lang.String` | `getDNS()` returns the DNSName of the server.
    `edu.iris.Fissures.IfNetwork.Instrumentation` | `getInstrumentation(edu.iris.Fissures.network.ChannelImpl chan)`
    `edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess` | `getNetwork(edu.iris.Fissures.network.NetworkAttrImpl attr)`
    `edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess` | `getNetwork(edu.iris.Fissures.IfNetwork.NetworkId netId)`
    `java.util.List<edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess>` | `getNetworkByName(java.lang.String name)`
    `edu.sc.seis.fissuresUtil.cache.ProxyNetworkDC` | `getNetworkDC()`
    `java.util.List<? extends edu.iris.Fissures.network.NetworkAttrImpl>` | `getNetworks()`
    `java.util.List<edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess>` | `getNetworksInternal()`
    `edu.iris.Fissures.model.QuantityImpl` | `getSensitivity(edu.iris.Fissures.network.ChannelImpl chan)`
    `java.util.List<edu.iris.Fissures.network.StationImpl>` | `getStations(edu.iris.Fissures.network.NetworkAttrImpl netId)`
    `void` | `reset()`

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

      `getRefreshInterval, setConstraints`

    - ### 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.network.NetworkSource

      `getRetries, getRetryStrategy`

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

      `appendToName, getName`

- - ### Field Detail

    - #### dns

          protected java.lang.String dns

    - #### recentNetworksCache

          protected java.util.List<edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess> recentNetworksCache

    - #### byNameCache

          protected java.util.List<edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess> byNameCache

    - #### netDC

          protected edu.sc.seis.fissuresUtil.cache.VestingNetworkDC netDC

  - ### Constructor Detail

    - #### NetworkFinder

          public NetworkFinder(java.lang.String dns,
                               java.lang.String name,
                               int retries)

    - #### NetworkFinder

          public NetworkFinder(org.w3c.dom.Element config)
                        throws java.lang.Exception

      Throws:
        `java.lang.Exception`

  - ### Method Detail

    - #### getNetworkDC

          public edu.sc.seis.fissuresUtil.cache.ProxyNetworkDC getNetworkDC()

    - #### getNetwork

          public edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess getNetwork(edu.iris.Fissures.network.NetworkAttrImpl attr)

    - #### getNetwork

          public edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess getNetwork(edu.iris.Fissures.IfNetwork.NetworkId netId)

    - #### getNetworkByName

          public java.util.List<edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess> getNetworkByName(java.lang.String name)
                                                                                             throws edu.iris.Fissures.IfNetwork.NetworkNotFound

      Throws:
        `edu.iris.Fissures.IfNetwork.NetworkNotFound`

    - #### getNetworks

          public java.util.List<? extends edu.iris.Fissures.network.NetworkAttrImpl> getNetworks()

    - #### getNetworksInternal

          public java.util.List<edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess> getNetworksInternal()

    - #### getStations

          public java.util.List<edu.iris.Fissures.network.StationImpl> getStations(edu.iris.Fissures.network.NetworkAttrImpl netId)

    - #### getChannels

          public java.util.List<edu.iris.Fissures.network.ChannelImpl> getChannels(edu.iris.Fissures.network.StationImpl station)

    - #### getInstrumentation

          public edu.iris.Fissures.IfNetwork.Instrumentation getInstrumentation(edu.iris.Fissures.network.ChannelImpl chan)
                                                                         throws edu.iris.Fissures.IfNetwork.ChannelNotFound,
                                                                                edu.sc.seis.fissuresUtil.sac.InvalidResponse

      Throws:
        `edu.iris.Fissures.IfNetwork.ChannelNotFound`
        `edu.sc.seis.fissuresUtil.sac.InvalidResponse`

    - #### getSensitivity

          public edu.iris.Fissures.model.QuantityImpl getSensitivity(edu.iris.Fissures.network.ChannelImpl chan)
                                                              throws edu.iris.Fissures.IfNetwork.ChannelNotFound,
                                                                     edu.sc.seis.fissuresUtil.sac.InvalidResponse

      Throws:
        `edu.iris.Fissures.IfNetwork.ChannelNotFound`
        `edu.sc.seis.fissuresUtil.sac.InvalidResponse`

    - #### getDNS

          public java.lang.String getDNS()

      returns the DNSName of the server. The context under which the objectName is registered in the CORBA naming service.
      Returns:
        a `String` value

    - #### checkStationTimeOverlap

          protected java.util.List<edu.iris.Fissures.network.ChannelImpl> checkStationTimeOverlap(edu.iris.Fissures.network.StationImpl station,
                                                                                                  edu.iris.Fissures.IfNetwork.Channel[] inChannels)

    - #### checkCache

          protected edu.sc.seis.fissuresUtil.cache.CacheNetworkAccess checkCache(edu.iris.Fissures.IfNetwork.NetworkId netId)

    - #### reset

          public void reset()