You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by co...@apache.org on 2002/12/26 19:07:04 UTC
cvs commit: jakarta-commons/modeler/src/java/org/apache/commons/modeler/ant JmxInvoke.java
costin 2002/12/26 10:07:04
Modified: modeler/src/java/org/apache/commons/modeler/ant
JmxInvoke.java
Log:
Better names ( more consistent with jmx )
Add support for parameters for the <jmx-invoke> task.
Revision Changes Path
1.2 +23 -9 jakarta-commons/modeler/src/java/org/apache/commons/modeler/ant/JmxInvoke.java
Index: JmxInvoke.java
===================================================================
RCS file: /home/cvs/jakarta-commons/modeler/src/java/org/apache/commons/modeler/ant/JmxInvoke.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- JmxInvoke.java 12 Nov 2002 22:46:09 -0000 1.1
+++ JmxInvoke.java 26 Dec 2002 18:07:04 -0000 1.2
@@ -58,30 +58,30 @@
import javax.management.*;
import javax.management.MBeanServer;
import javax.management.ObjectName;
+import java.util.Vector;
/**
* Set mbean properties.
*
*/
public class JmxInvoke extends Task {
- String name;
+ String objectName;
String method;
+ Vector args;
public JmxInvoke() {
}
-
- public void setName(String name) {
- this.name = name;
+ public void setObjectName(String name) {
+ this.objectName = name;
}
- public void setMethod(String method) {
+ public void setOperation(String method) {
this.method = method;
}
-
public void execute() {
try {
MBeanServer server=(MBeanServer)project.getReference("jmx.server");
@@ -96,10 +96,24 @@
project.addReference("jmx.server", server);
}
- ObjectName oname=new ObjectName(name);
-
- server.invoke(oname, method, null, null);
+ ObjectName oname=new ObjectName(objectName);
+ if( args==null ) {
+ server.invoke(oname, method, null, null);
+ } else {
+ // XXX Use the loader ref, if any
+ Object argsA[]=new Object[ args.size()];
+ String sigA[]=new String[args.size()];
+ for( int i=0; i<args.size(); i++ ) {
+ Arg arg=(Arg)args.elementAt(i);
+ if( arg.type==null )
+ arg.type="java.lang.String";
+ sigA[i]=arg.getType();
+ argsA[i]=arg.getValue();
+ // XXX Deal with not string types - IntrospectionUtils
+ }
+ server.invoke(oname, method, argsA, sigA);
+ }
} catch(Exception ex) {
ex.printStackTrace();
}
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>