>> Usually true, but do we know that reflection is being used here?
>
> See NotationProviderFactory.getNotationProvider()
>
> I assume the reflection there is using that class.

Yes, you're right.  That should be changed.

I did a quick scan through for other uses of reflection and found the
following which should be reviewed:

util.ItemUID.create/readObjectId()
cognitive.Agency.register()
cognitive.Critic.makeWizard()
persistence.AbstractFilePersister.newPersister()
uml.ui.TabStyle.findPanelFor()
Java & IDL reverse engineering - looking up imported elements on the
ArgoUML classpath?!?

Uses which are OK, in my opinion:

TestAgainstUMLModel - used to construct test cases from the UML metamodel
ProjectBrowser.setApplicationIcon - used to manage a Java 6 dependency
StartBrowser.openURL - not sure, but probably OK.  Used in MacOS
specific browser launching code
ConfigurationFactory
ui.explorer.PerspectiveConfigurator.doAddRule
ui.explorer.PerspectiveManager.loadUserPerspectives
ModuleLoader2
initializing alternative model subsystems - various places
Main - command line command invocation
PGMLStackParser - borderline, but probably a lot of work to change

Tom

------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=450&dsMessageId=987035

To unsubscribe from this discussion, e-mail: 
[[email protected]].

Reply via email to