Recently ArgoUML 0.26.alpha1 was released. This is another step forward to a much anticipated ArgoUML 0.26. It contains some new things and one of these is the profile subsystem, to which I made a modest contribution.
I'm now working in priority 2 issues of the profile subsystem, which block the stable release. I'm also working in documenting this subsystem, first in the cookbook and then I'll do updates to the user manual. I hope I can still give a bit of of attention to the C++ module...
So, here is a list of things I would like to try to fix before 0.26:
ExplorerPopup.isRelatedToProfiles(Project, Object)is used to detect if a element is related to the profiles configured in the current project. In the same package is the support for drag-n-drop, class
DnDExplorerTree, which method
isValidDrag(TreePath destinationPath, Transferable tf)contains the validation of valid and invalid drags. We may make impossible for profile model elements to be dragged by checking if the
Transferablecontents contain profile model elements. On the other hand, this would make it impossible to add a profile contained model element to a diagram and this would limit the usefulness of the profiles.
FigNodeModelElementis the base class of many of the model element figures in the diagrams. Here the are two things needed: disable the menus that can modify the model element and disable the editability of the model element in-place. Such as the editing of names.
- issue #5017: profile model elements are absent from diagrams on reload
- issue #4991: Profiles subsystem missing in the cookbook
- issue #4992 – this is the one related to the update of the user manual for inclusion of the profile related functionality
- issue #3771: Add tag definitions for tags used by the cpp generator – for this it is only needed to update the user manual to reflect the usage of the UML profile for C++ instead of the previous way of copying into the model the model elements of the included profile.
- issue #27 of argouml-cpp: anarres-cpp: dependencies caused ArgoUML loading failure – I thought I had fixed this, but, in 0.26.alpha1 there is still the following warning:
2008-06-27 19:17:48,526 ERROR: Unable to find required class while loading org.anarres.cpp.Main$Option - may indicate an obsolete extension module or an unresolved dependency (ModuleLoader2.java:719) java.lang.NoClassDefFoundError: gnu/getopt/LongOpt at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$000(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at org.argouml.moduleloader.ModuleLoader2.addClass(ModuleLoader2.java:714) at org.argouml.moduleloader.ModuleLoader2.processEntry(ModuleLoader2.java:680) at org.argouml.moduleloader.ModuleLoader2.processJarFile(ModuleLoader2.java:614) at org.argouml.moduleloader.ModuleLoader2.huntModulesFromNamedDirectory(ModuleLoader2.java:554) at org.argouml.moduleloader.ModuleLoader2.huntForModulesFromExtensionDir(ModuleLoader2.java:512) at org.argouml.moduleloader.ModuleLoader2.huntForModules(ModuleLoader2.java:435) at org.argouml.moduleloader.ModuleLoader2.doInternal(ModuleLoader2.java:311) at org.argouml.moduleloader.ModuleLoader2.doLoad(ModuleLoader2.java:164) at org.argouml.moduleloader.InitModuleLoader.init(InitModuleLoader.java:55) at org.argouml.application.SubsystemUtility.initSubsystem(SubsystemUtility.java:49) at org.argouml.application.Main.initializeSubsystems(Main.java:430) at org.argouml.application.Main.main(Main.java:169) Caused by: java.lang.ClassNotFoundException: gnu.getopt.LongOpt at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClassInternal(Unknown Source) ... 24 more 2008-06-27 19:17:48,546 ERROR: Failed to find any loadable ArgoUML modules in jar X:\ArgoUML\0.26.ALPHA_1\ext\anarres-cpp-no-dependencies-1.2.3.jar (ModuleLoader2.java:627)
- There is a problem in JCPP from anarres that it doesn't close the files when the contained CppReader is told to close itself. This is causing 5 tests in argouml-cpp to fail with an error, when the
tearDown()is trying to delete the files.
- There are some more argouml-cpp issues I would like to solve, but, this is a fair cry...