/** * @see org.andromda.metafacades.uml.ModelElementFacade#getModel() */ @Override protected Resource handleGetModel() { // Be careful here, Model Facade is mapped to resource // TODO map ModelFacade to UML2 Model or Package? Resource resource = this.metaObject.getModel().eResource(); if (resource==null) { LOGGER.error("ModelElementFacadeLogicImpl.handleGetModel: " + this.metaObject + " Model: " + this.metaObject.getModel()); resource = (Resource) this.metaObject.getModel(); } return resource; }
/** * @see org.andromda.metafacades.uml.ModelElementFacade#getModel() */ @Override protected Resource handleGetModel() { // Be careful here, Model Facade is mapped to resource // TODO map ModelFacade to UML2 Model or Package? Resource resource = this.metaObject.getModel().eResource(); if (resource==null) { LOGGER.error("ModelElementFacadeLogicImpl.handleGetModel: " + this.metaObject + " Model: " + this.metaObject.getModel()); resource = (Resource) this.metaObject.getModel(); } return resource; }
/** * Find the Model of a resource (UML2 Model) * @param element * @return (Model)EcoreUtil.getObjectByType(resource.getContents(), EcorePackage.eINSTANCE.getEObject()) */ public static Package findModel(final Element element) { if (element==null) { return null; } Package modelPackage = element.getModel(); if (modelPackage==null) { if (LOGGER.isDebugEnabled()) { LOGGER.error("getModel was null: " + element + " OWNER: " + element.getOwner()); } Element classifierOwner = element.getOwner(); Element owner = null; while (classifierOwner!=null) { owner = classifierOwner; classifierOwner = owner.getOwner(); } // Find the last owner in the chain... Top level package. modelPackage = (Package) owner; } return modelPackage; }
/** * Find the Model of a resource (UML2 Model) * @param element * @return (Model)EcoreUtil.getObjectByType(resource.getContents(), EcorePackage.eINSTANCE.getEObject()) */ public static Package findModel(final Element element) { if (element==null) { return null; } Package modelPackage = element.getModel(); if (modelPackage==null) { if (LOGGER.isDebugEnabled()) { LOGGER.error("getModel was null: " + element + " OWNER: " + element.getOwner()); } Element classifierOwner = element.getOwner(); Element owner = null; while (classifierOwner!=null) { owner = classifierOwner; classifierOwner = owner.getOwner(); } // Find the last owner in the chain... Top level package. modelPackage = (Package) owner; } return modelPackage; }