diff --git a/edu.kit.ipd.descartes.adaptation/src/edu/kit/ipd/descartes/adaptation/model/AbstractEcoreModelLoader.java b/edu.kit.ipd.descartes.adaptation/src/edu/kit/ipd/descartes/adaptation/model/AbstractEcoreModelLoader.java index b27eba1f877cecbd8454e53b02efea1ea13bef41..fb9dd9c775f753419606eaf775dea1ab9bd08ce7 100644 --- a/edu.kit.ipd.descartes.adaptation/src/edu/kit/ipd/descartes/adaptation/model/AbstractEcoreModelLoader.java +++ b/edu.kit.ipd.descartes.adaptation/src/edu/kit/ipd/descartes/adaptation/model/AbstractEcoreModelLoader.java @@ -17,9 +17,10 @@ import org.eclipse.emf.ecore.xmi.XMIResource; public abstract class AbstractEcoreModelLoader { + private static Logger logger = Logger.getLogger(AbstractEcoreModelLoader.class); private ResourceSet resourceSet = null; - static Logger logger = Logger.getLogger(AbstractEcoreModelLoader.class); - + private URI currentUri = null; + protected ResourceSet getResourceSet() { if (resourceSet == null) throw new NullPointerException("INTITIALIZE RESOURCE SET FIRST! "); @@ -57,6 +58,7 @@ public abstract class AbstractEcoreModelLoader { logger.error("Error while loading model " + uri.toFileString(), e); e.printStackTrace(); } + currentUri = uri; EcoreUtil.resolveAll(resourceSet); return resource.getContents().get(0); } @@ -105,5 +107,13 @@ public abstract class AbstractEcoreModelLoader { URI fileURI = URI.createFileURI(projectPath); return fileURI.appendSegment(filename).appendFileExtension(filename_extension); } + + /** + * Convenience method to determine the current model location. + * @return + */ + public URI getCurrentModelUri() { + return currentUri; + } }