Author: rmannibucau
Date: Thu Aug 29 11:40:34 2013
New Revision: 1518605
URL: http://svn.apache.org/r1518605
Log:
TOMEE-1024 @Description on parameters
Modified:
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java
Modified:
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java
URL:
http://svn.apache.org/viewvc/tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java?rev=1518605&r1=1518604&r2=1518605&view=diff
==============================================================================
---
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java
(original)
+++
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java
Thu Aug 29 11:40:34 2013
@@ -16,7 +16,6 @@
*/
package org.apache.openejb.monitoring;
-import com.sun.jmx.mbeanserver.Introspector;
import org.apache.openejb.api.internal.Internal;
import org.apache.openejb.api.jmx.Description;
import org.apache.openejb.api.jmx.MBean;
@@ -228,22 +227,24 @@ public class DynamicMBeanWrapper impleme
}
private MBeanOperationInfo newMethodDescriptor(final String
operationDescr, final Method m) {
+ final MBeanOperationInfo jvmInfo = new
MBeanOperationInfo(operationDescr, m);
return new MBeanOperationInfo(
m.getName(),
operationDescr,
- methodSignature(m),
+ methodSignature(jvmInfo, m),
m.getReturnType().getName(),
MBeanOperationInfo.UNKNOWN,
- Introspector.descriptorForElement(m));
+ jvmInfo.getDescriptor()); // avoid to copy the logic
}
- private static MBeanParameterInfo[] methodSignature(final Method method) {
+ private static MBeanParameterInfo[] methodSignature(final
MBeanOperationInfo jvmInfo, final Method method) {
final Class<?>[] classes = method.getParameterTypes();
final Annotation[][] annots = method.getParameterAnnotations();
- return parameters(classes, annots);
+ return parameters(jvmInfo, classes, annots);
}
- static MBeanParameterInfo[] parameters(final Class<?>[] classes,
+ static MBeanParameterInfo[] parameters(final MBeanOperationInfo jvmInfo,
+ final Class<?>[] classes,
final Annotation[][] annots) {
final MBeanParameterInfo[] params =
new MBeanParameterInfo[classes.length];
@@ -251,7 +252,7 @@ public class DynamicMBeanWrapper impleme
String desc = "";
for (int i = 0; i < classes.length; i++) {
- final Descriptor d =
Introspector.descriptorForAnnotations(annots[i]);
+ final Descriptor d = jvmInfo.getSignature()[i].getDescriptor();
final String pn = "arg" + i;
for (final Annotation a : annots[i]) {
final Class<? extends Annotation> type = a.annotationType();