public EventInformation build(long timestamp, String componentName, String streamId, Set<String> targetComponents,
StreamlineEvent event) {
String sourceComponentName = EventCorrelationInjector.getSourceComponentName(event);
if (!componentName.equals(sourceComponentName)) {
throw new IllegalStateException("component name in event correlation is different from provided component name");
}
return new EventInformation(timestamp, componentName, streamId, targetComponents, event.getId(),
EventCorrelationInjector.getRootIds(event), EventCorrelationInjector.getParentIds(event),
event);
}
}