package org.activiti.test.async.executor.hazelcast;
import java.util.Date;
import java.util.concurrent.atomic.AtomicInteger;
import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.Expression;
import org.activiti.engine.delegate.JavaDelegate;
public class SleepDelegate implements JavaDelegate {
public static AtomicInteger nrOfExecutions = new AtomicInteger(0);
protected Expression sleepTime;
public void execute(DelegateExecution execution) throws Exception {
long startTime = System.currentTimeMillis();
long var = 0;
while (System.currentTimeMillis() - startTime < 200) {
var += startTime; // Doing something to keep the JVM busy
Thread.sleep(50L); // Doing some sleeps to mimic I/O
}
nrOfExecutions.incrementAndGet();
// System.out.println(new Date() + "Job Done!");
}
public void setSleepTime(Expression sleepTime) {
this.sleepTime = sleepTime;
}
}