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);
}
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.