Java MBean dumpOperations(MBeanOperationInfo[] operations)

Here you can find the source of dumpOperations(MBeanOperationInfo[] operations)

Description

dump Operations

License

Open Source License

Declaration

public static void dumpOperations(MBeanOperationInfo[] operations) 

Method Source Code

//package com.java2s;
/*/*  w ww.  j  av a 2s .co  m*/
 * JBoss, Home of Professional Open Source.
 * Copyright 2008, Red Hat Middleware LLC, and individual contributors
 * as indicated by the @author tags. See the copyright.txt file in the
 * distribution for a full listing of individual contributors.
 *
 * This is free software; you can redistribute it and/or modify it
 * under the terms of the GNU Lesser General Public License as
 * published by the Free Software Foundation; either version 2.1 of
 * the License, or (at your option) any later version.
 *
 * This software is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this software; if not, write to the Free
 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
 * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
 */

import javax.management.MBeanOperationInfo;
import javax.management.MBeanParameterInfo;

public class Main {
    public static void dumpOperations(MBeanOperationInfo[] operations) {
        System.out.println("");
        System.out.println("Operations:");
        for (int i = 0; i < operations.length; i++) {
            StringBuffer dump = new StringBuffer();
            MBeanOperationInfo operation = operations[i];
            dump.append("name=").append(operation.getName());
            dump.append(",impact=").append(decodeImpact(operation.getImpact()));
            dump.append(",returnType=").append(operation.getReturnType());
            dump.append(",signature=").append(makeSignatureString(operation.getSignature()));

            System.out.println(dump);
        }
    }

    public static String decodeImpact(int impact) {
        switch (impact) {
        case MBeanOperationInfo.ACTION:
            return "ACTION";
        case MBeanOperationInfo.ACTION_INFO:
            return "ACTION_INFO";
        case MBeanOperationInfo.INFO:
            return "INFO";
        case MBeanOperationInfo.UNKNOWN:
            return "UNKNOWN";
        }
        throw new IllegalArgumentException("unknown impact value:" + impact);
    }

    public static String makeSignatureString(MBeanParameterInfo[] info) {
        String[] sig = new String[info.length];
        for (int i = 0; i < info.length; i++) {
            sig[i] = info[i].getType();
        }
        return makeSignatureString(sig);
    }

    public static String makeSignatureString(String[] sig) {
        StringBuffer buf = new StringBuffer("(");
        for (int i = 0; i < sig.length; i++) {
            buf.append(sig[i]);
            if (i != sig.length - 1) {
                buf.append(",");
            }
        }
        buf.append(")");
        return buf.toString();
    }
}

Related

  1. createOpenMBeanAttributeInfo(final OpenType type, final MBeanAttributeInfo in, final String prefix)
  2. createProxy(final ObjectName objectName, final Class mbeanInterface, final MBeanServer mbeanServer)
  3. createTimerMBean(ObjectName name, MBeanServer server)
  4. dumpAttributes(MBeanAttributeInfo[] attributes)
  5. dumpConstructors(MBeanConstructorInfo[] constructors)
  6. findAttribute(MBeanAttributeInfo[] attributes, String name)
  7. findFirstMBeanServer()
  8. findMBean(MBeanServer mbs, ObjectName queryName)
  9. findMBeanServer(String agentId)