Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
/*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2000-2010 Oracle and/or its affiliates. All rights reserved.
*
* The contents of this file are subject to the terms of either the GNU
* General Public License Version 2 only ("GPL") or the Common Development
* and Distribution License("CDDL") (collectively, the "License"). You
* may not use this file except in compliance with the License. You can
* obtain a copy of the License at
* https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
* or packager/legal/LICENSE.txt. See the License for the specific
* language governing permissions and limitations under the License.
*
* When distributing the software, include this License Header Notice in each
* file and include the License file at packager/legal/LICENSE.txt.
*
* GPL Classpath Exception:
* Oracle designates this particular file as subject to the "Classpath"
* exception as provided by Oracle in the GPL Version 2 section of the License
* file that accompanied this code.
*
* Modifications:
* If applicable, add the following below the License Header, with the fields
* enclosed by brackets [] replaced by your own identifying information:
* "Portions Copyright [year] [name of copyright owner]"
*
* Contributor(s):
* If you wish your version of this file to be governed by only the CDDL or
* only the GPL Version 2, indicate your decision by adding "[Contributor]
* elects to include this software in this distribution under the [CDDL or GPL
* Version 2] license." If you don't indicate a single choice of license, a
* recipient has the option to distribute your version of this file under
* either the CDDL, the GPL Version 2 or to extend the choice of license to
* its licensees as provided above. However, if you add GPL Version 2 code
* and therefore, elected the GPL Version 2 license, then the option applies
* only if the new code is made subject to such option by the copyright
* holder.
*/
/*
* @(#)MQObjectName.java 1.14 07/02/07
*/
package com.sun.messaging.jms.management.server;
import javax.management.ObjectName;
import javax.management.MalformedObjectNameException;
/**
* Utility class for manipulating Message Queue MBean Object Names.
*/
public class MQObjectName {
/*
****************************
* Start of private constants
****************************
*/
/*
* Domain name for MQ MBeans
*/
private static final String MBEAN_DOMAIN_NAME = "com.sun.messaging.jms.server";
/*
* MBean names
*/
private static final String BROKER = "Broker";
private static final String SERVICE_MANAGER = "ServiceManager";
private static final String CONNECTION_MANAGER = "ConnectionManager";
private static final String DESTINATION_MANAGER = "DestinationManager";
private static final String CONSUMER_MANAGER = "ConsumerManager";
private static final String PRODUCER_MANAGER = "ProducerManager";
private static final String TRANSACTION_MANAGER = "TransactionManager";
private static final String SERVICE = "Service";
private static final String DESTINATION = "Destination";
private static final String CONNECTION = "Connection";
private static final String CLUSTER = "Cluster";
private static final String LOG = "Log";
private static final String JVM = "JVM";
/*
* Strings that represent 'partial' object names. The complete
* object name is created by appending additional name/value pairs.
* These constants are used by the utility methods in this class.
*/
/*
* These strings are used to specify (via the subtype key) if the object
* name is for a config or monitor MBean.
*/
private static final String SUBTYPE_SUFFIX_CONFIG = ",subtype=Config";
private static final String SUBTYPE_SUFFIX_MONITOR = ",subtype=Monitor";
/**
* The domain name and the type key property in the ObjectName for a
* ServiceConfig MBean. The unique ObjectName for a ServiceConfig MBean can be formed
* by appending this string with ",name=service name".
*/
private static final String SERVICE_CONFIG_DOMAIN_TYPE
= MBEAN_DOMAIN_NAME
+ ":type=" + SERVICE
+ SUBTYPE_SUFFIX_CONFIG;
/**
* The domain name and the type key property in the ObjectName for a
* DestinationConfig MBean. The unique ObjectName for a DestinationConfig MBean can
* be formed by appending this string with ",desttype=destination type,
* name=destination name".
*/
private static final String DESTINATION_CONFIG_DOMAIN_TYPE
= MBEAN_DOMAIN_NAME
+ ":type=" + DESTINATION
+ SUBTYPE_SUFFIX_CONFIG;
/**
* The domain name and the type key property in the ObjectName for a
* ConnectionConfig MBean. The unique ObjectName for a ConnectionConfig
* MBean can be formed by appending this string with
* ",id=connection id".
*/
private static final String CONNECTION_CONFIG_DOMAIN_TYPE
= MBEAN_DOMAIN_NAME
+ ":type=" + CONNECTION
+ SUBTYPE_SUFFIX_CONFIG;
/**
* The domain name and the type key property in the ObjectName for a
* ServiceMonitor MBean. The unique ObjectName for a ServiceMonitor MBean
* can be formed by appending this string with ",name=service name".
*/
private static final String SERVICE_MONITOR_DOMAIN_TYPE
= MBEAN_DOMAIN_NAME
+ ":type=" + SERVICE
+ SUBTYPE_SUFFIX_MONITOR;
/**
* The domain name and the type key property in the ObjectName for a
* DestinationMonitor MBean. The unique ObjectName for a DestinationMonitor
* MBean can be formed by appending this string with
* ",desttype=destination type, name=destination name".
*/
private static final String DESTINATION_MONITOR_DOMAIN_TYPE
= MBEAN_DOMAIN_NAME
+ ":type=" + DESTINATION
+ SUBTYPE_SUFFIX_MONITOR;
/**
* The domain name and the type key property in the ObjectName for a
* ConnectionMonitor MBean. The unique ObjectName for a ConnectionMonitor
* MBean can * be formed by appending this string with
* ",id=connection id".
*/
private static final String CONNECTION_MONITOR_DOMAIN_TYPE
= MBEAN_DOMAIN_NAME
+ ":type=" + CONNECTION
+ SUBTYPE_SUFFIX_MONITOR;
/*
**************************
* End of private constants
**************************
*/
/*
***************************
* Start of public constants
***************************
*/
/**
* String representation of the ObjectName for the Broker Config MBean.
*/
public static final String BROKER_CONFIG_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + BROKER
+ SUBTYPE_SUFFIX_CONFIG;
/**
* String representation of the ObjectName for the
* ConnectionManager Config MBean.
*/
public static final String CONNECTION_MANAGER_CONFIG_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + CONNECTION_MANAGER
+ SUBTYPE_SUFFIX_CONFIG;
/**
* String representation of the ObjectName for the
* ConsumerManager Config MBean.
*/
public static final String CONSUMER_MANAGER_CONFIG_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + CONSUMER_MANAGER
+ SUBTYPE_SUFFIX_CONFIG;
/**
* String representation of the ObjectName for the
* ServiceManager Config MBean.
*/
public static final String SERVICE_MANAGER_CONFIG_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + SERVICE_MANAGER
+ SUBTYPE_SUFFIX_CONFIG;
/**
* String representation of the ObjectName for the DestinationManager Config MBean.
*/
public static final String DESTINATION_MANAGER_CONFIG_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + DESTINATION_MANAGER
+ SUBTYPE_SUFFIX_CONFIG;
/**
* String representation of the ObjectName for the Cluster Config MBean.
*/
public static final String CLUSTER_CONFIG_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + CLUSTER
+ SUBTYPE_SUFFIX_CONFIG;
/**
* String representation of the ObjectName for the Log Config MBean.
*/
public static final String LOG_CONFIG_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + LOG
+ SUBTYPE_SUFFIX_CONFIG;
/**
* String representation of the ObjectName for the
* ProducerManager Config MBean.
*/
public static final String PRODUCER_MANAGER_CONFIG_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + PRODUCER_MANAGER
+ SUBTYPE_SUFFIX_CONFIG;
/**
* String representation of the ObjectName for the
* TransactionManager Config MBean.
*/
public static final String TRANSACTION_MANAGER_CONFIG_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + TRANSACTION_MANAGER
+ SUBTYPE_SUFFIX_CONFIG;
/**
* String representation of the ObjectName for the Broker Monitor MBean.
*/
public static final String BROKER_MONITOR_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + BROKER
+ SUBTYPE_SUFFIX_MONITOR;
/**
* String representation of the ObjectName for the ServiceManager
* Monitor MBean.
*/
public static final String SERVICE_MANAGER_MONITOR_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + SERVICE_MANAGER
+ SUBTYPE_SUFFIX_MONITOR;
/**
* String representation of the ObjectName for the DestinationManager
* Monitor MBean.
*/
public static final String DESTINATION_MANAGER_MONITOR_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + DESTINATION_MANAGER
+ SUBTYPE_SUFFIX_MONITOR;
/**
* String representation of the ObjectName for the TransactionManager
* Monitor MBean.
*/
public static final String TRANSACTION_MANAGER_MONITOR_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + TRANSACTION_MANAGER
+ SUBTYPE_SUFFIX_MONITOR;
/**
* String representation of the ObjectName for the ConnectionManager
* Monitor MBean.
*/
public static final String CONNECTION_MANAGER_MONITOR_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + CONNECTION_MANAGER
+ SUBTYPE_SUFFIX_MONITOR;
/**
* String representation of the ObjectName for the ConsumerManager
* Monitor MBean.
*/
public static final String CONSUMER_MANAGER_MONITOR_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + CONSUMER_MANAGER
+ SUBTYPE_SUFFIX_MONITOR;
/**
* String representation of the ObjectName for the ProducerManager
* Monitor MBean.
*/
public static final String PRODUCER_MANAGER_MONITOR_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + PRODUCER_MANAGER
+ SUBTYPE_SUFFIX_MONITOR;
/**
* String representation of the ObjectName for the JVM Monitor MBean.
*/
public static final String JVM_MONITOR_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + JVM
+ SUBTYPE_SUFFIX_MONITOR;
/**
* String representation of the ObjectName for the Cluster Monitor MBean.
*/
public static final String CLUSTER_MONITOR_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + CLUSTER
+ SUBTYPE_SUFFIX_MONITOR;
/**
* String representation of the ObjectName for the Log Monitor MBean.
*/
public static final String LOG_MONITOR_MBEAN_NAME
= MBEAN_DOMAIN_NAME
+ ":type=" + LOG
+ SUBTYPE_SUFFIX_MONITOR;
/*
*************************
* End of public constants
*************************
*/
private MQObjectName() {
}
/**
* Creates ObjectName for service configuration MBean.
*
* @param serviceName Name of service.
* @return ObjectName of Service MBean
*/
public static ObjectName createServiceConfig(String serviceName)
throws MalformedObjectNameException,
NullPointerException {
String s = SERVICE_CONFIG_DOMAIN_TYPE
+ ",name="
+ serviceName;
ObjectName o = new ObjectName(s);
return (o);
}
/**
* Creates ObjectName for service monitoring MBean.
*
* @param serviceName Name of service.
* @return ObjectName of Service MBean
*/
public static ObjectName createServiceMonitor(String serviceName)
throws MalformedObjectNameException,
NullPointerException {
String s = SERVICE_MONITOR_DOMAIN_TYPE
+ ",name="
+ serviceName;
ObjectName o = new ObjectName(s);
return (o);
}
/**
* Creates ObjectName for destination configuration MBean.
*
* @param destinationType Type of destination. One of
* DestinationType.TOPIC, DestinationType.QUEUE.
* @param destinationName Name of destination.
* @return ObjectName of service MBean
*/
public static ObjectName createDestinationConfig(String destinationType,
String destinationName)
throws MalformedObjectNameException,
NullPointerException {
String s = DESTINATION_CONFIG_DOMAIN_TYPE
+ ",desttype="
+ destinationType
+ ",name="
+ ObjectName.quote(destinationName);
ObjectName o = new ObjectName(s);
return (o);
}
/**
* Creates ObjectName for specified destination monitor MBean.
*
* @param destinationType Type of destination. One of
* DestinationType.TOPIC, DestinationType.QUEUE.
* @param destinationName Name of destination.
* @return ObjectName of DestinationMonitor MBean
*/
public static ObjectName createDestinationMonitor(String destinationType,
String destinationName)
throws MalformedObjectNameException,
NullPointerException {
String s = DESTINATION_MONITOR_DOMAIN_TYPE
+ ",desttype="
+ destinationType
+ ",name="
+ ObjectName.quote(destinationName);
ObjectName o = new ObjectName(s);
return (o);
}
/**
* Creates ObjectName for specified connection configuration MBean.
*
* @param id Connection ID
* @return ObjectName of ConnectionConfig MBean
*/
public static ObjectName createConnectionConfig(String id) {
String s = CONNECTION_CONFIG_DOMAIN_TYPE
+ ",id="
+ id;
ObjectName o = null;
try {
o = new ObjectName(s);
} catch (MalformedObjectNameException mfe) {
/*
* Should not get here
*/
throw new RuntimeException("Failed to create Message Queue object name",
mfe);
}
return (o);
}
/**
* Creates ObjectName for specified connection monitoring MBean.
*
* @param id Connection ID
* @return ObjectName of ConnectionMonitor MBean
*/
public static ObjectName createConnectionMonitor(String id) {
String s = CONNECTION_MONITOR_DOMAIN_TYPE
+ ",id="
+ id;
ObjectName o = null;
try {
o = new ObjectName(s);
} catch (MalformedObjectNameException mfe) {
/*
* Should not get here
*/
throw new RuntimeException("Failed to create Message Queue object name",
mfe);
}
return (o);
}
}