package foundation.workflow;
|
|
import java.util.Iterator;
|
import java.util.List;
|
|
import foundation.util.MapList;
|
|
public class EventWorkSteps implements Iterable<WorkStepMeta> {
|
|
private MapList<String, WorkStepMeta> items;
|
|
public EventWorkSteps() {
|
this.items = new MapList<String, WorkStepMeta>();
|
}
|
|
public void loadOne(WorkStepMeta step) {
|
String key = step.getKey();
|
|
if (!items.contains(key)) {
|
items.add(key, step);
|
return;
|
}
|
|
WorkStepMeta exists = items.get(key);
|
Events events = step.getFireEvents();
|
|
if (events == null || events.isEmpty()) {
|
return;
|
}
|
|
for (String event: events) {
|
exists.addFireEvent(event);
|
}
|
}
|
|
public List<WorkStepMeta> getList() {
|
return items.getItemList();
|
}
|
|
@Override
|
public Iterator<WorkStepMeta> iterator() {
|
return items.iterator();
|
}
|
|
}
|