package is.idega.idegaweb.egov.bpm.cases.email.bean; import java.io.InputStream; import java.util.Map; import com.idega.core.messaging.EmailMessage; /** * Simple bean holding needed information * * @author <a href="mailto:valdas@idega.com">Valdas Žemaitis</a> * @version $Revision: 1.1 $ Last modified: $Date: 2009/04/22 12:56:21 $ by $Author: valdas $ */ public class BPMEmailMessage extends EmailMessage { private Long processInstanceId; private Long taskInstanceId; private Map<String, InputStream> attachments; public BPMEmailMessage() { super(); } public BPMEmailMessage(Long processInstanceId) { this(); this.processInstanceId = processInstanceId; } public BPMEmailMessage(EmailMessage message, Long processInstanceId) { super(message); setProcessInstanceId(processInstanceId); } protected BPMEmailMessage(BPMEmailMessage message) { super(message); setProcessInstanceId(message.getProcessInstanceId()); setTaskInstanceId(message.getTaskInstanceId()); } public BPMEmailMessage(Long processInstanceId, Long taskInstanceId) { this(processInstanceId); this.taskInstanceId = taskInstanceId; } public Long getProcessInstanceId() { return processInstanceId; } public void setProcessInstanceId(Long processInstanceId) { this.processInstanceId = processInstanceId; } public Long getTaskInstanceId() { return taskInstanceId; } public void setTaskInstanceId(Long taskInstanceId) { this.taskInstanceId = taskInstanceId; } @Override protected Object clone() throws CloneNotSupportedException { return new BPMEmailMessage(this); } public Map<String, InputStream> getAttachments() { return attachments; } @Override public void setAttachments(Map<String, InputStream> attachments) { this.attachments = attachments; } @Override public String toString() { return super.toString() + ". BPM process instance ID: " + getProcessInstanceId() + ", task instance ID: " + getTaskInstanceId() + ", attachments: " + getAttachments(); } }