MBeanOperationInfo Equals - Java javax.management

Java examples for javax.management:MBean

Description

MBeanOperationInfo Equals

Demo Code

/*******************************************************************************
 * Copyright (c) 2006 Jeff Mesnil//from  w  w w  . j  a v  a 2  s  .c  o m
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *    "Rob Stryker" <rob.stryker@redhat.com> - Initial implementation
 *******************************************************************************/
//package com.java2s;

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

public class Main {
    public static boolean operationEquals(MBeanOperationInfo one,
            MBeanOperationInfo two) {
        if (one == two)
            return true;
        return (one.getName().equals(two.getName())
                && one.getReturnType().equals(two.getReturnType())
                && one.getDescription().equals(two.getDescription())
                && one.getImpact() == two.getImpact() && infoArrayEquals(
                    one.getSignature(), two.getSignature()) /*&&
                                                            p.getDescriptor().equals(info.getDescriptor()*/);

    }

    public static boolean infoArrayEquals(MBeanParameterInfo[] a,
            MBeanParameterInfo[] a2) {
        if (a == a2)
            return true;
        if (a == null || a2 == null)
            return false;

        int length = a.length;
        if (a2.length != length)
            return false;

        for (int i = 0; i < length; i++) {
            MBeanParameterInfo o1 = a[i];
            MBeanParameterInfo o2 = a2[i];
            if (!(o1 == null ? o2 == null : paramEquals(o1, o2)))
                return false;
        }

        return true;
    }

    public static boolean paramEquals(MBeanParameterInfo o1,
            MBeanParameterInfo o2) {
        if (o1 == o2)
            return true;
        return (o1.getName().equals(o2.getName())
                && o1.getType().equals(o2.getType()) && safeEquals(
                    o1.getDescription(), o2.getDescription()) /*&&
                                                              o1.getDescriptor().equals(o2.getDescriptor())*/);
    }

    public static boolean safeEquals(Object o1, Object o2) {
        return o1 == o2 || !(o1 == null || o2 == null) || o1.equals(o2);
    }
}

Related Tutorials