You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by ko...@apache.org on 2005/07/29 02:25:51 UTC
svn commit: r226309 -
/jakarta/commons/sandbox/javaflow/trunk/src/java/org/apache/commons/javaflow/Continuation.java
Author: kohsuke
Date: Thu Jul 28 17:25:48 2005
New Revision: 226309
URL: http://svn.apache.org/viewcvs?rev=226309&view=rev
Log:
- modified to return null from the continueWith method when there is nothing to continue
- javadoc improvement on the getContext method
- signature improvement on the getContext method
Modified:
jakarta/commons/sandbox/javaflow/trunk/src/java/org/apache/commons/javaflow/Continuation.java
Modified: jakarta/commons/sandbox/javaflow/trunk/src/java/org/apache/commons/javaflow/Continuation.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/javaflow/trunk/src/java/org/apache/commons/javaflow/Continuation.java?rev=226309&r1=226308&r2=226309&view=diff
==============================================================================
--- jakarta/commons/sandbox/javaflow/trunk/src/java/org/apache/commons/javaflow/Continuation.java (original)
+++ jakarta/commons/sandbox/javaflow/trunk/src/java/org/apache/commons/javaflow/Continuation.java Thu Jul 28 17:25:48 2005
@@ -37,7 +37,7 @@
private final static Log log = LogFactory.getLog(Continuation.class);
private final static transient Map continuationsMap = new HashMap();
- private transient Object context;
+ private transient ContinuationContext context;
private transient boolean restoring = false;
private transient boolean capturing = false;
@@ -68,12 +68,17 @@
/**
- * get the current contex. only valid
- * while calling "continueWith"
- *
- * @return context object
+ * get the current context.
+ *
+ * <p>
+ * This method returns the same context object given to {@link #startWith(String, ContinuationContext)}
+ * or {@link #continueWith(Continuation, ContinuationContext)}.
+ *
+ * @return
+ * null if this method is invoked outside {@link #startWith(String, ContinuationContext)}
+ * or {@link #continueWith(Continuation, ContinuationContext)} .
*/
- public Object getContext() {
+ public ContinuationContext getContext() {
return context;
}
@@ -109,6 +114,7 @@
}
private static Continuation execute(final Continuation continuation, final ContinuationContext context) {
+ boolean completed = false;
try {
continuation.registerThread();
@@ -144,6 +150,8 @@
if (continuation.stack.hasReference()) {
continuation.stack.popReference();
}
+ } else {
+ completed = true;
}
continuation.context = null;
@@ -151,7 +159,11 @@
continuation.deregisterThread();
}
- return continuation;
+ if(completed) {
+ return null;
+ } else {
+ return continuation;
+ }
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org