/*
* Copyright 2010 Red Hat, Inc. and/or its affiliates.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.drools.core.process.instance.impl;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import org.drools.core.process.instance.WorkItem;
public class WorkItemImpl implements WorkItem, Serializable {
private static final long serialVersionUID = 510l;
private long id;
private String name;
private int state = 0;
private Map<String, Object> parameters = new HashMap<String, Object>();
private Map<String, Object> results = new HashMap<String, Object>();
private long processInstanceId;
private String deploymentId;
private long nodeInstanceId;
private long nodeId;
public void setId(long id) {
this.id = id;
}
public long getId() {
return id;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setState(int state) {
this.state = state;
}
public int getState() {
return state;
}
public void setParameters(Map<String, Object> parameters) {
this.parameters = parameters;
}
public void setParameter(String name, Object value) {
this.parameters.put(name, value);
}
public Object getParameter(String name) {
return parameters.get(name);
}
public Map<String, Object> getParameters() {
return parameters;
}
public void setResults(Map<String, Object> results) {
if (results != null) {
this.results = results;
}
}
public void setResult(String name, Object value) {
results.put(name, value);
}
public Object getResult(String name) {
return results.get(name);
}
public Map<String, Object> getResults() {
return results;
}
public void setProcessInstanceId(long processInstanceId) {
this.processInstanceId = processInstanceId;
}
public long getProcessInstanceId() {
return processInstanceId;
}
public String getDeploymentId() {
return deploymentId;
}
public void setDeploymentId(String deploymentId) {
this.deploymentId = deploymentId;
}
public long getNodeInstanceId() {
return nodeInstanceId;
}
public void setNodeInstanceId(long nodeInstanceId) {
this.nodeInstanceId = nodeInstanceId;
}
public long getNodeId() {
return nodeId;
}
public void setNodeId(long nodeId) {
this.nodeId = nodeId;
}
public String toString() {
StringBuilder b = new StringBuilder("WorkItem ");
b.append(id);
b.append(" [name=");
b.append(name);
b.append(", state=");
b.append(state);
b.append(", processInstanceId=");
b.append(processInstanceId);
b.append(", parameters{");
for (Iterator<Map.Entry<String, Object>> iterator = parameters.entrySet().iterator(); iterator.hasNext(); ) {
Map.Entry<String, Object> entry = iterator.next();
b.append(entry.getKey());
b.append("=");
b.append(entry.getValue());
if (iterator.hasNext()) {
b.append(", ");
}
}
b.append("}]");
return b.toString();
}
}