Minor improvements to ModelGroup
diff --git a/plugins/org.eclipse.epsilon.eol.engine/src/org/eclipse/epsilon/eol/models/ModelGroup.java b/plugins/org.eclipse.epsilon.eol.engine/src/org/eclipse/epsilon/eol/models/ModelGroup.java index c845e88..8a8e5d1 100644 --- a/plugins/org.eclipse.epsilon.eol.engine/src/org/eclipse/epsilon/eol/models/ModelGroup.java +++ b/plugins/org.eclipse.epsilon.eol.engine/src/org/eclipse/epsilon/eol/models/ModelGroup.java
@@ -57,13 +57,19 @@ } public Object getEnumerationValue(String enumeration, String label) throws EolEnumerationValueNotFoundException { - return models.get(0).getEnumerationValue(enumeration,label); + for (IModel model : models) { + try { + return model.getEnumerationValue(enumeration,label); + } + catch (Exception ex) {} + } + throw new EolEnumerationValueNotFoundException(enumeration, label, this.getName()); } public Collection<?> getAllOfType(String metaClass) throws EolModelElementTypeNotFoundException { ArrayList<Object> allOfClass = new ArrayList<Object>(); for (IModel model : models) { - allOfClass.addAll(model.getAllOfType(metaClass)); + if (model.hasType(metaClass)) allOfClass.addAll(model.getAllOfType(metaClass)); } return allOfClass; } @@ -71,7 +77,7 @@ public Collection<?> getAllOfKind(String metaClass) throws EolModelElementTypeNotFoundException { ArrayList<Object> allOfType = new ArrayList<Object>(); for (IModel model : models) { - allOfType.addAll(model.getAllOfKind(metaClass)); + if (model.hasType(metaClass)) allOfType.addAll(model.getAllOfKind(metaClass)); } return allOfType; }