You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2008/12/30 22:54:53 UTC
svn commit: r730258 - in
/tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal:
InvokableToRunnable.java OperationTrackerImpl.java
Author: hlship
Date: Tue Dec 30 13:54:53 2008
New Revision: 730258
URL: http://svn.apache.org/viewvc?rev=730258&view=rev
Log:
Change OperationTracker to optimize for invoke() rather than for run().
Removed:
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/InvokableToRunnable.java
Modified:
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/OperationTrackerImpl.java
Modified: tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/OperationTrackerImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/OperationTrackerImpl.java?rev=730258&r1=730257&r2=730258&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/OperationTrackerImpl.java (original)
+++ tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/OperationTrackerImpl.java Tue Dec 30 13:54:53 2008
@@ -45,11 +45,27 @@
Defense.notBlank(description, "description");
Defense.notNull(operation, "operation");
+ invoke(description, new Invokable<Void>()
+ {
+ public Void invoke()
+ {
+ operation.run();
+
+ return null;
+ }
+ });
+ }
+
+ public <T> T invoke(String description, Invokable<T> operation)
+ {
+ Defense.notBlank(description, "description");
+ Defense.notNull(operation, "operation");
+
operations.push(description);
try
{
- operation.run();
+ return operation.invoke();
}
catch (RuntimeException ex)
{
@@ -86,17 +102,5 @@
}
}
- public <T> T invoke(String description, Invokable<T> operation)
- {
- Defense.notBlank(description, "description");
- Defense.notNull(operation, "operation");
-
- InvokableToRunnable<T> i2r = new InvokableToRunnable<T>(operation);
-
- run(description, i2r);
-
- return i2r.getResult();
- }
-
boolean isEmpty() { return operations.isEmpty(); }
}