/*
* @(#)MonitoringFactories.java 1.3 03/12/19
*
* Copyright 2004 Sun Microsystems, Inc. All rights reserved.
* SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*/
package com.sun.corba.se.spi.monitoring;
import com.sun.corba.se.impl.monitoring.MonitoredObjectFactoryImpl;
import com.sun.corba.se.impl.monitoring.MonitoredAttributeInfoFactoryImpl;
import com.sun.corba.se.impl.monitoring.MonitoringManagerFactoryImpl;
/**
* <p>
*
* @author Hemanth Puttaswamy
* </p>
* <p>
* This is used for getting the default factories for
* MonitoredObject, MonitoredAttributeInfo and MonitoringManager. We do not
* expect users to use the MonitoredAttributeInfo factory most of the time
* because the Info is automatically built by StringMonitoredAttributeBase
* and LongMonitoredAttributeBase.
* </p>
*/
public class MonitoringFactories {
///////////////////////////////////////
// attributes
private static final MonitoredObjectFactoryImpl monitoredObjectFactory =
new MonitoredObjectFactoryImpl( );
private static final MonitoredAttributeInfoFactoryImpl
monitoredAttributeInfoFactory =
new MonitoredAttributeInfoFactoryImpl( );
private static final MonitoringManagerFactoryImpl monitoringManagerFactory =
new MonitoringManagerFactoryImpl( );
///////////////////////////////////////
// operations
/**
* <p>
* Gets the MonitoredObjectFactory
* </p>
* <p>
*
* @return a MonitoredObjectFactory
* </p>
*/
public static MonitoredObjectFactory getMonitoredObjectFactory( ) {
return monitoredObjectFactory;
}
/**
* <p>
* Gets the MonitoredAttributeInfoFactory. The user is not expected to use this
* Factory, since the MonitoredAttributeInfo is internally created by
* StringMonitoredAttributeBase, LongMonitoredAttributeBase and
* StatisticMonitoredAttribute. If User wants to create a MonitoredAttribute
* of some other special type like a DoubleMonitoredAttribute, they can
* build a DoubleMonitoredAttributeBase like LongMonitoredAttributeBase
* and build a MonitoredAttributeInfo required by MonitoredAttributeBase
* internally by using this Factory.
* </p>
* <p>
*
* @return a MonitoredAttributeInfoFactory
* </p>
*/
public static MonitoredAttributeInfoFactory
getMonitoredAttributeInfoFactory( )
{
return monitoredAttributeInfoFactory;
}
/**
* <p>
* Gets the MonitoredManagerFactory. The user is not expected to use this
* Factory, since the ORB will be automatically initialized with the
* MonitoringManager.
*
* User can get hold of MonitoringManager associated with ORB by calling
* orb.getMonitoringManager( )
* </p>
* <p>
*
* @return a MonitoredManagerFactory
* </p>
*/
public static MonitoringManagerFactory getMonitoringManagerFactory( ) {
return monitoringManagerFactory;
}
}
|