[jboss-cvs] jboss-profiler/java/src/expansion/org/jboss/profiler/exp/agent/interceptor ...
Takuro Okada
t2-okada at nri.co.jp
Mon Nov 13 02:11:04 EST 2006
User: tokada
Date: 06/11/13 02:11:03
Modified: java/src/expansion/org/jboss/profiler/exp/agent/interceptor
Tag: JBossProfiler_Expansion DriverWrapper.java
Log:
Corrected to be able to collect all parameters of the JDBC API method.
Revision Changes Path
No revision
No revision
1.1.2.3 +22 -14 jboss-profiler/java/src/expansion/org/jboss/profiler/exp/agent/interceptor/Attic/DriverWrapper.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: DriverWrapper.java
===================================================================
RCS file: /cvsroot/jboss/jboss-profiler/java/src/expansion/org/jboss/profiler/exp/agent/interceptor/Attic/DriverWrapper.java,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -b -r1.1.2.2 -r1.1.2.3
--- DriverWrapper.java 10 Nov 2006 09:13:11 -0000 1.1.2.2
+++ DriverWrapper.java 13 Nov 2006 07:11:03 -0000 1.1.2.3
@@ -28,6 +28,7 @@
import java.sql.Driver;
import java.sql.DriverPropertyInfo;
import java.sql.SQLException;
+import java.util.Arrays;
import java.util.Properties;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.LinkedBlockingQueue;
@@ -184,24 +185,31 @@
}
private void processCollection(MetricCollector collector, long threadId, Method method, Object[] args) {
+ String className = method.getDeclaringClass().getCanonicalName();
+ String methodName = method.getName();
+
StringBuilder sb = new StringBuilder();
- sb.append(method.getDeclaringClass().getCanonicalName());
+ sb.append(className);
sb.append(".");
- sb.append(method.getName());
- String methodExpression = sb.toString();
- collector.setOperationName(methodExpression);
-
- String query = null;
- if(method.getName().equals("execute") ||
- method.getName().equals("executeQuery") ||
- method.getName().equals("executeUpdate") ||
- method.getName().equals("prepareStatement") ||
- method.getName().equals("prepareCall")) {
+ sb.append(methodName);
+ collector.setOperationName(sb.toString());
+
+ String argumentsExpression = null;
if(args!=null && args.length>0) {
- query = (String)args[0];
+ StringBuilder arguments = new StringBuilder();
+ for(Object arg : args) {
+ if(!arg.getClass().isArray()) {
+ arguments.append(String.valueOf(arg));
+ }else {
+ arguments.append(Arrays.toString((Object[])arg));
}
+ arguments.append(", ");
}
- collector.setArguments(new Object[]{threadId, null, query});
+ arguments.delete(arguments.length()-2, arguments.length());
+ argumentsExpression = arguments.toString();
+ }
+
+ collector.setArguments(new Object[]{threadId, null, argumentsExpression});
try {
factory.submitCollector(collector);
More information about the jboss-cvs-commits
mailing list