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); --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
