Author: alessio.soldano(a)jboss.com
Date: 2007-12-17 05:39:26 -0500 (Mon, 17 Dec 2007)
New Revision: 5327
Modified:
framework/branches/asoldano/trunk/src/main/java/org/jboss/wsf/framework/deployment/EndpointRecordProcessorDeploymentAspect.java
framework/branches/asoldano/trunk/src/main/java/org/jboss/wsf/framework/management/ManagedEndpoint.java
Log:
Unregister processors during undeploy and whenever new processors are set
Modified:
framework/branches/asoldano/trunk/src/main/java/org/jboss/wsf/framework/deployment/EndpointRecordProcessorDeploymentAspect.java
===================================================================
---
framework/branches/asoldano/trunk/src/main/java/org/jboss/wsf/framework/deployment/EndpointRecordProcessorDeploymentAspect.java 2007-12-17
08:49:20 UTC (rev 5326)
+++
framework/branches/asoldano/trunk/src/main/java/org/jboss/wsf/framework/deployment/EndpointRecordProcessorDeploymentAspect.java 2007-12-17
10:39:26 UTC (rev 5327)
@@ -30,10 +30,10 @@
import javax.management.MBeanServer;
import org.jboss.wsf.common.ObjectNameFactory;
+import org.jboss.wsf.framework.management.recording.LogRecorder;
import org.jboss.wsf.framework.management.recording.ManagedRecordExtractor;
import org.jboss.wsf.framework.management.recording.ManagedRecordProcessor;
import org.jboss.wsf.framework.management.recording.MemoryBufferRecorder;
-import org.jboss.wsf.framework.management.recording.LogRecorder;
import org.jboss.wsf.framework.management.recording.RecordExtractor;
import org.jboss.wsf.spi.deployment.Deployment;
import org.jboss.wsf.spi.deployment.DeploymentAspect;
@@ -70,6 +70,19 @@
ep.setRecordProcessors(recordProcessorList);
}
}
+
+ @Override
+ public void destroy(Deployment dep)
+ {
+ for (Endpoint ep : dep.getService().getEndpoints())
+ {
+ List<RecordProcessor> processors = ep.getRecordProcessors();
+ for (RecordProcessor processor : processors)
+ {
+ this.unregisterRecordProcessor(processor, ep);
+ }
+ }
+ }
private void registerRecordProcessor(RecordProcessor processor, Endpoint ep)
{
@@ -88,6 +101,22 @@
}
}
+ private void unregisterRecordProcessor(RecordProcessor processor, Endpoint ep)
+ {
+ try
+ {
+ mbeanServer.unregisterMBean(ObjectNameFactory.create(ep.getName() +
",recordProcessor=" + processor.getName()));
+ if (processor instanceof RecordExtractor)
+ {
+ mbeanServer.unregisterMBean(ObjectNameFactory.create(ep.getName() +
",recordExtractor=" + processor.getName()));
+ }
+ }
+ catch (JMException ex)
+ {
+ log.error("Cannot unregister record processor with JMX server", ex);
+ }
+ }
+
public MBeanServer getMbeanServer()
{
return mbeanServer;
Modified:
framework/branches/asoldano/trunk/src/main/java/org/jboss/wsf/framework/management/ManagedEndpoint.java
===================================================================
---
framework/branches/asoldano/trunk/src/main/java/org/jboss/wsf/framework/management/ManagedEndpoint.java 2007-12-17
08:49:20 UTC (rev 5326)
+++
framework/branches/asoldano/trunk/src/main/java/org/jboss/wsf/framework/management/ManagedEndpoint.java 2007-12-17
10:39:26 UTC (rev 5327)
@@ -150,6 +150,23 @@
public void setRecordProcessors(List<RecordProcessor> processors)
{
+ //unregister current processors
+ for (RecordProcessor processor : processors)
+ {
+ try
+ {
+ mbeanServer.unregisterMBean(ObjectNameFactory.create(endpoint.getName() +
",recordProcessor=" + processor.getName()));
+ if (processor instanceof RecordExtractor)
+ {
+ mbeanServer.unregisterMBean(ObjectNameFactory.create(endpoint.getName() +
",recordExtractor=" + processor.getName()));
+ }
+ }
+ catch (JMException ex)
+ {
+ log.error("Cannot unregister record processor with JMX server",
ex);
+ }
+ }
+ //set and register the new processors
endpoint.setRecordProcessors(processors);
for (RecordProcessor processor : processors)
{
Show replies by date