[hornetq-commits] JBoss hornetq SVN: r9027 - in projects/jopr-plugin/trunk/src: resources/META-INF and 1 other directory.

do-not-reply at jboss.org do-not-reply at jboss.org
Wed Mar 31 10:07:10 EDT 2010


Author: ataylor
Date: 2010-03-31 10:07:09 -0400 (Wed, 31 Mar 2010)
New Revision: 9027

Modified:
   projects/jopr-plugin/trunk/src/main/java/org/jboss/as/integration/hornetq/jopr/JMSConstants.java
   projects/jopr-plugin/trunk/src/main/java/org/jboss/as/integration/hornetq/jopr/JMSManagerComponent.java
   projects/jopr-plugin/trunk/src/main/java/org/jboss/as/integration/hornetq/jopr/JMSResourceComponent.java
   projects/jopr-plugin/trunk/src/resources/META-INF/rhq-plugin.xml
Log:
added some jms manager ops

Modified: projects/jopr-plugin/trunk/src/main/java/org/jboss/as/integration/hornetq/jopr/JMSConstants.java
===================================================================
--- projects/jopr-plugin/trunk/src/main/java/org/jboss/as/integration/hornetq/jopr/JMSConstants.java	2010-03-31 13:57:54 UTC (rev 9026)
+++ projects/jopr-plugin/trunk/src/main/java/org/jboss/as/integration/hornetq/jopr/JMSConstants.java	2010-03-31 14:07:09 UTC (rev 9027)
@@ -40,4 +40,10 @@
 
       public static final ComponentType COMPONENT_TYPE = new ComponentType("JMSDestinationManage", "TopicManage");
    }
+
+   interface Manager
+   {
+      public static final String COMPONENT_NAME = "JMSServerMO";
+      public static final ComponentType COMPONENT_TYPE = new ComponentType("JMSManage", "ServerManage");
+   }
 }

Modified: projects/jopr-plugin/trunk/src/main/java/org/jboss/as/integration/hornetq/jopr/JMSManagerComponent.java
===================================================================
--- projects/jopr-plugin/trunk/src/main/java/org/jboss/as/integration/hornetq/jopr/JMSManagerComponent.java	2010-03-31 13:57:54 UTC (rev 9026)
+++ projects/jopr-plugin/trunk/src/main/java/org/jboss/as/integration/hornetq/jopr/JMSManagerComponent.java	2010-03-31 14:07:09 UTC (rev 9027)
@@ -36,8 +36,8 @@
 import org.rhq.core.domain.measurement.MeasurementReport;
 import org.rhq.core.domain.measurement.MeasurementScheduleRequest;
 import org.rhq.core.domain.resource.CreateResourceStatus;
+import org.rhq.core.pluginapi.configuration.ConfigurationUpdateReport;
 import org.rhq.core.pluginapi.inventory.*;
-import org.rhq.core.pluginapi.measurement.MeasurementFacet;
 
 import java.lang.reflect.Method;
 import java.util.List;
@@ -49,10 +49,8 @@
  * @author <a href="mailto:andy.taylor at jboss.org">Andy Taylor</a>
  *         Created 11-Mar-2010
  */
