package foundation.workflow;
|
|
import foundation.dao.DataPackage;
|
import foundation.workflow.reference.ISender;
|
|
public class Event {
|
|
private EventType type;
|
private String dataName;
|
private String dataId;
|
private ISender sender;
|
private Moment moment;
|
private String code;
|
|
public Event(EventType type, DataPackage dataPackage, Moment moment, String code, ISender sender) {
|
this.dataName = dataPackage.getName();
|
this.dataId = dataPackage.getMasterId();
|
this.type = type;
|
this.sender = sender;
|
this.moment = moment;
|
this.code = code;
|
}
|
|
public Event(EventType type, String dataName, String dataId, Moment moment, String code, ISender sender) {
|
this.dataName = dataName;
|
this.dataId = dataId;
|
this.type = type;
|
this.moment = moment;
|
this.code = code;
|
this.sender = sender;
|
}
|
|
public EventType getType() {
|
return type;
|
}
|
|
public String getDataName() {
|
return dataName;
|
}
|
|
public void setDataId(String dataId) {
|
this.dataId = dataId;
|
}
|
|
public String getDataId() {
|
return dataId;
|
}
|
|
public void setSender(ISender sender) {
|
this.sender = sender;
|
}
|
|
public ISender getSender() {
|
return sender;
|
}
|
|
public <T> T getSender(Class<T> clazz) {
|
if (clazz.isInstance(sender)) {
|
return clazz.cast(sender);
|
}
|
|
return null;
|
}
|
|
public Moment getMoment() {
|
return moment;
|
}
|
|
public String getCode() {
|
return code;
|
}
|
|
public String createKey() {
|
return dataName + "-" + moment.name() + "-" + code;
|
}
|
|
public String createSenderKey() {
|
String senderKey = "";
|
if (sender != null) {
|
senderKey = sender.createKey();
|
}
|
|
return dataName + "-" + moment.name() + "-" + code + "-" + senderKey;
|
}
|
}
|