You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sirona.apache.org by ol...@apache.org on 2014/03/11 13:02:18 UTC
svn commit: r1576296 - in /incubator/sirona/trunk:
agent/javaagent/src/main/java/org/apache/sirona/javaagent/listener/
core/src/main/java/org/apache/sirona/tracking/
Author: olamy
Date: Tue Mar 11 12:02:18 2014
New Revision: 1576296
URL: http://svn.apache.org/r1576296
Log:
extract classes
Added:
incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/PathTrackingInformation.java (with props)
Modified:
incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/listener/PathTrackingInvocationListener.java
incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/listener/PathTrackingListener.java
incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/PathTracker.java
Modified: incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/listener/PathTrackingInvocationListener.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/listener/PathTrackingInvocationListener.java?rev=1576296&r1=1576295&r2=1576296&view=diff
==============================================================================
--- incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/listener/PathTrackingInvocationListener.java (original)
+++ incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/listener/PathTrackingInvocationListener.java Tue Mar 11 12:02:18 2014
@@ -16,9 +16,21 @@
*/
package org.apache.sirona.javaagent.listener;
+import org.apache.sirona.javaagent.AgentContext;
+import org.apache.sirona.tracking.PathTrackingInformation;
+
/**
- * @author Olivier Lamy
+ *
*/
public interface PathTrackingInvocationListener
{
+
+ void startPath( AgentContext agentContext, PathTrackingInformation pathTrackingInformation );
+
+ void enterMethod( AgentContext agentContext, PathTrackingInformation pathTrackingInformation );
+
+ void exitMethod( AgentContext agentContext, PathTrackingInformation pathTrackingInformation );
+
+ void endPath( AgentContext agentContext, PathTrackingInformation pathTrackingInformation );
+
}
Modified: incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/listener/PathTrackingListener.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/listener/PathTrackingListener.java?rev=1576296&r1=1576295&r2=1576296&view=diff
==============================================================================
--- incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/listener/PathTrackingListener.java (original)
+++ incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/listener/PathTrackingListener.java Tue Mar 11 12:02:18 2014
@@ -22,6 +22,7 @@ import org.apache.sirona.javaagent.Agent
import org.apache.sirona.javaagent.logging.SironaAgentLogging;
import org.apache.sirona.javaagent.spi.Order;
import org.apache.sirona.tracking.PathTracker;
+import org.apache.sirona.tracking.PathTrackingInformation;
@Order( 1 )
@AutoSet
@@ -53,9 +54,9 @@ public class PathTrackingListener
}
/**
- * executed before method called to configure the start {@link org.apache.sirona.tracking.PathTracker.PathTrackingInformation}
+ * executed before method called to configure the start {@link org.apache.sirona.tracking.PathTrackingInformation}
* and set various thread local variable as invocation level
- * will call {@link org.apache.sirona.tracking.PathTracker#start(org.apache.sirona.tracking.PathTracker.PathTrackingInformation)}
+ * will call {@link org.apache.sirona.tracking.PathTracker#start(org.apache.sirona.tracking.PathTrackingInformation)}
*
* @param context
*/
@@ -71,8 +72,8 @@ public class PathTrackingListener
String className = key.substring( 0, lastDot );
String methodName = key.substring( lastDot + 1, key.length() );
- final PathTracker.PathTrackingInformation pathTrackingInformation =
- new PathTracker.PathTrackingInformation( className, methodName );
+ final PathTrackingInformation pathTrackingInformation =
+ new PathTrackingInformation( className, methodName );
SironaAgentLogging.debug( "call PathTracker#start with {0}", pathTrackingInformation );
Modified: incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/PathTracker.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/PathTracker.java?rev=1576296&r1=1576295&r2=1576296&view=diff
==============================================================================
--- incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/PathTracker.java (original)
+++ incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/PathTracker.java Tue Mar 11 12:02:18 2014
@@ -59,7 +59,7 @@ public class PathTracker
private static boolean USE_SINGLE_STORE = Boolean.parseBoolean(
Configuration.getProperty( Configuration.CONFIG_PROPERTY_PREFIX + "pathtracking.singlestore", "false" ) );
- protected static ExecutorService executorService;
+ protected static ExecutorService EXECUTORSERVICE;
static
{
@@ -68,7 +68,7 @@ public class PathTracker
{
int threadsNumber =
Configuration.getInteger( Configuration.CONFIG_PROPERTY_PREFIX + "pathtracking.executors", 5 );
- executorService = Executors.newFixedThreadPool( threadsNumber );
+ EXECUTORSERVICE = Executors.newFixedThreadPool( threadsNumber );
}
}
@@ -100,83 +100,6 @@ public class PathTracker
THREAD_LOCAL.remove();
}
- public static class PathTrackingInformation
- {
- private String className;
-
- private String methodName;
-
- private PathTrackingInformation parent;
-
- private long start;
-
- private long end;
-
- private int level;
-
- public PathTrackingInformation( String className, String methodName )
- {
- this.className = className;
- this.methodName = methodName;
- }
-
- public String getClassName()
- {
- return className;
- }
-
- public String getMethodName()
- {
- return methodName;
- }
-
- public PathTrackingInformation getParent()
- {
- return parent;
- }
-
- public void setParent( PathTrackingInformation parent )
- {
- this.parent = parent;
- }
-
- public void setStart( final long start )
- {
- this.start = start;
- }
-
- public long getStart()
- {
- return start;
- }
-
- public long getEnd()
- {
- return end;
- }
-
- public void setEnd( final long end )
- {
- this.end = end;
- }
-
- public int getLevel()
- {
- return level;
- }
-
- public void setLevel( final int level )
- {
- this.level = level;
- }
-
- @Override
- public String toString()
- {
- return "PathTrackingInformation{className='" + className + "', methodName='" + methodName + "\', parent="
- + parent + '}';
- }
- }
// An other solution could be using Thread.currentThread().getStackTrace() <- very slow
@@ -256,7 +179,7 @@ public class PathTracker
};
if ( USE_EXECUTORS )
{
- executorService.submit( runnable );
+ EXECUTORSERVICE.submit( runnable );
}
else
{
@@ -274,7 +197,7 @@ public class PathTracker
public static void shutdown()
{
- executorService.shutdownNow();
+ EXECUTORSERVICE.shutdownNow();
}
Added: incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/PathTrackingInformation.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/PathTrackingInformation.java?rev=1576296&view=auto
==============================================================================
--- incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/PathTrackingInformation.java (added)
+++ incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/PathTrackingInformation.java Tue Mar 11 12:02:18 2014
@@ -0,0 +1,99 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements. See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+package org.apache.sirona.tracking;
+
+/**
+ * @since 0.2
+ */
+public class PathTrackingInformation
+{
+ private String className;
+
+ private String methodName;
+
+ private PathTrackingInformation parent;
+
+ private long start;
+
+ private long end;
+
+ private int level;
+
+ public PathTrackingInformation( String className, String methodName )
+ {
+ this.className = className;
+ this.methodName = methodName;
+ }
+
+ public String getClassName()
+ {
+ return className;
+ }
+
+ public String getMethodName()
+ {
+ return methodName;
+ }
+
+ public PathTrackingInformation getParent()
+ {
+ return parent;
+ }
+
+ public void setParent( PathTrackingInformation parent )
+ {
+ this.parent = parent;
+ }
+
+ public void setStart( final long start )
+ {
+ this.start = start;
+ }
+
+ public long getStart()
+ {
+ return start;
+ }
+
+ public long getEnd()
+ {
+ return end;
+ }
+
+ public void setEnd( final long end )
+ {
+ this.end = end;
+ }
+
+ public int getLevel()
+ {
+ return level;
+ }
+
+ public void setLevel( final int level )
+ {
+ this.level = level;
+ }
+
+ @Override
+ public String toString()
+ {
+ return "PathTrackingInformation{className='" + className + "', methodName='" + methodName + "\', parent="
+ + parent + '}';
+ }
+}
Propchange: incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/PathTrackingInformation.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/PathTrackingInformation.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision