/** * Gets the generalization between two generalizable elements. Returns null if there is none. * * @param child * @param parent * @return MGeneralization */ public MGeneralization getGeneralization( MGeneralizableElement child, MGeneralizableElement parent) { if (child == null || parent == null) return null; Iterator it = child.getGeneralizations().iterator(); while (it.hasNext()) { MGeneralization gen = (MGeneralization) it.next(); if (gen.getParent() == parent) { return gen; } } return null; }
/** * Returns all classes some generalizable element clazz extends. * * @param clazz * @return Collection */ public Collection getExtendedClassifiers(MGeneralizableElement clazz) { if (clazz == null) return new ArrayList(); Iterator it = clazz.getGeneralizations().iterator(); List list = new ArrayList(); while (it.hasNext()) { MGeneralization gen = (MGeneralization) it.next(); MGeneralizableElement parent = gen.getParent(); if (parent != null) { list.add(parent); } } return list; }