Methods Summary |
---|
public void | handleChange(com.sun.enterprise.admin.monitor.registry.MonitoredObjectType t, com.sun.enterprise.admin.monitor.registry.MonitoringLevel from, com.sun.enterprise.admin.monitor.registry.MonitoringLevel to)
if (isConnectionPoolType(t)) {
handleChange(from, to, t);
}
else {
successor.handleChange(t, from, to);
}
|
private void | handleChange(com.sun.enterprise.admin.monitor.registry.MonitoringLevel from, com.sun.enterprise.admin.monitor.registry.MonitoringLevel to, com.sun.enterprise.admin.monitor.registry.MonitoredObjectType t)
if (off2Low(from, to) || off2High(from, to)) {
notifyListeners(from, to, t);
registerMBeans(t);
}
if (low2Off(from, to) || high2Off(from, to)) {
unregisterMBeans(t);
notifyListeners(from, to, t);
}
if (low2High(from, to) || high2Low(from, to)) {
//currently do nothing.
}
|
private boolean | high2Low(com.sun.enterprise.admin.monitor.registry.MonitoringLevel from, com.sun.enterprise.admin.monitor.registry.MonitoringLevel to)
return ( from == MonitoringLevel.HIGH && to == MonitoringLevel.LOW );
|
private boolean | high2Off(com.sun.enterprise.admin.monitor.registry.MonitoringLevel from, com.sun.enterprise.admin.monitor.registry.MonitoringLevel to)
return ( from == MonitoringLevel.HIGH && to == MonitoringLevel.OFF );
|
private boolean | isConnectionPoolType(com.sun.enterprise.admin.monitor.registry.MonitoredObjectType t)
return ( t == MonitoredObjectType.CONNECTOR_CONN_POOL ||
t == MonitoredObjectType.JDBC_CONN_POOL ||
t == MonitoredObjectType.CONNECTOR_SERVICE ||
t == MonitoredObjectType.JMS_SERVICE);
|
private boolean | low2High(com.sun.enterprise.admin.monitor.registry.MonitoringLevel from, com.sun.enterprise.admin.monitor.registry.MonitoringLevel to)
return ( from == MonitoringLevel.LOW && to == MonitoringLevel.HIGH);
|
private boolean | low2Off(com.sun.enterprise.admin.monitor.registry.MonitoringLevel from, com.sun.enterprise.admin.monitor.registry.MonitoringLevel to)
return ( from == MonitoringLevel.LOW && to == MonitoringLevel.OFF);
|
private void | notifyListeners(com.sun.enterprise.admin.monitor.registry.MonitoringLevel from, com.sun.enterprise.admin.monitor.registry.MonitoringLevel to, com.sun.enterprise.admin.monitor.registry.MonitoredObjectType t)
logger.finer("DynamicReconfigurator: Now notifying the listeners for connection-pool stats --- from = " + from.toString() + " to = " + to.toString());
assert ( t == MonitoredObjectType.JDBC_CONN_POOL ||
t == MonitoredObjectType.CONNECTOR_CONN_POOL ||
t == MonitoredObjectType.CONNECTOR_SERVICE ||
t == MonitoredObjectType.JMS_SERVICE);
final Map l = (Map)listeners.get(t); // map of listeners;
if (l == null)
return; //do nothing
final Iterator it = l.keySet().iterator();
while (it.hasNext()) {
final MonitoringLevelListener ml = (MonitoringLevelListener)it.next();
ml.changeLevel(from, to, t);
}
|
private boolean | off2High(com.sun.enterprise.admin.monitor.registry.MonitoringLevel from, com.sun.enterprise.admin.monitor.registry.MonitoringLevel to)
return ( from == MonitoringLevel.OFF && to == MonitoringLevel.HIGH );
|
private boolean | off2Low(com.sun.enterprise.admin.monitor.registry.MonitoringLevel from, com.sun.enterprise.admin.monitor.registry.MonitoringLevel to)
return ( from == MonitoringLevel.OFF && to == MonitoringLevel.LOW );
|
private void | registerMBeans(com.sun.enterprise.admin.monitor.registry.MonitoredObjectType t)
final MonitoringRegistrationHelper registryImpl =
(MonitoringRegistrationHelper) MonitoringRegistrationHelper.getInstance();
//note that the above refers to the actual implementation rather than interface.
Iterator iter = null;
if(t == MonitoredObjectType.JDBC_CONN_POOL)
iter = registryImpl.getConnectionPoolNodes(t).iterator();
else
iter = registryImpl.getConnectorRelatedNodes().iterator();
while (iter.hasNext()) {
final StatsHolder c = (StatsHolder) iter.next();
c.registerMBean();
logger.finer("DynamicReconfigurator: Now Registering MBean for --- " + c.getName());
}
|
private void | unregisterMBeans(com.sun.enterprise.admin.monitor.registry.MonitoredObjectType t)
final MonitoringRegistrationHelper registryImpl =
(MonitoringRegistrationHelper) MonitoringRegistrationHelper.getInstance();
//note that the above refers to the actual implementation rather than interface.
//unregister MBeans for ALL the connection pools
Iterator iter = null;
if(t == MonitoredObjectType.JDBC_CONN_POOL)
iter = registryImpl.getConnectionPoolNodes(t).iterator();
else
iter = registryImpl.getConnectorRelatedNodes().iterator();
while (iter.hasNext()) {
final StatsHolder c = (StatsHolder) iter.next();
c.unregisterMBean();
logger.finer("DynamicReconfigurator: Now UnRegistering MBean for --- " + c.getName());
}
|