You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by gn...@apache.org on 2006/02/06 13:51:41 UTC
svn commit: r375267 - in
/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi:
audit/ audit/jdbc/ container/ framework/ management/ nmr/ nmr/flow/
Author: gnodet
Date: Mon Feb 6 04:51:38 2006
New Revision: 375267
URL: http://svn.apache.org/viewcvs?rev=375267&view=rev
Log:
Refactor registration / unregistration of service mbeans.
Modified:
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/audit/AbstractAuditor.java
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/audit/jdbc/JdbcAuditor.java
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/container/EnvironmentContext.java
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/container/JBIContainer.java
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/AdminCommandsService.java
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/AutoDeploymentService.java
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/DeploymentService.java
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/InstallationService.java
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/Registry.java
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/management/BaseSystemService.java
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/management/ManagementContext.java
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/Broker.java
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/AbstractFlow.java
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/audit/AbstractAuditor.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/audit/AbstractAuditor.java?rev=375267&r1=375266&r2=375267&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/audit/AbstractAuditor.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/audit/AbstractAuditor.java Mon Feb 6 04:51:38 2006
@@ -41,7 +41,6 @@
protected final Log log = LogFactory.getLog(getClass());
- protected JBIContainer container;
private boolean asContainerListener = true;
public JBIContainer getContainer() {
@@ -50,6 +49,10 @@
public void setContainer(JBIContainer container) {
this.container = container;
+ }
+
+ protected Class getServiceMBean() {
+ return AuditorMBean.class;
}
/* (non-Javadoc)
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/audit/jdbc/JdbcAuditor.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/audit/jdbc/JdbcAuditor.java?rev=375267&r1=375266&r2=375267&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/audit/jdbc/JdbcAuditor.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/audit/jdbc/JdbcAuditor.java Mon Feb 6 04:51:38 2006
@@ -92,14 +92,11 @@
} finally {
is.close();
}
+ platform.createTables(database, false, true);
+ init(getContainer());
start();
- container.getManagementContext().registerSystemService(this, AuditorMBean.class);
}
- public void doStart() throws javax.jbi.JBIException {
- platform.createTables(database, false, true);
- }
-
public void onMessageExchange(MessageExchange exchange) throws MessagingException {
if (exchange instanceof MessageExchangeImpl == false) {
throw new IllegalArgumentException("exchange should be a MessageExchangeImpl");
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/container/EnvironmentContext.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/container/EnvironmentContext.java?rev=375267&r1=375266&r2=375267&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/container/EnvironmentContext.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/container/EnvironmentContext.java Mon Feb 6 04:51:38 2006
@@ -58,7 +58,6 @@
private boolean dumpStats = false;
private Timer statsTimer;
private TimerTask timerTask;
- private JBIContainer container;
/**
@@ -153,10 +152,13 @@
* @exception javax.jbi.JBIException if the root directory informed could not be created or it is not a directory
*/
public void init(JBIContainer container, String rootDirPath) throws JBIException {
- this.container = container;
+ super.init(container);
jbiRootDir = new File(rootDirPath, container.getName());
buildDirectoryStructure();
- container.getManagementContext().registerSystemService(this, EnvironmentContextMBean.class);
+ }
+
+ protected Class getServiceMBean() {
+ return EnvironmentContextMBean.class;
}
/**
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/container/JBIContainer.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/container/JBIContainer.java?rev=375267&r1=375266&r2=375267&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/container/JBIContainer.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/container/JBIContainer.java Mon Feb 6 04:51:38 2006
@@ -55,7 +55,6 @@
import org.apache.servicemix.components.util.PojoSupport;
import org.apache.servicemix.jbi.framework.AutoDeploymentService;
import org.apache.servicemix.jbi.framework.ComponentContextImpl;
-import org.apache.servicemix.jbi.framework.ComponentMBean;
import org.apache.servicemix.jbi.framework.ComponentNameSpace;
import org.apache.servicemix.jbi.framework.DeploymentService;
import org.apache.servicemix.jbi.framework.InstallationService;
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/AdminCommandsService.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/AdminCommandsService.java?rev=375267&r1=375266&r2=375267&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/AdminCommandsService.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/AdminCommandsService.java Mon Feb 6 04:51:38 2006
@@ -38,26 +38,9 @@
public String getDescription() {
return "Admin Commands Service";
}
-
- /**
- * Initialize the Service
- *
- * @param container
- * @throws JBIException
- * @throws DeploymentException
- */
- public void init(JBIContainer container) throws JBIException {
- this.container = container;
- container.getManagementContext().registerSystemService(this, AdminCommandsServiceMBean.class);
- }
-
- public void start() throws javax.jbi.JBIException {
- super.start();
- }
-
- public void shutDown() throws JBIException {
- super.shutDown();
- container.getManagementContext().unregisterMBean(this);
+
+ protected Class getServiceMBean() {
+ return AdminCommandsServiceMBean.class;
}
/**
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/AutoDeploymentService.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/AutoDeploymentService.java?rev=375267&r1=375266&r2=375267&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/AutoDeploymentService.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/AutoDeploymentService.java Mon Feb 6 04:51:38 2006
@@ -62,7 +62,6 @@
private static final Log log = LogFactory.getLog(AutoDeploymentService.class);
private static final String MONITOR_STATE_FILE = ".state.xml";
- private JBIContainer container;
private EnvironmentContext environmentContext;
protected static final String DESCRIPTOR_FILE = "META-INF/jbi.xml";
private DeploymentService deploymentService;
@@ -157,8 +156,8 @@
* @param container
* @throws JBIException
*/
- public void init(JBIContainer container) throws JBIException{
- this.container=container;
+ public void init(JBIContainer container) throws JBIException {
+ super.init(container);
this.environmentContext=container.getEnvironmentContext();
this.installationService=container.getInstallationService();
this.deploymentService=container.getDeploymentService();
@@ -166,24 +165,11 @@
if(environmentContext.getTmpDir()!=null){
FileUtil.deleteFile(environmentContext.getTmpDir());
}
-
initializeFileMaps();
- container.getManagementContext().registerSystemService(this, AutoDeploymentServiceMBean.class);
}
-
- /**
- * Shut down the item. The releases resources, preparatory to uninstallation.
- *
- * @exception javax.jbi.JBIException
- * if the item fails to shut down.
- */
- public void shutDown() throws javax.jbi.JBIException{
- super.shutDown();
- stop();
- if(statsTimer!=null){
- statsTimer.cancel();
- }
- container.getManagementContext().unregisterMBean(this);
+
+ protected Class getServiceMBean() {
+ return AutoDeploymentServiceMBean.class;
}
/**
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/DeploymentService.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/DeploymentService.java?rev=375267&r1=375266&r2=375267&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/DeploymentService.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/DeploymentService.java Mon Feb 6 04:51:38 2006
@@ -53,8 +53,8 @@
* @version $Revision$
*/
public class DeploymentService extends BaseSystemService implements DeploymentServiceMBean {
+
private static final Log log = LogFactory.getLog(DeploymentService.class);
- private JBIContainer container;
private EnvironmentContext environmentContext;
@@ -66,19 +66,17 @@
* @throws DeploymentException
*/
public void init(JBIContainer container) throws JBIException {
- this.container = container;
+ super.init(container);
this.environmentContext = container.getEnvironmentContext();
- container.getManagementContext().registerSystemService(this, DeploymentServiceMBean.class);
+ }
+
+ protected Class getServiceMBean() {
+ return DeploymentServiceMBean.class;
}
public void start() throws javax.jbi.JBIException {
buildState();
super.start();
- }
-
- public void shutDown() throws JBIException {
- super.shutDown();
- container.getManagementContext().unregisterMBean(this);
}
/**
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/InstallationService.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/InstallationService.java?rev=375267&r1=375266&r2=375267&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/InstallationService.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/InstallationService.java Mon Feb 6 04:51:38 2006
@@ -54,7 +54,6 @@
*/
public class InstallationService extends BaseSystemService implements FrameworkInstallationService{
private static final Log log=LogFactory.getLog(InstallationService.class);
- private JBIContainer container;
private EnvironmentContext environmentContext;
private ManagementContext managementContext;
private ClassLoaderService classLoaderService=new ClassLoaderService();
@@ -270,12 +269,15 @@
* @throws JBIException
* @throws DeploymentException
*/
- public void init(JBIContainer container) throws JBIException{
- this.container=container;
- this.environmentContext=container.getEnvironmentContext();
- this.managementContext=container.getManagementContext();
+ public void init(JBIContainer container) throws JBIException {
+ super.init(container);
+ this.environmentContext = container.getEnvironmentContext();
+ this.managementContext = container.getManagementContext();
buildState();
- container.getManagementContext().registerSystemService(this,FrameworkInstallationService.class);
+ }
+
+ protected Class getServiceMBean() {
+ return FrameworkInstallationService.class;
}
/**
@@ -621,8 +623,4 @@
return context;
}
- public void shutDown() throws JBIException{
- super.shutDown();
- container.getManagementContext().unregisterMBean(this);
- }
}
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/Registry.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/Registry.java?rev=375267&r1=375266&r2=375267&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/Registry.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/framework/Registry.java Mon Feb 6 04:51:38 2006
@@ -50,7 +50,6 @@
*/
public class Registry extends BaseSystemService implements RegistryMBean {
- private JBIContainer container;
private ComponentRegistry componentRegistry;
private EndpointRegistry endpointRegistry;
private SubscriptionRegistry subscriptionRegistry;
@@ -83,10 +82,13 @@
* @throws JBIException
*/
public void init(JBIContainer container) throws JBIException {
- this.container = container;
+ super.init(container);
this.componentRegistry.setContainerName(container.getName());
this.subscriptionRegistry.init(this);
- container.getManagementContext().registerSystemService(this, RegistryMBean.class);
+ }
+
+ protected Class getServiceMBean() {
+ return RegistryMBean.class;
}
/**
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/management/BaseSystemService.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/management/BaseSystemService.java?rev=375267&r1=375266&r2=375267&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/management/BaseSystemService.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/management/BaseSystemService.java Mon Feb 6 04:51:38 2006
@@ -15,8 +15,14 @@
*/
package org.apache.servicemix.jbi.management;
+import javax.jbi.JBIException;
+
+import org.apache.servicemix.jbi.container.JBIContainer;
+
public abstract class BaseSystemService extends BaseLifeCycle {
+ protected JBIContainer container;
+
/**
* Get the name of the item
* @return the name
@@ -36,6 +42,22 @@
*/
public String getType() {
return "SystemService";
- }
+ }
+
+ public void init(JBIContainer container) throws JBIException {
+ this.container = container;
+ container.getManagementContext().registerSystemService(this, getServiceMBean());
+ }
+
+ public void shutDown() throws JBIException {
+ stop();
+ super.shutDown();
+ if (container != null && container.getManagementContext() != null) {
+ container.getManagementContext().unregisterMBean(this);
+ }
+ }
+
+ protected abstract Class getServiceMBean();
+
}
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/management/ManagementContext.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/management/ManagementContext.java?rev=375267&r1=375266&r2=375267&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/management/ManagementContext.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/management/ManagementContext.java Mon Feb 6 04:51:38 2006
@@ -49,7 +49,6 @@
public static final String DEFAULT_CONNECTOR_PATH = "/jmxrmi";
public static final int DEFAULT_CONNECTOR_PORT = 1099;
private final static Log log = LogFactory.getLog(ManagementContext.class);
- private JBIContainer container;
private Map beanMap = new ConcurrentHashMap();
protected Map systemServices = new ConcurrentHashMap();
private MBeanServerContext mbeanServerContext = new MBeanServerContext();
@@ -136,7 +135,6 @@
*/
public void init(JBIContainer container, MBeanServer server) throws JBIException {
- this.container = container;
//TODO - when activemq is up to date
//mbeanServerContext.setMBeanServer(server);
try{
@@ -145,7 +143,11 @@
log.error("Failed to start mbeanServerContext",e);
}
this.executors = Executors.newCachedThreadPool();
- registerSystemService(this, ManagementContextMBean.class);
+ super.init(container);
+ }
+
+ protected Class getServiceMBean() {
+ return ManagementContextMBean.class;
}
/**
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/Broker.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/Broker.java?rev=375267&r1=375266&r2=375267&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/Broker.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/Broker.java Mon Feb 6 04:51:38 2006
@@ -58,7 +58,7 @@
* @version $Revision$
*/
public class Broker extends BaseSystemService implements BrokerMBean {
- private JBIContainer container;
+
private Registry registry;
private String flowName = "seda";
private String subscriptionFlowName = null;
@@ -116,8 +116,8 @@
* @param container
* @throws JBIException
*/
- public void init(JBIContainer container) throws JBIException{
- this.container = container;
+ public void init(JBIContainer container) throws JBIException {
+ super.init(container);
this.workManager = container.getWorkManager();
this.registry = container.getRegistry();
if(this.flow == null){
@@ -133,9 +133,12 @@
}
subscriptionManager.init(this, registry);
if (flow != subscriptionManager.getFlow()) {
- subscriptionManager.getFlow().init(this, "subscription");
+ subscriptionManager.getFlow().init(this, "Subscription");
}
- container.getManagementContext().registerSystemService(this, BrokerMBean.class);
+ }
+
+ protected Class getServiceMBean() {
+ return BrokerMBean.class;
}
/**
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/AbstractFlow.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/AbstractFlow.java?rev=375267&r1=375266&r2=375267&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/AbstractFlow.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/AbstractFlow.java Mon Feb 6 04:51:38 2006
@@ -61,9 +61,6 @@
// register self with the management context
ObjectName objectName = broker.getManagementContext().createObjectName(this);
try {
- if (subType != null) {
- objectName = new ObjectName(objectName + ",subtype=" + subType);
- }
broker.getManagementContext().registerMBean(objectName, this, LifeCycleMBean.class);
}
catch (JMException e) {