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:27 UTC

svn commit: r1576297 - in /incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking: Context.java PathTracker.java

Author: olamy
Date: Tue Mar 11 12:02:26 2014
New Revision: 1576297

URL: http://svn.apache.org/r1576297
Log:
more class extract

Added:
    incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/Context.java   (with props)
Modified:
    incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/PathTracker.java

Added: incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/Context.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/Context.java?rev=1576297&view=auto
==============================================================================
--- incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/Context.java (added)
+++ incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/Context.java Tue Mar 11 12:02:26 2014
@@ -0,0 +1,83 @@
+/*
+* 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;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.UUID;
+import java.util.concurrent.atomic.AtomicInteger;
+
+/**
+ *  @since 0.2
+ */
+public class Context
+{
+    private String uuid;
+
+    private AtomicInteger level;
+
+    private List<PathTrackingEntry> entries;
+
+    private PathTrackingInformation trackingInformation;
+
+    protected Context()
+    {
+        this.uuid = "Sirona-" + UUID.randomUUID().toString();
+        this.level = new java.util.concurrent.atomic.AtomicInteger( 0 );
+        this.entries = new ArrayList<PathTrackingEntry>();
+    }
+
+    public String getUuid()
+    {
+        return uuid;
+    }
+
+    public AtomicInteger getLevel()
+    {
+        return level;
+    }
+
+    public List<PathTrackingEntry> getEntries()
+    {
+        return entries;
+    }
+
+    public PathTrackingInformation getTrackingInformation()
+    {
+        return trackingInformation;
+    }
+
+    public void setUuid( String uuid )
+    {
+        this.uuid = uuid;
+    }
+
+    public void setLevel( AtomicInteger level )
+    {
+        this.level = level;
+    }
+
+    public void setEntries( List<PathTrackingEntry> entries )
+    {
+        this.entries = entries;
+    }
+
+    public void setTrackingInformation( PathTrackingInformation trackingInformation )
+    {
+        this.trackingInformation = trackingInformation;
+    }
+}

Propchange: incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/Context.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/sirona/trunk/core/src/main/java/org/apache/sirona/tracking/Context.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

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=1576297&r1=1576296&r2=1576297&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:26 2014
@@ -77,23 +77,6 @@ public class PathTracker
         this.pathTrackingInformation = pathTrackingInformation;
     }
 
-    private static class Context
-    {
-        private String uuid;
-
-        private AtomicInteger level;
-
-        private List<PathTrackingEntry> entries;
-
-        private PathTrackingInformation trackingInformation;
-
-        private Context()
-        {
-            this.uuid = "Sirona-" + UUID.randomUUID().toString();
-            this.level = new java.util.concurrent.atomic.AtomicInteger( 0 );
-            this.entries = new ArrayList<PathTrackingEntry>();
-        }
-    }
 
     private static void cleanUp()
     {
@@ -109,10 +92,10 @@ public class PathTracker
         final Context context = THREAD_LOCAL.get();
 
         final int level;
-        final PathTrackingInformation current = context.trackingInformation;
+        final PathTrackingInformation current = context.getTrackingInformation();
         if ( current == null )
         {
-            level = context.level.incrementAndGet();
+            level = context.getLevel().incrementAndGet();
             pathTrackingInformation.setLevel( level );
         }
         else
@@ -120,7 +103,7 @@ public class PathTracker
             // same class so no inc
             if ( current != pathTrackingInformation )
             {
-                level = context.level.incrementAndGet();
+                level = context.getLevel().incrementAndGet();
                 pathTrackingInformation.setLevel( level );
                 pathTrackingInformation.setParent( current );
             }
@@ -129,7 +112,7 @@ public class PathTracker
         }
         pathTrackingInformation.setStart( System.nanoTime() );
 
-        context.trackingInformation = pathTrackingInformation;
+        context.setTrackingInformation( pathTrackingInformation );
 
         return new PathTracker( pathTrackingInformation );
     }
@@ -141,14 +124,14 @@ public class PathTracker
         final long start = pathTrackingInformation.getStart();
         final Context context = THREAD_LOCAL.get();
 
-        final String uuid = context.uuid;
+        final String uuid = context.getUuid();
 
-        final PathTrackingInformation current = context.trackingInformation;
+        final PathTrackingInformation current = context.getTrackingInformation();
         // same invocation so no inc, class can do recursion so don't use classname/methodname
         if ( pathTrackingInformation != current )
         {
-            context.level.decrementAndGet();
-            context.trackingInformation = pathTrackingInformation.getParent();
+            context.getLevel().decrementAndGet();
+            context.setTrackingInformation( pathTrackingInformation.getParent() );
         }
 
         final PathTrackingEntry pathTrackingEntry =
@@ -161,7 +144,7 @@ public class PathTracker
         }
         else
         {
-            context.entries.add( pathTrackingEntry );
+            context.getEntries().add( pathTrackingEntry );
         }
 
         if ( pathTrackingInformation.getLevel() == 1 && pathTrackingInformation.getParent() == null )
@@ -173,7 +156,7 @@ public class PathTracker
                     @Override
                     public void run()
                     {
-                        PATH_TRACKING_DATA_STORE.store( context.entries );
+                        PATH_TRACKING_DATA_STORE.store( context.getEntries() );
                         PathTracker.cleanUp();
                     }
                 };