} else if (context.getNewObject() instanceof InclusiveGateway) {
return new AddInclusiveGatewayFeature(this);
} else if (context.getNewObject() instanceof ParallelGateway) {
return new AddParallelGatewayFeature(this);
} else if (context.getNewObject() instanceof EventGateway) {
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);