[Jboss-cvs] JBossAS SVN: r56190 - trunk/testsuite/src/main/org/jboss/test/util

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Aug 23 14:50:44 EDT 2006


Author: anil.saldhana at jboss.com
Date: 2006-08-23 14:50:43 -0400 (Wed, 23 Aug 2006)
New Revision: 56190

Added:
   trunk/testsuite/src/main/org/jboss/test/util/ServiceControllerUtil.java
Log:
utility class for ServiceController

Added: trunk/testsuite/src/main/org/jboss/test/util/ServiceControllerUtil.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/util/ServiceControllerUtil.java	2006-08-23 17:52:02 UTC (rev 56189)
+++ trunk/testsuite/src/main/org/jboss/test/util/ServiceControllerUtil.java	2006-08-23 18:50:43 UTC (rev 56190)
@@ -0,0 +1,84 @@
+/*
+ * JBoss, the OpenSource J2EE webOS
+ *
+ * Distributable under LGPL license.
+ * See terms of license at gnu.org.
+ */ 
+package org.jboss.test.util;
+
+import javax.management.MBeanServerConnection;
+import javax.management.MBeanServerInvocationHandler;
+import javax.management.ObjectName;
+
+import org.jboss.system.ServiceContext;
+import org.jboss.system.ServiceControllerMBean;
+
+/**
+ *  Utility class that can deal with the ServiceController to
+ *  start/stop/create/destroy a service
+ *  @author <a href="mailto:Anil.Saldhana at jboss.org">Anil Saldhana</a>
+ *  @version $Revision$
+ *  @since  Aug 23, 2006
+ */
+public class ServiceControllerUtil
+{
+   private ServiceControllerMBean scmb = null;
+   
+   public ServiceControllerUtil(MBeanServerConnection server)
+   {   
+      ObjectName so = ServiceControllerMBean.OBJECT_NAME;
+      scmb = (ServiceControllerMBean)
+      MBeanServerInvocationHandler.newProxyInstance(server, so,
+               ServiceControllerMBean.class, false);
+   }
+   
+   public void createAService(ObjectName serviceOName) throws Exception
+   { 
+      scmb.create(serviceOName); 
+   }
+   
+   public void startAService(ObjectName serviceName) throws Exception
+   { 
+      scmb.start(serviceName); 
+   }
+   
+   public void stopAService(ObjectName serviceName) throws Exception
+   {  
+      scmb.stop(serviceName); 
+   }
+   
+   public void destroyAService(ObjectName serviceName) throws Exception
+   { 
+      scmb.destroy(serviceName);
+   } 
+   
+   public boolean isStarted(ObjectName serviceName)
+   {
+      ServiceContext sc = scmb.getServiceContext(serviceName);
+      return sc.state == ServiceContext.RUNNING;
+   }
+   
+   public boolean isCreated(ObjectName serviceName)
+   {
+      ServiceContext sc = scmb.getServiceContext(serviceName);
+      return sc.state == ServiceContext.CREATED;
+   }
+   
+   public boolean isStopped(ObjectName serviceName)
+   {
+      ServiceContext sc = scmb.getServiceContext(serviceName);
+      return sc.state == ServiceContext.STOPPED;
+   }
+   
+   public boolean isDestroyed(ObjectName serviceName)
+   {
+      ServiceContext sc = scmb.getServiceContext(serviceName);
+      return sc.state == ServiceContext.DESTROYED;
+   }
+   
+   public boolean isFailed(ObjectName serviceName)
+   {
+      ServiceContext sc = scmb.getServiceContext(serviceName);
+      return sc.state == ServiceContext.FAILED;
+   }
+}




More information about the jboss-cvs-commits mailing list