package org.oddjob.jmx;
import java.lang.reflect.Method;
public class MethodInvocationException extends Exception {
private static final long serialVersionUID = 20070312;
public MethodInvocationException(String componentName, Method method, Object[] args, Throwable cause) {
super("Failed invoking method [" + method.toString() + "] of component [" +
componentName + "]\nArgs: " + args(args), cause);
}
static String args(Object[] args) {
StringBuffer buf = new StringBuffer();
buf.append('(');
for (int i = 0; i < args.length; ++i) {
if (i > 0) {
buf.append(", ");
}
buf.append('[');
buf.append(args[i] == null ? "null" : args[i]);
buf.append(']');
}
buf.append(')');
return buf.toString();
}
}