svn commit: r14598 - trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/XmiWriterMDRImpl.java

[email protected]
Newsgroups gmane.comp.lang.uml.argouml.cvs
Message-ID <[email protected]>
Author: tfmorris
Date: 2008-05-02 21:21:04-0700
New Revision: 14598

Modified:
   trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/XmiWriterMDRImpl.java

Log:
Disable WRITE_ALL while we debug model save/load strangeness

Modified: trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/XmiWriterMDRImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/XmiWriterMDRImpl.java?view=diff&rev=14598&p1=trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/XmiWriterMDRImpl.java&p2=trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/XmiWriterMDRImpl.java&r1=14597&r2=14598
==============================================================================
--- trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/XmiWriterMDRImpl.java	(original)
+++ trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/XmiWriterMDRImpl.java	2008-05-02 21:21:04-0700
@@ -84,7 +84,7 @@
      * except for the profile model(s), ignoring the model specified by the 
      * caller.
      */
-    private static final boolean WRITE_ALL = true;
+    private static final boolean WRITE_ALL = false;
 
     /*
      * Private constructor for common work needed by both public
@@ -166,12 +166,16 @@
                 LOG.info("Saving model '" + ((Model) model).getName() + "'");
             } else {
                 UmlPackage pkg = modelImpl.getUmlPackage();
+                // Make sure user model is first
+                elements.add(model);
                 for (Iterator it = pkg.getCore().getElement().refAllOfType()
                         .iterator(); it.hasNext();) {
                     RefObject obj = (RefObject) it.next();
                     // Find top level objects which aren't part of profile
                     if (obj.refImmediateComposite() == null ) {
-                        elements.add(obj);
+                        if (!elements.contains(obj)) {
+                            elements.add(obj);
+                        }
                     }
                 }
                 LOG.info("Saving " + elements.size()
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.