[jboss-cvs] JBossAS SVN: r97483 - in projects/kernel/trunk/dependency/src: test/java/org/jboss/test/dependency/controller/test and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Sat Dec 5 15:03:56 EST 2009
Author: alesj
Date: 2009-12-05 15:03:56 -0500 (Sat, 05 Dec 2009)
New Revision: 97483
Modified:
projects/kernel/trunk/dependency/src/main/java/org/jboss/dependency/plugins/AbstractControllerContext.java
projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ContextTrackerTestCase.java
Log:
Make unget asymetric, remove the need for non-null target.
Only track the event once if the tracker is the same.
Modified: projects/kernel/trunk/dependency/src/main/java/org/jboss/dependency/plugins/AbstractControllerContext.java
===================================================================
--- projects/kernel/trunk/dependency/src/main/java/org/jboss/dependency/plugins/AbstractControllerContext.java 2009-12-05 19:13:31 UTC (rev 97482)
+++ projects/kernel/trunk/dependency/src/main/java/org/jboss/dependency/plugins/AbstractControllerContext.java 2009-12-05 20:03:56 UTC (rev 97483)
@@ -470,42 +470,39 @@
{
Object user = getActualUser(context);
Object result = getTargetForActualUser(user);
- if (result != null)
- {
- ContextTracker myTracker = getContextTracker();
- if (myTracker != null)
- myTracker.incrementUsedBy(this, user);
- if (context instanceof ContextTracking)
- {
- ContextTracking ct = ContextTracking.class.cast(context);
- ContextTracker otherTracker = ct.getContextTracker();
- if (otherTracker != null)
- otherTracker.incrementUsedBy(this, user);
- }
+ ContextTracker myTracker = getContextTracker();
+ if (myTracker != null)
+ myTracker.incrementUsedBy(this, user);
+
+ if (context instanceof ContextTracking)
+ {
+ ContextTracking ct = ContextTracking.class.cast(context);
+ ContextTracker otherTracker = ct.getContextTracker();
+ if (otherTracker != null && otherTracker != myTracker)
+ otherTracker.incrementUsedBy(this, user);
}
+
return result;
}
public Object ungetTarget(ControllerContext context)
{
Object user = getActualUser(context);
- Object result = ungetTargetForActualUser(user);
- if (result != null)
- {
- ContextTracker myTracker = getContextTracker();
- if (myTracker != null)
- myTracker.decrementUsedBy(this, user);
- if (context instanceof ContextTracking)
- {
- ContextTracking ct = ContextTracking.class.cast(context);
- ContextTracker otherTracker = ct.getContextTracker();
- if (otherTracker != null)
- otherTracker.decrementUsedBy(this, user);
- }
+ ContextTracker myTracker = getContextTracker();
+ if (myTracker != null)
+ myTracker.decrementUsedBy(this, user);
+
+ if (context instanceof ContextTracking)
+ {
+ ContextTracking ct = ContextTracking.class.cast(context);
+ ContextTracker otherTracker = ct.getContextTracker();
+ if (otherTracker != null && otherTracker != myTracker)
+ otherTracker.decrementUsedBy(this, user);
}
- return result;
+
+ return ungetTargetForActualUser(user);
}
public Object getTarget(ContextTracker tracker)
@@ -514,7 +511,7 @@
if (tracker != null)
{
ContextTracker myTracker = getContextTracker();
- if (myTracker != null)
+ if (myTracker != null && myTracker != tracker)
myTracker.incrementUsedBy(this, tracker);
tracker.incrementUsedBy(this, tracker);
@@ -524,16 +521,15 @@
public Object ungetTarget(ContextTracker tracker)
{
- Object result = ungetTargetForActualUser(tracker);
if (tracker != null)
{
ContextTracker myTracker = getContextTracker();
- if (myTracker != null)
+ if (myTracker != null && myTracker != tracker)
myTracker.decrementUsedBy(this, tracker);
tracker.decrementUsedBy(this, tracker);
}
- return result;
+ return ungetTargetForActualUser(tracker);
}
public void toString(JBossStringBuilder buffer)
Modified: projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ContextTrackerTestCase.java
===================================================================
--- projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ContextTrackerTestCase.java 2009-12-05 19:13:31 UTC (rev 97482)
+++ projects/kernel/trunk/dependency/src/test/java/org/jboss/test/dependency/controller/test/ContextTrackerTestCase.java 2009-12-05 20:03:56 UTC (rev 97483)
@@ -86,7 +86,7 @@
{
ControllerContext a = assertInstallContext("a");
ControllerContext b = assertInstallContext("b");
- testContexts(a, b, 2); // same tracker, hence duplicate
+ testContexts(a, b, 1);
}
public void testTargetOverTracker() throws Throwable
More information about the jboss-cvs-commits
mailing list