@Override public void setComponentStatisticsId(ArtifactHolder holder) {
if (getAspectConfiguration() == null) {
configure(new AspectConfiguration(getMediatorName()));
}
String mediatorId =
StatisticIdentityGenerator.getIdForFlowContinuableMediator(getMediatorName(), ComponentType.MEDIATOR, holder);
getAspectConfiguration().setUniqueId(mediatorId);
String childId;
StatisticIdentityGenerator.reportingBranchingEvents(holder);
if (thenKey != null) {
childId = StatisticIdentityGenerator.getIdReferencingComponent(thenKey, ComponentType.SEQUENCE, holder);
StatisticIdentityGenerator.reportingEndEvent(childId, ComponentType.SEQUENCE, holder);
} else {
setStatisticIdForMediators(holder);
}
StatisticIdentityGenerator.reportingEndBranchingEvent(holder);
StatisticIdentityGenerator.reportingBranchingEvents(holder);
if (elseKey != null) {
childId = StatisticIdentityGenerator.getIdReferencingComponent(elseKey, ComponentType.SEQUENCE, holder);
StatisticIdentityGenerator.reportingEndEvent(childId, ComponentType.SEQUENCE, holder);
} else if (elseMediator != null) {
elseMediator.setStatisticIdForMediators(holder);
}
StatisticIdentityGenerator.reportingFlowContinuableEndEvent(mediatorId, ComponentType.MEDIATOR, holder);
StatisticIdentityGenerator.reportingEndBranchingEvent(holder);
}
}