return new AddEventGatewayFeature(this);
} else if (context.getNewObject() instanceof BoundaryEvent) {
if(((BoundaryEvent) context.getNewObject()).getEventDefinitions().size() > 0) {
EventDefinition definition = ((BoundaryEvent) context.getNewObject()).getEventDefinitions().get(0);
if(definition instanceof ErrorEventDefinition) {
return new AddBoundaryErrorFeature(this);
} else if(definition instanceof SignalEventDefinition) {
return new AddBoundarySignalFeature(this);
} else if(definition instanceof MessageEventDefinition) {
return new AddBoundaryMessageFeature(this);
} else {