svn commit: r19798 - branches/BRANCH_0_34_x/src/argouml-core-model-mdr: . src/org/argouml/model/mdr
[email protected] Mon, 12 Dec 2011 09:07:42 -0800 (PST)
| Newsgroups | gmane.comp.lang.uml.argouml.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: linus
Date: 2011-12-12 09:07:41-0800
New Revision: 19798
Modified:
branches/BRANCH_0_34_x/src/argouml-core-model-mdr/ (props changed)
branches/BRANCH_0_34_x/src/argouml-core-model-mdr/src/org/argouml/model/mdr/XmiReaderImpl.java
Log:
Merged the solution to issue 6389.
Merged from revision 19797.
Modified: branches/BRANCH_0_34_x/src/argouml-core-model-mdr/src/org/argouml/model/mdr/XmiReaderImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/branches/BRANCH_0_34_x/src/argouml-core-model-mdr/src/org/argouml/model/mdr/XmiReaderImpl.java?view=diff&pathrev=19798&r1=19797&r2=19798
==============================================================================
--- branches/BRANCH_0_34_x/src/argouml-core-model-mdr/src/org/argouml/model/mdr/XmiReaderImpl.java (original)
+++ branches/BRANCH_0_34_x/src/argouml-core-model-mdr/src/org/argouml/model/mdr/XmiReaderImpl.java 2011-12-12 09:07:41-0800
@@ -395,6 +395,13 @@
*/
public Map<String, Object> getXMIUUIDToObjectMap() {
if (resolver != null) {
+ // Give the resolver.getIdToObjectMap() entries
+ // priority over entries with the same UUID from
+ // resolver.getIdToObjectMaps() because entries
+ // in resolver.getIdToObjectMaps() are historic.
+ HashMap<String, Object> globalXmiIdToObjectMap =
+ new HashMap<String, Object>(resolver.getIdToObjectMap());
+
Map<String, Map<String, Object>> idToObjectMaps =
resolver.getIdToObjectMaps();
Set<Entry<String,Map<String,Object>>> entrySet = null;
@@ -411,17 +418,19 @@
entry.setValue(new HashMap<String,Object>(entry.getValue()));
}
}
- HashMap<String, Object> globalXmiIdToObjectMap =
- new HashMap<String, Object>();
for (Entry<String, Map<String, Object>> entry : entrySet) {
String xmiIdPrefix =
entry.getKey().startsWith(getTempXMIFileURIPrefix()) ? "" :
entry.getKey() + "#";
for (Entry<String, Object> innerMapEntry :
entry.getValue().entrySet()) {
- globalXmiIdToObjectMap.put(
- xmiIdPrefix + innerMapEntry.getKey(),
- innerMapEntry.getValue());
+
+ String id = xmiIdPrefix + innerMapEntry.getKey();
+ if (!globalXmiIdToObjectMap.containsKey(id)) {
+ globalXmiIdToObjectMap.put(
+ id,
+ innerMapEntry.getValue());
+ }
}
}
return globalXmiIdToObjectMap;
------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2892551
To unsubscribe from this discussion, e-mail: [[email protected]].