Author: maurelio1234
Date: 2008-08-26 15:47:36-0700
New Revision: 15616
Modified:
trunk/src/argouml-app/src/org/argouml/persistence/ProfileConfigurationFilePersister.java
trunk/src/argouml-app/src/org/argouml/profile/Profile.java
trunk/src/argouml-app/src/org/argouml/profile/internal/ProfileManagerImpl.java
Log:
issue 5346
Modified: trunk/src/argouml-app/src/org/argouml/persistence/ProfileConfigurationFilePersister.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/persistence/ProfileConfigurationFilePersister.java?view=diff&rev=15616&p1=trunk/src/argouml-app/src/org/argouml/persistence/ProfileConfigurationFilePersister.java&p2=trunk/src/argouml-app/src/org/argouml/persistence/ProfileConfigurationFilePersister.java&r1=15615&r2=15616
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/persistence/ProfileConfigurationFilePersister.java (original)
+++ trunk/src/argouml-app/src/org/argouml/persistence/ProfileConfigurationFilePersister.java 2008-08-26 15:47:36-0700
@@ -124,13 +124,19 @@
private static Profile handlePluginProfile(BufferedReader br)
throws IOException, OpenException {
Profile profile;
- String className = br.readLine().trim();
- profile = ProfileFacade.getManager().getProfileForClass(
- className);
+ String profileIdentifier = br.readLine().trim();
+ profile = ProfileFacade.getManager().lookForRegisteredProfile(
+ profileIdentifier);
if (profile == null) {
- throw new OpenException(
- "Plugin profile \"" + className
- + "\" is not available in installation.", null);
+
+ // for compatibility with older format
+ profile = ProfileFacade.getManager().getProfileForClass(
+ profileIdentifier);
+
+ if (profile == null) {
+ throw new OpenException("Plugin profile \"" + profileIdentifier
+ + "\" is not available in installation.", null);
+ }
}
return profile;
}
@@ -292,8 +298,7 @@
w.println("\t\t</userDefined>");
} else {
w.println("\t\t<plugin>");
- // TODO: Don't persist our internal implementation names
- w.println("\t\t\t" + profile.getClass().getName());
+ w.println("\t\t\t" + profile.getProfileIdentifier());
w.println("\t\t</plugin>");
}
}
Modified: trunk/src/argouml-app/src/org/argouml/profile/Profile.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/profile/Profile.java?view=diff&rev=15616&p1=trunk/src/argouml-app/src/org/argouml/profile/Profile.java&p2=trunk/src/argouml-app/src/org/argouml/profile/Profile.java&r1=15615&r2=15616
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/profile/Profile.java (original)
+++ trunk/src/argouml-app/src/org/argouml/profile/Profile.java 2008-08-26 15:47:36-0700
@@ -146,6 +146,8 @@
/**
* @return a unique identifier for this profile
+ *
+ * For technical reasons this identifier should not contain stars '*'
*/
public String getProfileIdentifier() {
return getDisplayName();
Modified: trunk/src/argouml-app/src/org/argouml/profile/internal/ProfileManagerImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/profile/internal/ProfileManagerImpl.java?view=diff&rev=15616&p1=trunk/src/argouml-app/src/org/argouml/profile/internal/ProfileManagerImpl.java&p2=trunk/src/argouml-app/src/org/argouml/profile/internal/ProfileManagerImpl.java&r1=15615&r2=15616
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/profile/internal/ProfileManagerImpl.java (original)
+++ trunk/src/argouml-app/src/org/argouml/profile/internal/ProfileManagerImpl.java 2008-08-26 15:47:36-0700
@@ -153,8 +153,8 @@
e2);
}
} else if (desc.charAt(0) == 'C') {
- String className = desc.substring(1);
- p = getProfileForClass(className);
+ String profileIdentifier = desc.substring(1);
+ p = lookForRegisteredProfile(profileIdentifier);
}
if (p != null) {
@@ -176,7 +176,7 @@
+ ((UserDefinedProfile) p).getModelFile()
.toURI().toASCIIString());
} else {
- buf.append("C" + p.getClass().getName());
+ buf.append("C" + p.getProfileIdentifier());
}
buf.append(DIRECTORY_SEPARATOR);
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.