int baseTimeout = activeProcessor.getRetryDelay(); double backoff = activeProcessor.getBackoff(); for (int i = 0; i < maxRetries; i++) {
private void addDispatchLayers( org.embl.ebi.escience.scufl.Processor t1Processor, DispatchStack dispatchStack) throws EditException { int maxJobs = t1Processor.getWorkers(); int maxRetries = t1Processor.getRetries(); float backoffFactor = (float) t1Processor.getBackoff(); int initialDelay = t1Processor.getRetryDelay(); int maxDelay = (int) (initialDelay * (Math.pow(backoffFactor, maxRetries))); DispatchLayer<?> parallelize = new Parallelize(maxJobs); DispatchLayer<?> errorBounce = new ErrorBounce(); DispatchLayer<?> failover = new Failover(); DispatchLayer<?> retry = new Retry(maxRetries, initialDelay, maxDelay, backoffFactor); DispatchLayer<?> invoke = new Invoke(); int layer = 0; edits.getAddDispatchLayerEdit(dispatchStack, parallelize, layer++).doEdit(); edits.getAddDispatchLayerEdit(dispatchStack, errorBounce, layer++).doEdit(); edits.getAddDispatchLayerEdit(dispatchStack, failover, layer++).doEdit(); edits.getAddDispatchLayerEdit(dispatchStack, retry, layer++).doEdit(); edits.getAddDispatchLayerEdit(dispatchStack, invoke, layer++).doEdit(); }
private void addDispatchLayers( org.embl.ebi.escience.scufl.Processor t1Processor, DispatchStack dispatchStack) throws EditException { int maxJobs = t1Processor.getWorkers(); int maxRetries = t1Processor.getRetries(); float backoffFactor = (float) t1Processor.getBackoff(); int initialDelay = t1Processor.getRetryDelay(); int maxDelay = (int) (initialDelay * (Math.pow(backoffFactor, maxRetries))); DispatchLayer<?> parallelize = new Parallelize(maxJobs); DispatchLayer<?> errorBounce = new ErrorBounce(); DispatchLayer<?> failover = new Failover(); DispatchLayer<?> retry = new Retry(maxRetries, initialDelay, maxDelay, backoffFactor); DispatchLayer<?> invoke = new Invoke(); int layer = 0; edits.getAddDispatchLayerEdit(dispatchStack, parallelize, layer++) .doEdit(); edits.getAddDispatchLayerEdit(dispatchStack, errorBounce, layer++) .doEdit(); edits.getAddDispatchLayerEdit(dispatchStack, failover, layer++) .doEdit(); edits.getAddDispatchLayerEdit(dispatchStack, retry, layer++).doEdit(); edits.getAddDispatchLayerEdit(dispatchStack, invoke, layer++).doEdit(); }