org.opennms.netmgt.config
Class ThresholdingConfigFactory

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

public final class ThresholdingConfigFactory
extends Object

This class is the main respository for thresholding configuration information used by the thresholding daemon.. When this class is loaded it reads the thresholding configuration into memory. 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

Constructor Summary
ThresholdingConfigFactory(Reader reader)
           
 
Method Summary
 Group getGroup(String groupName)
           
 Collection<String> getGroupNames()
           
static ThresholdingConfigFactory getInstance()
          Return the singleton instance of this factory.
 String getRrdRepository(String groupName)
          Retrieves the configured path to the RRD file repository for the specified thresholding group.
 Collection<Basethresholddef> getThresholds(String groupName)
          Retrieves a Collection object consisting of all the org.opennms.netmgt.config.Threshold objects which make up the specified thresholding group.
static void init()
          Load the config from the default config file and create the singleton instance of this factory.
static void reload()
          Reload the config from the default config file
 void saveCurrent()
          Saves the current in-memory configuration to disk and reloads
static void setInstance(ThresholdingConfigFactory instance)
           
 void update()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ThresholdingConfigFactory

public ThresholdingConfigFactory(Reader reader)
                          throws org.exolab.castor.xml.MarshalException,
                                 org.exolab.castor.xml.ValidationException
Throws:
org.exolab.castor.xml.MarshalException
org.exolab.castor.xml.ValidationException
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.

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.

getInstance

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

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

setInstance

public static void setInstance(ThresholdingConfigFactory instance)

getRrdRepository

public String getRrdRepository(String groupName)
Retrieves the configured path to the RRD file repository for the specified thresholding group.

Parameters:
groupName - Group name to lookup
Returns:
RRD repository path.
Throws:
IllegalArgumentException - if group name does not exist in the group map.

getGroup

public Group getGroup(String groupName)

getThresholds

public Collection<Basethresholddef> getThresholds(String groupName)
Retrieves a Collection object consisting of all the org.opennms.netmgt.config.Threshold objects which make up the specified thresholding group.

Parameters:
groupName - Group name to lookup
Returns:
Collection consisting of all the Threshold objects for the specified group..
Throws:
IllegalArgumentException - if group name does not exist in the group map.

getGroupNames

public Collection<String> getGroupNames()

saveCurrent

public void saveCurrent()
                 throws org.exolab.castor.xml.MarshalException,
                        IOException,
                        org.exolab.castor.xml.ValidationException
Saves the current in-memory configuration to disk and reloads

Throws:
org.exolab.castor.xml.MarshalException
IOException
org.exolab.castor.xml.ValidationException

update

public void update()
            throws IOException,
                   org.exolab.castor.xml.MarshalException,
                   org.exolab.castor.xml.ValidationException
Throws:
IOException
org.exolab.castor.xml.MarshalException
org.exolab.castor.xml.ValidationException


Copyright © 2009. All Rights Reserved.