/** * Return name to use as jndi name. * Used to do a subset of the ObjectName fields but not just * let all through so its easy to just use the jndi name to * find mbean. * @param on ObjectName instance to work with. * @return Returns a compound name to use as jndi key. * @throws NullPointerException * @throws InvalidNameException */ public static CompoundName getCompoundName(final ObjectName on) throws NullPointerException, InvalidNameException { return getCompoundName(on.getCanonicalKeyPropertyListString()); }
/** * @param on ObjectName instance to work with. * @return A simple reference based on passed <code>on</code> */ public static Reference getReference(final ObjectName on) { Reference r = new Reference(String.class.getName()); Hashtable<String,String> ht = on.getKeyPropertyList(); r.add(new StringRefAddr("host", (String)ht.get("host"))); r.add(new StringRefAddr("name", (String)ht.get("name"))); // Put in a value to serve as a unique 'key'. r.add(new StringRefAddr("key", on.getCanonicalKeyPropertyListString())); return r; }
/** * Constructor for fetching the meta data of a specific MBean * * @param pConfig proxy target configuration or <code>null</code> if no proxy should be used * @param pObjectName name of MBean for which to fetch the meta data */ public J4pListRequest(J4pTargetConfig pConfig, ObjectName pObjectName) { super(J4pType.LIST,pConfig); pathElements = new ArrayList<String>(); pathElements.add(pObjectName.getDomain()); pathElements.add(pObjectName.getCanonicalKeyPropertyListString()); }
private static void appendDomainInfo(StringBuffer pRet, MBeanServer pServer, String pDomain) { try { pRet.append(" == ").append(pDomain).append("\n"); Set<ObjectInstance> beans = pServer.queryMBeans(new ObjectName(pDomain + ":*"),null); for (ObjectInstance o : beans) { String n = o.getObjectName().getCanonicalKeyPropertyListString(); pRet.append(" ").append(n).append("\n"); } } catch (MalformedObjectNameException e) { // Shouldnt happen pRet.append(" INTERNAL ERROR: ").append(e).append("\n"); } } }
private String getKeyPropertyString(ObjectName pName) { return useCanonicalName ? pName.getCanonicalKeyPropertyListString() : pName.getKeyPropertyListString(); }
public void printAllMatchedAttributes(String attrRegExp) throws Exception { err("List of the keys matching " + attrRegExp + " :"); Object val = null; Pattern p = Pattern.compile(attrRegExp); for (ObjectName oname : hadoopObjectNames) { err(">>>>>>>>jmx name: " + oname.getCanonicalKeyPropertyListString()); MBeanInfo mbinfo = mbsc.getMBeanInfo(oname); MBeanAttributeInfo[] mbinfos = mbinfo.getAttributes(); for (MBeanAttributeInfo mb : mbinfos) { if (p.matcher(mb.getName()).lookingAt()) { val = mbsc.getAttribute(oname, mb.getName()); System.out.format(format, mb.getName(), (val == null) ? "" : val.toString()); } } } }
/** * print all attributes' values */ public void printAllValues() throws Exception { err("List of all the available keys:"); Object val = null; for (ObjectName oname : hadoopObjectNames) { err(">>>>>>>>jmx name: " + oname.getCanonicalKeyPropertyListString()); MBeanInfo mbinfo = mbsc.getMBeanInfo(oname); MBeanAttributeInfo[] mbinfos = mbinfo.getAttributes(); for (MBeanAttributeInfo mb : mbinfos) { val = mbsc.getAttribute(oname, mb.getName()); System.out.format(format, mb.getName(), (val==null)?"":val.toString()); } } }
/** * Returns a String identifier for this bean that is qualified by the * deployment, and hence should be unique across deployments. Name is of the * form "ear=foo.ear,jar=foo.jar,name=Bar", where "Bar" is the value * returned by {@link #getEjbName()}. The "ear=foo.ear" portion is ommitted * if the bean is not packaged in an ear. */ public String getDeploymentPropertyListString() { return objectName.getCanonicalKeyPropertyListString(); }
private String findManagerTypeByObjectName(final ObjectName objectName) { return objectName.getCanonicalKeyPropertyListString(); }
private String getBaseName(ObjectName name) { StringBuilder builder = new StringBuilder(); builder.append(name.getDomain()).append(".").append(name.getCanonicalKeyPropertyListString()); return builder.toString(); }
private static void appendDomainInfo(StringBuffer pRet, MBeanServer pServer, String pDomain) { try { pRet.append(" == ").append(pDomain).append("\n"); Set<ObjectInstance> beans = pServer.queryMBeans(new ObjectName(pDomain + ":*"),null); for (ObjectInstance o : beans) { String n = o.getObjectName().getCanonicalKeyPropertyListString(); pRet.append(" ").append(n).append("\n"); } } catch (MalformedObjectNameException e) { // Shouldnt happen pRet.append(" INTERNAL ERROR: ").append(e).append("\n"); } } }
private void appendDomainInfo(StringBuffer pRet, MBeanServer pServer, String pDomain) { try { pRet.append(" == ").append(pDomain).append("\n"); Set<ObjectInstance> beans = pServer.queryMBeans(new ObjectName(pDomain + ":*"),null); for (ObjectInstance o : beans) { String n = o.getObjectName().getCanonicalKeyPropertyListString(); pRet.append(" ").append(n).append("\n"); } } catch (MalformedObjectNameException e) { // Shouldnt happen pRet.append(" INTERNAL ERROR: ").append(e).append("\n"); } }
private static void appendDomainInfo(StringBuffer pRet, MBeanServer pServer, String pDomain) { try { pRet.append(" == ").append(pDomain).append("\n"); Set<ObjectInstance> beans = pServer.queryMBeans(new ObjectName(pDomain + ":*"),null); for (ObjectInstance o : beans) { String n = o.getObjectName().getCanonicalKeyPropertyListString(); pRet.append(" ").append(n).append("\n"); } } catch (MalformedObjectNameException e) { // Shouldnt happen pRet.append(" INTERNAL ERROR: ").append(e).append("\n"); } } }
private String getKeyPropertyString(ObjectName pName) { return useCanonicalName ? pName.getCanonicalKeyPropertyListString() : pName.getKeyPropertyListString(); }
private String getKeyPropertyString(ObjectName pName) { return useCanonicalName ? pName.getCanonicalKeyPropertyListString() : pName.getKeyPropertyListString(); }
public boolean contains(ObjectName name) { // null safety check if (name == null) return false; // Determine the domain and retrieve its entries String domain = name.getDomain(); if (domain.length() == 0) domain = defaultDomain; String props = name.getCanonicalKeyPropertyListString(); Map mbeanMap = getMBeanMap(domain, false); // Return the result return (null != mbeanMap && mbeanMap.containsKey(props)); }
private void appendDomainInfo(StringBuffer pRet, MBeanServer pServer, String pDomain) { try { pRet.append(" == ").append(pDomain).append("\n"); Set beans = pServer.queryMBeans(new ObjectName(pDomain + ":*"),null); for (Iterator it = beans.iterator(); it.hasNext(); ) { ObjectInstance o = (ObjectInstance) it.next(); String n = o.getObjectName().getCanonicalKeyPropertyListString(); pRet.append(" ").append(n).append("\n"); } } catch (MalformedObjectNameException e) { // Shouldnt happen pRet.append(" INTERNAL ERROR: ").append(e).append("\n"); } }
private static void appendDomainInfo(StringBuffer pRet, MBeanServer pServer, String pDomain) { try { pRet.append(" == ").append(pDomain).append("\n"); Set<ObjectInstance> beans = pServer.queryMBeans(new ObjectName(pDomain + ":*"),null); for (ObjectInstance o : beans) { String n = o.getObjectName().getCanonicalKeyPropertyListString(); pRet.append(" ").append(n).append("\n"); } } catch (MalformedObjectNameException e) { // Shouldnt happen pRet.append(" INTERNAL ERROR: ").append(e).append("\n"); } } }
/** * @param on ObjectName instance to work with. * @return A simple reference based on passed <code>on</code> */ public static Reference getReference(final ObjectName on) { Reference r = new Reference(String.class.getName()); Hashtable<String,String> ht = on.getKeyPropertyList(); r.add(new StringRefAddr("host", (String)ht.get("host"))); r.add(new StringRefAddr("name", (String)ht.get("name"))); // Put in a value to serve as a unique 'key'. r.add(new StringRefAddr("key", on.getCanonicalKeyPropertyListString())); return r; }
/** * Builds up the base Result object */ private static Result getNewResultObject(MBeanInfo info, ObjectInstance oi, String attributeName, Query query) { Result r = new Result(attributeName); r.setQuery(query); r.setClassName(info.getClassName()); r.setTypeName(oi.getObjectName().getCanonicalKeyPropertyListString()); return r; }