diff options
Diffstat (limited to 'java/management')
3 files changed, 23 insertions, 61 deletions
diff --git a/java/management/common/src/main/java/management-common.bnd b/java/management/common/src/main/java/management-common.bnd index 5a6be6bb15..5ae9791299 100644 --- a/java/management/common/src/main/java/management-common.bnd +++ b/java/management/common/src/main/java/management-common.bnd @@ -17,7 +17,7 @@ # under the License. # -ver: 0.19.0 +ver: 0.21.0 Bundle-SymbolicName: qpid-management-common Bundle-Version: ${ver} diff --git a/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ConfigurationManagement.java b/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ConfigurationManagement.java deleted file mode 100644 index 4582dc4088..0000000000 --- a/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ConfigurationManagement.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -package org.apache.qpid.management.common.mbeans; - -import org.apache.qpid.management.common.mbeans.annotations.MBeanOperation; - -import javax.management.MBeanOperationInfo; - -public interface ConfigurationManagement -{ - - String TYPE = "ConfigurationManagement"; - - /** - * Reload the - * @throws ConfigurationException - */ - @MBeanOperation(name="reloadSecurityConfiguration", - description = "Force a reload of the security configuration sections", - impact = MBeanOperationInfo.ACTION) - void reloadSecurityConfiguration() throws Exception; - -} diff --git a/java/management/example/src/main/java/org/apache/qpid/example/jmxexample/AddQueue.java b/java/management/example/src/main/java/org/apache/qpid/example/jmxexample/AddQueue.java index b858742c4e..f82408bd27 100644 --- a/java/management/example/src/main/java/org/apache/qpid/example/jmxexample/AddQueue.java +++ b/java/management/example/src/main/java/org/apache/qpid/example/jmxexample/AddQueue.java @@ -36,15 +36,14 @@ import org.apache.qpid.management.common.mbeans.ManagedExchange; public class AddQueue { - public static void main(String[] args) { //Example: add 'newqueue' to the 'test' virtualhost and bind to the 'amq.direct' exchange //TODO: take these parameters as arguments - + addQueue("test", "amq.direct", "newqueue"); } - + private static JMXConnector getJMXConnection() throws Exception { //TODO: Take these parameters as main+method arguments @@ -52,52 +51,55 @@ public class AddQueue int port = 8999; String username = "admin"; String password = "admin"; - + Map<String, Object> env = new HashMap<String, Object>(); JMXServiceURL jmxUrl = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://" + host + ":" + port + "/jmxrmi"); //Add user credential's to environment map for RMIConnector startup. env.put(JMXConnector.CREDENTIALS, new String[] {username,password}); - + return JMXConnectorFactory.connect(jmxUrl, env); } - - public static boolean addQueue(String virHost, String exchName, String queueName) { + public static boolean addQueue(String virHost, String exchName, String queueName) + { JMXConnector jmxc = null; try { jmxc = getJMXConnection(); - + MBeanServerConnection mbsc = jmxc.getMBeanServerConnection(); ObjectName hostManagerObjectName = new ObjectName( "org.apache.qpid:" + "type=VirtualHost.VirtualHostManager," + - "VirtualHost=" + virHost + ",*"); + "VirtualHost=" + ObjectName.quote(virHost) + ",*"); Set<ObjectName> vhostManagers = mbsc.queryNames(hostManagerObjectName, null); - + if(vhostManagers.size() == 0) { + System.out.println("VirtualHostManager MBean wasnt found: " + virHost); + //The vhostManager MBean wasnt found, cant procede return false; } - + ManagedBroker vhostManager = (ManagedBroker) MBeanServerInvocationHandler.newProxyInstance( mbsc, (ObjectName) vhostManagers.toArray()[0], ManagedBroker.class, false); ObjectName customExchangeObjectName = new ObjectName( "org.apache.qpid:" + "type=VirtualHost.Exchange," + - "VirtualHost=" + virHost + "," + - "name=" + exchName + "," + - "ExchangeType=direct,*"); + "VirtualHost=" + ObjectName.quote(virHost) + "," + + "name=" + ObjectName.quote(exchName) + ",*"); Set<ObjectName> exchanges = mbsc.queryNames(customExchangeObjectName, null); - + if(exchanges.size() == 0) { + System.out.println("Exchange wasnt found: " + exchName); + //The exchange doesnt exist, cant procede. return false; } @@ -105,12 +107,14 @@ public class AddQueue //create the MBean proxy ManagedExchange managedExchange = (ManagedExchange) MBeanServerInvocationHandler.newProxyInstance( mbsc, (ObjectName) exchanges.toArray()[0], ManagedExchange.class, false); - + try { //create the new durable queue and bind it. vhostManager.createNewQueue(queueName, null, true); + System.out.println("Created queue: " + queueName); managedExchange.createNewBinding(queueName,queueName); + System.out.println("Bound queue to exchange: "+ exchName); } catch (Exception e) { @@ -126,7 +130,7 @@ public class AddQueue { System.out.println("Could not add queue due to error :" + e.getMessage()); e.printStackTrace(); - } + } finally { if(jmxc != null) @@ -141,9 +145,8 @@ public class AddQueue } } } - + return false; - } } |