/** * Overwritten to change result, if necessary. */ @Override protected synchronized boolean doSetFinished(boolean undone) { try { Collection<?> results = getIntermediateResults(); func.handleFinished((Collection<Object>)results); return DelegatingTupleFuture.super.doSetFinished(func.isUndone(undone)); } catch(Exception e) { return doSetException(e, func.isUndone(undone)); } }
/** * Overwritten to change result, if necessary. */ @Override protected boolean doAddIntermediateResult(TupleResult result, boolean undone) { try { result = (TupleResult)func.handleIntermediateResult(result); return DelegatingTupleFuture.super.doAddIntermediateResult(result, func.isUndone(undone)); } catch(Exception e) { return doSetException(e, func.isUndone(undone)); } }
/** * Overwritten to change result, if necessary. */ @Override protected boolean doSetResult(Collection<TupleResult> result, boolean undone) { try { result = (Collection<TupleResult>)func.handleResult(result); return DelegatingTupleFuture.super.doSetResult(result, func.isUndone(undone)); } catch(Exception e) { return doSetException(e, func.isUndone(undone)); } }
Tuple2Future<Object, Object> fut = new DelegatingTupleFuture(func); ((Tuple2Future<Object, Object>)orig).addResultListener(new IntermediateDelegationResultListener<TupleResult>(fut)); ret = fut;
/** * */ public void setFinished() { try { Collection col = getIntermediateResults(); func.setFinished((Collection<Object>)col); DelegatingTupleFuture.super.setFinished(); } catch(Exception e) { DelegatingTupleFuture.super.setExceptionIfUndone(e); } }
ret = new DelegatingTupleFuture(func);
/** * */ public boolean setFinishedIfUndone() { boolean ret = false; try { Collection col = getIntermediateResults(); func.setFinishedIfUndone((Collection<Object>)col); ret = DelegatingTupleFuture.super.setFinishedIfUndone(); } catch(Exception e) { DelegatingTupleFuture.super.setExceptionIfUndone(e); } return ret; }
ret = new DelegatingTupleFuture(func);
Tuple2Future<Object, Object> fut = new DelegatingTupleFuture(func); ((Tuple2Future<Object, Object>)orig).addResultListener(new IntermediateDelegationResultListener<TupleResult>(fut)); ret = fut;