Author: thn Date: 2009-11-25 13:27:41-0800 New Revision: 17552 Modified: trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/XmiReaderEUMLImpl.java
Log: UML2: avoid user depending full paths in model PLEASE REVIEW! Modified: trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/XmiReaderEUMLImpl.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/XmiReaderEUMLImpl.java?view=diff&pathrev=17552&r1=17551&r2=17552 ============================================================================== --- trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/XmiReaderEUMLImpl.java (original) +++ trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/XmiReaderEUMLImpl.java 2009-11-25 13:27:41-0800 @@ -143,6 +143,19 @@ if (id == null) { id = inputSource.getPublicId(); } + // The id contains the whole path, which is not what we want in models + // (it's a tradeoff, but collisions will be unlikely with the xmi.id) + if (id != null) { + // for ArgoUML internal profiles, id will start with "org/argouml" + int ix = id.indexOf("org/argouml/"); + if (ix != -1) { + id = id.substring(ix); + } else if ((ix = id.lastIndexOf('/')) != -1) { + // for user profiles, use the filename only + id = id.substring(ix + 1); + } + } + Resource r = UMLUtil.getResource(modelImpl, URI.createURI(id), readOnly); ------------------------------------------------------ http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2424413 To unsubscribe from this discussion, e-mail: [[email protected]].
