 	}
 	public var onResult:Function;
 	public var onError:Function;
+	/**
+	 * Used as a flag to indicate whether or not this handler has been called 
+	 */
+	public var wasCalled:Boolean = false;
 }

					}
				}
			);
			
			// callLater will not call the function if the context was disposed
			WeaveAPI.StageUtils.callLater(relevantContext, function():void {
				handlers.push(handler);
				
				if (!dependencies.some(dependencyIsBusy))
				{
					if (result !== undefined)
						handler.onResult(result);
					else if (error !== undefined)
						handler.onError(error);
				}
			});
			
			return next;
		}

					}
				},
				function(error:Object):void {
					handler.wasCalled = true;
					try
					{
						next.setError(onRejected(error));
