Class XADataSourceFactory


  • public abstract class XADataSourceFactory
    extends java.lang.Object

    This is the singleton class used to load the OpenNMS database configuration from the opennms-database.xml. This provides convenience methods to create database connections to the database configured in this default xml

    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:
    Brian Weaver
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static void close()
      close
      static javax.sql.XADataSource getInstance()
      Return the singleton instance of this factory.
      static javax.sql.XADataSource getInstance​(java.lang.String name)
      getInstance
      static javax.sql.XADataSource getXADataSource()
      Return the datasource configured for the database
      static javax.sql.XADataSource getXADataSource​(java.lang.String dsName)
      getDataSource
      static void init​(java.lang.String dsName)
      init
      static void setDataSourceConfigurationFactory​(DataSourceConfigurationFactory factory)  
      static void setInstance​(java.lang.String dsName, javax.sql.XADataSource singleton)
      setInstance
      static void setInstance​(javax.sql.XADataSource ds)
      setInstance
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • XADataSourceFactory

        public XADataSourceFactory()
    • Method Detail

      • init

        public static void init​(java.lang.String dsName)

        init

        Parameters:
        dsName - a String object.
      • getInstance

        public static javax.sql.XADataSource getInstance()

        Return the singleton instance of this factory. This is the instance of the factory that was last created when the init or reload method was invoked. The instance will not change unless a reload method is invoked.

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

        public static javax.sql.XADataSource getInstance​(java.lang.String name)

        getInstance

        Parameters:
        name - a String object.
        Returns:
        a DataSource object.
      • setInstance

        public static void setInstance​(javax.sql.XADataSource ds)

        setInstance

        Parameters:
        ds - a DataSource object.
      • setInstance

        public static void setInstance​(java.lang.String dsName,
                                       javax.sql.XADataSource singleton)

        setInstance

        Parameters:
        dsName - a String object.
        singleton - a DataSource object.
      • getXADataSource

        public static javax.sql.XADataSource getXADataSource()
        Return the datasource configured for the database
        Returns:
        the datasource configured for the database
      • getXADataSource

        public static javax.sql.XADataSource getXADataSource​(java.lang.String dsName)

        getDataSource

        Parameters:
        dsName - a String object.
        Returns:
        a DataSource object.
      • close

        public static void close()

        close

        Throws:
        java.sql.SQLException - if any.