Author: tfmorris Date: 2008-05-01 15:17:02-0700 New Revision: 14575 Modified: trunk/src/argouml-app/src/org/argouml/persistence/ArgoParser.java trunk/src/argouml-app/src/org/argouml/persistence/ModelMemberFilePersister.java trunk/src/argouml-app/src/org/argouml/persistence/OldZargoFilePersister.java trunk/src/argouml-app/src/org/argouml/persistence/PersistenceManager.java trunk/src/argouml-app/src/org/argouml/persistence/UmlFilePersister.java trunk/src/argouml-app/src/org/argouml/persistence/XmiFilePersister.java trunk/src/argouml-app/src/org/argouml/persistence/ZipFilePersister.java trunk/src/argouml-app/src/org/argouml/ui/ProjectBrowser.java trunk/src/argouml-app/tests/org/argouml/persistence/TestZargoFilePersister.java
Log: Issue 5057 - deprecate LastLoad* methods. Add TODOs for additional work. Modified: trunk/src/argouml-app/src/org/argouml/persistence/ArgoParser.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/persistence/ArgoParser.java?view=diff&rev=14575&p1=trunk/src/argouml-app/src/org/argouml/persistence/ArgoParser.java&p2=trunk/src/argouml-app/src/org/argouml/persistence/ArgoParser.java&r1=14574&r2=14575 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/persistence/ArgoParser.java (original) +++ trunk/src/argouml-app/src/org/argouml/persistence/ArgoParser.java 2008-05-01 15:17:02-0700 @@ -108,8 +108,6 @@ } private void preRead(Project theProject) { - PersistenceManager.getInstance().setLastLoadMessage("OK"); - PersistenceManager.getInstance().setLastLoadStatus(true); LOG.info("======================================="); LOG.info("== READING PROJECT " + theProject); project = theProject; @@ -117,10 +115,8 @@ } private void logError(String projectName, SAXException e) { - PersistenceManager.getInstance().setLastLoadStatus(false); LOG.error("Exception reading project================"); LOG.error(projectName); - PersistenceManager.getInstance().setLastLoadMessage(e.toString()); } /** @@ -252,6 +248,7 @@ /* * @see org.argouml.persistence.SAXParserBase#isElementOfInterest(String) */ + @Override protected boolean isElementOfInterest(String name) { return tokens.contains(name); } Modified: trunk/src/argouml-app/src/org/argouml/persistence/ModelMemberFilePersister.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/persistence/ModelMemberFilePersister.java?view=diff&rev=14575&p1=trunk/src/argouml-app/src/org/argouml/persistence/ModelMemberFilePersister.java&p2=trunk/src/argouml-app/src/org/argouml/persistence/ModelMemberFilePersister.java&r1=14574&r2=14575 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/persistence/ModelMemberFilePersister.java (original) +++ trunk/src/argouml-app/src/org/argouml/persistence/ModelMemberFilePersister.java 2008-05-01 15:17:02-0700 @@ -122,10 +122,7 @@ readModels(source); mmodel = getCurModel(); } catch (OpenException e) { - PersistenceManager.getInstance().setLastLoadStatus(false); - PersistenceManager.getInstance().setLastLoadMessage( - "UmlException parsing XMI."); - LOG.error("UmlException caught", e); + LOG.error("UmlException caught", e); throw e; } // This should probably be inside xmiReader.parse @@ -240,9 +237,11 @@ protected MemberFilePersister getMemberFilePersister(ProjectMember pm) { MemberFilePersister persister = null; if (pm instanceof ProjectMemberDiagram) { - persister = + persister = PersistenceManager.getInstance() .getDiagramMemberFilePersister(); + // TODO: Cyclic dependency with PersistenceManager, use instead +// persister = new DiagramMemberFilePersister(); } else if (pm instanceof ProfileConfiguration) { persister = new ProfileConfigurationFilePersister(); } else if (pm instanceof ProjectMemberTodoList) { Modified: trunk/src/argouml-app/src/org/argouml/persistence/OldZargoFilePersister.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/persistence/OldZargoFilePersister.java?view=diff&rev=14575&p1=trunk/src/argouml-app/src/org/argouml/persistence/OldZargoFilePersister.java&p2=trunk/src/argouml-app/src/org/argouml/persistence/OldZargoFilePersister.java&r1=14574&r2=14575 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/persistence/OldZargoFilePersister.java (original) +++ trunk/src/argouml-app/src/org/argouml/persistence/OldZargoFilePersister.java 2008-05-01 15:17:02-0700 @@ -133,6 +133,8 @@ new BufferedWriter(new OutputStreamWriter(stream, "UTF-8")); // Save the .argo entry + // TODO: Cyclic dependency with PersistenceManager + // move PersistenceManager..getProjectBaseName() someplace else ZipEntry zipEntry = new ZipEntry(PersistenceManager.getInstance() .getProjectBaseName(project) Modified: trunk/src/argouml-app/src/org/argouml/persistence/PersistenceManager.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/persistence/PersistenceManager.java?view=diff&rev=14575&p1=trunk/src/argouml-app/src/org/argouml/persistence/PersistenceManager.java&p2=trunk/src/argouml-app/src/org/argouml/persistence/PersistenceManager.java&r1=14574&r2=14575 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/persistence/PersistenceManager.java (original) +++ trunk/src/argouml-app/src/org/argouml/persistence/PersistenceManager.java 2008-05-01 15:17:02-0700 @@ -395,7 +395,11 @@ * Get the last message which caused loading to fail. Used for junit tests. * * @return the last message which caused loading to fail + * @deprecated for 0.25.5 by tfmorris. Persisters all throw exceptions if + * they failed to complete successfully. If no exception was + * thrown, the load succeeded. */ + @Deprecated public String getLastLoadMessage() { return lastLoadMessage; } @@ -404,14 +408,22 @@ * Set the last load message. Used for junit tests. * * @param msg the last load message + * @deprecated for 0.25.5 by tfmorris. Persisters all throw exceptions if + * they failed to complete successfully. If no exception was + * thrown, the load succeeded. */ + @Deprecated public void setLastLoadMessage(String msg) { lastLoadMessage = msg; } /** * @return the status of the last load attempt. Used for junit tests. + * @deprecated for 0.25.5 by tfmorris. Persisters all throw exceptions if + * they failed to complete successfully. If no exception was + * thrown, the load succeeded. */ + @Deprecated public boolean getLastLoadStatus() { return lastLoadStatus; } @@ -420,7 +432,11 @@ * Set the status of the last load attempt. Used for junit tests. * * @param status the status of the last load attempt + * @deprecated for 0.25.5 by tfmorris. Persisters all throw exceptions if + * they failed to complete successfully. If no exception was + * thrown, the load succeeded. */ + @Deprecated public void setLastLoadStatus(boolean status) { lastLoadStatus = status; } Modified: trunk/src/argouml-app/src/org/argouml/persistence/UmlFilePersister.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/persistence/UmlFilePersister.java?view=diff&rev=14575&p1=trunk/src/argouml-app/src/org/argouml/persistence/UmlFilePersister.java&p2=trunk/src/argouml-app/src/org/argouml/persistence/UmlFilePersister.java&r1=14574&r2=14575 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/persistence/UmlFilePersister.java (original) +++ trunk/src/argouml-app/src/org/argouml/persistence/UmlFilePersister.java 2008-05-01 15:17:02-0700 @@ -63,6 +63,7 @@ import org.argouml.application.api.Argo; import org.argouml.application.helpers.ApplicationVersion; import org.argouml.i18n.Translator; +import org.argouml.kernel.ProfileConfiguration; import org.argouml.kernel.Project; import org.argouml.kernel.ProjectFactory; import org.argouml.kernel.ProjectMember; @@ -70,7 +71,6 @@ import org.argouml.uml.ProjectMemberModel; import org.argouml.uml.cognitive.ProjectMemberTodoList; import org.argouml.uml.diagram.ProjectMemberDiagram; -import org.argouml.kernel.ProfileConfiguration; import org.argouml.util.ThreadUtils; import org.tigris.gef.ocl.ExpansionException; import org.tigris.gef.ocl.OCLExpander; @@ -643,9 +643,11 @@ protected MemberFilePersister getMemberFilePersister(ProjectMember pm) { MemberFilePersister persister = null; if (pm instanceof ProjectMemberDiagram) { - persister = - PersistenceManager.getInstance() - .getDiagramMemberFilePersister(); + // TODO: Cyclic dependency between PersistanceManager and here + PersistenceManager.getInstance() + .getDiagramMemberFilePersister(); + // use the following instead +// persister = new DiagramMemberFilePersister(); } else if (pm instanceof ProjectMemberTodoList) { persister = new TodoListMemberFilePersister(); } else if (pm instanceof ProfileConfiguration) { @@ -665,9 +667,12 @@ protected MemberFilePersister getMemberFilePersister(String tag) { MemberFilePersister persister = null; if (tag.equals("pgml")) { - persister = + persister = + // TODO: Cyclic dependency between PersistanceManager and here PersistenceManager.getInstance() .getDiagramMemberFilePersister(); + // use the following instead +// persister = new DiagramMemberFilePersister(); } else if (tag.equals("todo")) { persister = new TodoListMemberFilePersister(); } else if (tag.equals("profile")) { Modified: trunk/src/argouml-app/src/org/argouml/persistence/XmiFilePersister.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/persistence/XmiFilePersister.java?view=diff&rev=14575&p1=trunk/src/argouml-app/src/org/argouml/persistence/XmiFilePersister.java&p2=trunk/src/argouml-app/src/org/argouml/persistence/XmiFilePersister.java&r1=14574&r2=14575 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/persistence/XmiFilePersister.java (original) +++ trunk/src/argouml-app/src/org/argouml/persistence/XmiFilePersister.java 2008-05-01 15:17:02-0700 @@ -322,9 +322,12 @@ for (String pgml : pgmlStrings) { LOG.info("Parsing pgml " + pgml.length()); InputStream inputStream = new ByteArrayInputStream(pgml.getBytes()); - MemberFilePersister persister = + MemberFilePersister persister = + // TODO: Cyclic dependency between PersistanceManager and here PersistenceManager.getInstance() .getDiagramMemberFilePersister(); + // possibly use the following instead +// MemberFilePersister persister = new DiagramMemberFilePersister(); persister.load(project, inputStream); } if (todoString != null) { Modified: trunk/src/argouml-app/src/org/argouml/persistence/ZipFilePersister.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/persistence/ZipFilePersister.java?view=diff&rev=14575&p1=trunk/src/argouml-app/src/org/argouml/persistence/ZipFilePersister.java&p2=trunk/src/argouml-app/src/org/argouml/persistence/ZipFilePersister.java&r1=14574&r2=14575 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/persistence/ZipFilePersister.java (original) +++ trunk/src/argouml-app/src/org/argouml/persistence/ZipFilePersister.java 2008-05-01 15:17:02-0700 @@ -193,9 +193,12 @@ protected MemberFilePersister getMemberFilePersister(ProjectMember pm) { MemberFilePersister persister = null; if (pm instanceof ProjectMemberDiagram) { - persister = + persister = + // TODO: Cyclic dependency between PersistanceManager and here PersistenceManager.getInstance() .getDiagramMemberFilePersister(); + // possibly use the following instead +// persister = new DiagramMemberFilePersister(); } else if (pm instanceof ProfileConfiguration) { persister = new ProfileConfigurationFilePersister(); } else if (pm instanceof ProjectMemberTodoList) { @@ -278,6 +281,7 @@ * * @see org.argouml.persistence.AbstractFilePersister#hasAnIcon() */ + @Override public boolean hasAnIcon() { return false; } Modified: trunk/src/argouml-app/src/org/argouml/ui/ProjectBrowser.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/ui/ProjectBrowser.java?view=diff&rev=14575&p1=trunk/src/argouml-app/src/org/argouml/ui/ProjectBrowser.java&p2=trunk/src/argouml-app/src/org/argouml/ui/ProjectBrowser.java&r1=14574&r2=14575 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/ui/ProjectBrowser.java (original) +++ trunk/src/argouml-app/src/org/argouml/ui/ProjectBrowser.java 2008-05-01 15:17:02-0700 @@ -1706,27 +1706,7 @@ } finally { try { - if (!PersistenceManager.getInstance().getLastLoadStatus()) { - project = oldProject; - success = false; - // TODO: This seems entirely redundant - // for now I've made the message more generic, but it - // should be removed at a convenient time - tfm - reportError( - pmw, - "Problem loading the project " - + file.getName() - + "\n" - + "Error message:\n" - + PersistenceManager.getInstance() - .getLastLoadMessage() - + "\n" - + "Some (or all) information may be missing " - + "from the project.\n" - + "Please report this problem at " - + "http://argouml.tigris.org\n", - showUI); - } else if (oldProject != null) { + if (oldProject != null) { // if p equals oldProject there was an exception and we // do not have to gc (garbage collect) the old project if (project != null && !project.equals(oldProject)) { Modified: trunk/src/argouml-app/tests/org/argouml/persistence/TestZargoFilePersister.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/tests/org/argouml/persistence/TestZargoFilePersister.java?view=diff&rev=14575&p1=trunk/src/argouml-app/tests/org/argouml/persistence/TestZargoFilePersister.java&p2=trunk/src/argouml-app/tests/org/argouml/persistence/TestZargoFilePersister.java&r1=14574&r2=14575 ============================================================================== --- trunk/src/argouml-app/tests/org/argouml/persistence/TestZargoFilePersister.java (original) +++ trunk/src/argouml-app/tests/org/argouml/persistence/TestZargoFilePersister.java 2008-05-01 15:17:02-0700 @@ -111,8 +111,6 @@ ZargoFilePersister persister = new ZargoFilePersister(); String name = url.getFile(); Project p = persister.doLoad(new File(name)); - assertTrue("Load Status for " + filename + ".", - PersistenceManager.getInstance().getLastLoadStatus()); return p; } @@ -184,14 +182,12 @@ file = new File("/testmodels/Garbage.zargo"); ZargoFilePersister persister = new ZargoFilePersister(); persister.doLoad(file); - assertTrue("Load Status", - !PersistenceManager.getInstance().getLastLoadStatus()); + fail("Load didn't throw an exception"); } catch (OpenException io) { // This is the normal case. loaded = false; } catch (InterruptedException iExc) { - // This should not happen! - loaded = false; + fail("Got an unexpected InterruptedException during load"); } assertTrue("No exception was thrown.", !loaded); } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
