package hudson.drools;
import hudson.model.Run;
import java.util.HashMap;
import java.util.Map;
import org.drools.runtime.StatefulKnowledgeSession;
import org.drools.runtime.process.WorkItemManager;
public class CompleteWorkItemCallable implements SessionCallable<Void> {
private final Map<String, Object> results;
private long workItemId;
public CompleteWorkItemCallable(
long workItemId, Run<?, ?> run) {
this.workItemId = workItemId;
results = new HashMap<String, Object>();
results.put(Constants.BUILD, new RunWrapper(run));
}
public CompleteWorkItemCallable(
long workItemId, Map<String, Object> results) {
this.workItemId = workItemId;
this.results = results;
}
public Void call(StatefulKnowledgeSession session) throws Exception {
WorkItemManager workItemManager = session.getWorkItemManager();
workItemManager.completeWorkItem(workItemId, results);
return null;
}
}