org.opennms.netmgt.config
Class DiscoveryConfigFactory

java.lang.Object
  extended by org.opennms.netmgt.config.DiscoveryConfigFactory

public final class DiscoveryConfigFactory
extends Object

This is the singleton class used to load the configuration for the OpenNMS Discovery service from the discovery-configuration xml file. Note: Users of this class should make sure the init() is called before calling any other method to ensure the config is loaded before accessing other convenience methods.

Author:
Mike Davidson , OpenNMS

Field Summary
static char COMMENT_CHAR
          Constant COMMENT_CHAR='#'
static String COMMENT_STR
          Constant COMMENT_STR="#"
 
Method Summary
static boolean addToSpecificsFromURL(List<IPPollAddress> specifics, InputStream is, long timeout, int retries)
          addToSpecificsFromURL
static boolean addToSpecificsFromURL(List<IPPollAddress> specifics, String url, long timeout, int retries)
           The file URL is read and a 'specific IP' is added for each entry in this file.
 DiscoveryConfiguration getConfiguration()
          Return the discovery configuration object.
 Iterable<IPPollAddress> getConfiguredAddresses()
          getConfiguredAddresses
 Iterator<IPPollAddress> getExcludingInterator(Iterator<IPPollAddress> it)
          getExcludingInterator
 long getInitialSleepTime()
          getInitialSleepTime
static DiscoveryConfigFactory getInstance()
          Return the singleton instance of this factory.
 int getIntraPacketDelay()
          getIntraPacketDelay
 List<IPPollRange> getRanges()
          getRanges
 long getRestartSleepTime()
          getRestartSleepTime
 List<IPPollAddress> getSpecifics()
          getSpecifics
 List<IPPollAddress> getURLSpecifics()
          getURLSpecifics
static void init()
          Load the config from the default config file and create the singleton instance of this factory.
 boolean isExcluded(InetAddress address)
          isExcluded
static void reload()
          Reload the config from the default config file
 void saveConfiguration(DiscoveryConfiguration configuration)
          saveConfiguration
protected  void saveXml(String xml)
          saveXml
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COMMENT_STR

public static final String COMMENT_STR
Constant COMMENT_STR="#"

See Also:
Constant Field Values

COMMENT_CHAR

public static final char COMMENT_CHAR
Constant COMMENT_CHAR='#'

See Also:
Constant Field Values
Method Detail

init

public static void init()
                 throws IOException,
                        org.exolab.castor.xml.MarshalException,
                        org.exolab.castor.xml.ValidationException
Load the config from the default config file and create the singleton instance of this factory.

Throws:
IOException - Thrown if the specified config file cannot be read
org.exolab.castor.xml.MarshalException - Thrown if the file does not conform to the schema.
org.exolab.castor.xml.ValidationException - Thrown if the contents do not match the required schema.
IOException - if any.
org.exolab.castor.xml.MarshalException - if any.
org.exolab.castor.xml.ValidationException - if any.

reload

public static void reload()
                   throws IOException,
                          org.exolab.castor.xml.MarshalException,
                          org.exolab.castor.xml.ValidationException
Reload the config from the default config file

Throws:
IOException - Thrown if the specified config file cannot be read/loaded
org.exolab.castor.xml.MarshalException - Thrown if the file does not conform to the schema.
org.exolab.castor.xml.ValidationException - Thrown if the contents do not match the required schema.
IOException - if any.
org.exolab.castor.xml.MarshalException - if any.
org.exolab.castor.xml.ValidationException - if any.

getInstance

public static DiscoveryConfigFactory getInstance()
Return the singleton instance of this factory.

Returns:
The current factory instance.
Throws:
IllegalStateException - Thrown if the factory has not yet been initialized.

getConfiguration

public DiscoveryConfiguration getConfiguration()
Return the discovery configuration object.

Returns:
a DiscoveryConfiguration object.

saveXml

protected void saveXml(String xml)
                throws IOException

saveXml

Parameters:
xml - a String object.
Throws:
IOException - if any.

saveConfiguration

public void saveConfiguration(DiscoveryConfiguration configuration)
                       throws org.exolab.castor.xml.MarshalException,
                              org.exolab.castor.xml.ValidationException,
                              IOException

saveConfiguration

Parameters:
configuration - a DiscoveryConfiguration object.
Throws:
org.exolab.castor.xml.MarshalException - if any.
org.exolab.castor.xml.ValidationException - if any.
IOException - if any.

addToSpecificsFromURL

public static boolean addToSpecificsFromURL(List<IPPollAddress> specifics,
                                            String url,
                                            long timeout,
                                            int retries)
 The file URL is read and a 'specific IP' is added for each entry
  in this file. Each line in the URL file can be one of -
  <IP><space>#<comments>
  or
  <IP>
  or
  #<comments>

  Lines starting with a '#' are ignored and so are characters after
  a '<space>#' in a line.
 

Parameters:
specifics - the list to add to
url - the URL file
timeout - the timeout for all entries in this URL
retries - the retries for all entries in this URL
Returns:
a boolean.

addToSpecificsFromURL

public static boolean addToSpecificsFromURL(List<IPPollAddress> specifics,
                                            InputStream is,
                                            long timeout,
                                            int retries)
                                     throws IOException

addToSpecificsFromURL

Parameters:
specifics - a List object.
is - a InputStream object.
timeout - a long.
retries - a int.
Returns:
a boolean.
Throws:
IOException - if any.

getURLSpecifics

public List<IPPollAddress> getURLSpecifics()

getURLSpecifics

Returns:
a List object.

getRanges

public List<IPPollRange> getRanges()

getRanges

Returns:
a List object.

getSpecifics

public List<IPPollAddress> getSpecifics()

getSpecifics

Returns:
a List object.

isExcluded

public boolean isExcluded(InetAddress address)

isExcluded

Parameters:
address - a InetAddress object.
Returns:
a boolean.

getIntraPacketDelay

public int getIntraPacketDelay()

getIntraPacketDelay

Returns:
a int.

getExcludingInterator

public Iterator<IPPollAddress> getExcludingInterator(Iterator<IPPollAddress> it)

getExcludingInterator

Parameters:
it - a Iterator object.
Returns:
a Iterator object.

getConfiguredAddresses

public Iterable<IPPollAddress> getConfiguredAddresses()

getConfiguredAddresses

Returns:
a Iterable object.

getRestartSleepTime

public long getRestartSleepTime()

getRestartSleepTime

Returns:
a long.

getInitialSleepTime

public long getInitialSleepTime()

getInitialSleepTime

Returns:
a long.


Copyright © 2011. All Rights Reserved.