-public class JMSManagerComponent implements ResourceComponent, CreateChildResourceFacet, MeasurementFacet, JMSComponent
+public class JMSManagerComponent extends JMSResourceComponent implements ResourceComponent, CreateChildResourceFacet, JMSComponent
 {
-   private ResourceContext resourceContext;
-
    public void getValues(MeasurementReport measurementReport, Set<MeasurementScheduleRequest> measurementScheduleRequests) throws Exception
    {
 
@@ -172,6 +170,19 @@
       return createResourceReport;
    }
 
+
+   public void start(ResourceContext resourceContext) throws InvalidPluginConfigurationException, Exception
+   {
+      this.resourceContext = resourceContext;
+
+      jmsComponent = this;
+   }
+
+   public void stop()
+   {
+      this.resourceContext = null;
+   }
+
    private void createConnectionFactory(CreateResourceReport createResourceReport, ManagementView managementView, String name,String liveTransportClassNames, String liveTransportParams, String backupTransportClassNames, String backupTransportParams,  String bindings, String discoveryAddress, int discoveryPort, long discoveryRefreshTimeout, String clientId, int dupsOkBatchSize, int transactionBatchSize, long clientFailureCheckPeriod, long connectionTTL, long callTimeout, int consumerWindowSize, int confirmationWindowSize, int producerMaxRate, int producerWindowSize, boolean cacheLargeMessageClient, int minLargeMessageSize, boolean blockOnNonDurableSend, boolean blockOnAcknowledge, boolean blockOnDurableSend, boolean autoGroup, boolean preAcknowledge, long maxRetryInterval, double retryIntervalMultiplier, int reconnectAttempts, boolean failoverOnShutdown, int scheduledThreadPoolMaxSize, int threadPoolMaxSize, String groupId, int initialMessagePacketSize, boolean useGlobalPool!
 s, long retryInterval, String connectionLoadBalancingPolicyClassName)
          throws Exception
    {
@@ -284,17 +295,6 @@
       createResourceReport.setResourceName("jms.topic." + name);
    }
 
-
-   public void start(ResourceContext resourceContext) throws InvalidPluginConfigurationException, Exception
-   {
-      this.resourceContext = resourceContext;
-   }
-
-   public void stop()
-   {
-      //To change body of implemented methods use File | Settings | File Templates.
-   }
-
    public AvailabilityType getAvailability()
    {
       return AvailabilityType.UP;
@@ -309,6 +309,59 @@
       return (ManagementView) m.invoke(conn);
    }
 
+   @Override
+   protected String getInvokeOperationSubscriptionMessage()
+   {
+      return null;
+   }
+
+   @Override
+   protected String getInvokeOperationJMSMessage()
+   {
+      return null;
+   }
+
+   @Override
+   protected String getInvokeOperation()
+   {
+      return "invokeManagerOperation"; 
+   }
+
+   @Override
+   String getComponentName()
+   {
+      return JMSConstants.Manager.COMPONENT_NAME;
+   }
+
+   @Override
+   ComponentType getComponentType()
+   {
+      return JMSConstants.Manager.COMPONENT_TYPE;
+   }
+
+   @Override
+   String getConfigurationOperationName()
+   {
+      return null;
+   }
+
+   @Override
+   String getMeasurementsOperationName()
+   {
+      return null;
+   }
+
+   @Override
+   String getDeleteOperationName()
+   {
+      return null;
+   }
+
+   public void updateResourceConfiguration(ConfigurationUpdateReport configurationUpdateReport)
+   {
+      
+   }
+
    private void createRoles(CreateResourceReport configurationUpdateReport, String name, StringBuffer sendRoles, StringBuffer consumeRoles)
    {
       PropertyList propertyList = (PropertyList) configurationUpdateReport.getResourceConfiguration().get("roles");

Modified: projects/jopr-plugin/trunk/src/main/java/org/jboss/as/integration/hornetq/jopr/JMSResourceComponent.java
===================================================================
--- projects/jopr-plugin/trunk/src/main/java/org/jboss/as/integration/hornetq/jopr/JMSResourceComponent.java	2010-03-31 13:57:54 UTC (rev 9026)
+++ projects/jopr-plugin/trunk/src/main/java/org/jboss/as/integration/hornetq/jopr/JMSResourceComponent.java	2010-03-31 14:07:09 UTC (rev 9027)
@@ -57,7 +57,7 @@
 public abstract class JMSResourceComponent implements ResourceComponent, MeasurementFacet, OperationFacet, ConfigurationFacet, JMSComponent, DeleteResourceFacet
 {
    protected ResourceContext resourceContext;
-   private JMSComponent jmsComponent;
+   protected JMSComponent jmsComponent;
 
    public AvailabilityType getAvailability()
    {
@@ -294,6 +294,23 @@
          SimpleValueSupport valueSupport = (SimpleValueSupport) val;
          return new OperationResult(valueSupport.getValue().toString());
       }
+      else if(type.equalsIgnoreCase("String[]"))
+      {
+         OperationResult operationResult = new OperationResult();
+         Configuration c = operationResult.getComplexResults();
+         PropertyList property = new PropertyList("result");
+         ArrayValueSupport support = (ArrayValueSupport) val;
+         for(int i = 0; i < support.getLength(); i++)
+         {
+            org.rhq.core.domain.configuration.PropertyMap p1 = new org.rhq.core.domain.configuration.PropertyMap("element");
+            property.add(p1);
+            SimpleValueSupport svs = (SimpleValueSupport) ((ArrayValueSupport) val).getValue(i);
+            if(svs != null)
+                  p1.put(new PropertySimple("value",svs.getValue()));
+         }
+         c.put(property);
+         return operationResult;
+      }
       else if(type.equalsIgnoreCase("JMSMessage") || type.equalsIgnoreCase("SubscriptionInfo"))
       {
          OperationResult operationResult = new OperationResult();

Modified: projects/jopr-plugin/trunk/src/resources/META-INF/rhq-plugin.xml
===================================================================
--- projects/jopr-plugin/trunk/src/resources/META-INF/rhq-plugin.xml	2010-03-31 13:57:54 UTC (rev 9026)
+++ projects/jopr-plugin/trunk/src/resources/META-INF/rhq-plugin.xml	2010-03-31 14:07:09 UTC (rev 9027)
@@ -40,7 +40,55 @@
          <parent-resource-type name="JBossAS Server" plugin="JBossAS"/>
          <parent-resource-type name="JBossAS Server" plugin="JBossAS5"/>
       </runs-inside>
-
+      
+      <operation name="listRemoteAddresses,result=String[]" displayName="List Remote Addresses" description="List all remote addresses connected to HornetQ.">
+         <results>
+            <c:list-property name="result">
+                 <c:map-property required="false" name="element">
+                    <c:simple-property type="string" name="value"/>
+                 </c:map-property>
+             </c:list-property>
+         </results>
+      </operation>
+      <operation name="listRemoteAddresses2,operation=listRemoteAddresses,result=String[]" displayName="List Remote Addresses" description="List all remote addresses connected to HornetQ that match an ip address.">
+         <parameters>
+            <c:simple-property required="true" name="ipAddress" displayName="The IP Address"/>
+         </parameters>
+         <results>
+             <c:list-property name="result">
+                 <c:map-property required="false" name="element">
+                    <c:simple-property type="string" name="value"/>
+                 </c:map-property>
+             </c:list-property>
+         </results>
+      </operation>
+      <operation name="closeConnectionsForAddress" displayName="Close Connection" description="Closes all the connections for the given IP Address.">
+         <parameters>
+            <c:simple-property required="true" name="ipAddress" displayName="The IP Address"/>
+         </parameters>
+         <results><c:simple-property name="operationResult" type="boolean" description="The Outcome of closing the connection."/></results>
+      </operation>
+      <operation name="listConnectionIDs,result=String[]" displayName="List connections" description="List all the connection IDs.">
+         <results>
+             <c:list-property name="result">
+                 <c:map-property required="false" name="element">
+                    <c:simple-property type="string" name="value"/>
+                 </c:map-property>
+             </c:list-property>
+         </results>
+      </operation>
+      <operation name="listSessions,result=String[]" displayName="List sessions" description="List the sessions for the given connectionID.">
+         <parameters>
+            <c:simple-property required="true" name="connectionID" displayName="The Connection ID"/>
+         </parameters>
+         <results>
+             <c:list-property name="result">
+                 <c:map-property required="false" name="element">
+                    <c:simple-property type="string" name="value"/>
+                 </c:map-property>
+             </c:list-property>
+         </results>
+      </operation>
       <metric property="version"
                  displayName="HornetQ Version"
                  description="The HornetQ version"



More information about the hornetq-commits mailing list