if(definition instanceof SignalEventDefinition) {
return new AddSignalCatchingEventFeature(this);
} else if(definition instanceof MessageEventDefinition) {
return new AddMessageCatchingEventFeature(this);
} else {
return new AddTimerCatchingEventFeature(this);
}
}
} else if (context.getNewObject() instanceof ThrowEvent) {
if(((ThrowEvent) context.getNewObject()).getEventDefinitions().size() > 0) {
return new AddSignalThrowingEventFeature(this);