FAQ
- What is wrong if the body of a method is empty when the behavior is specified by a story diagram whereas other method bodies are fine and the codegeneration seems to work properly?
- MOF 2.0 originally does not support floating point datatypes. Why can I choose InfrastructureLibrary.Core.PrimitiveTypes.Double and Float for the mapping of primitive types?
- I want to create an attribute/parameter/return type of type String/Integer/Boolean/Double/..., [...]
- Can I have more / less toolbars in my MOF editor?
- I don't like diamonds. Can I have associations without diamonds in my diagram?
- How can I use an element (class, package, ...) from another package in the current diagram?
- How can I define a subsets relationship from an association end in the local diagram to an association end in another package?
- How can I define a redefines relationship from an association end in the local diagram to an association end in another package?
- The code produced by MOFLON has some compiler errors. What did I do wrong?
- Where do I find the stylesheets directory?
- When starting MOFLON, I get an error message in the console, saying: "ResourceManager : unable to find resource 'VM_global_library.vm' in any resource loader." Is this serious?
- Can I get rid of dialog boxes that appear, when creating a new MOF element?
- What does the acronym MOFLON stand for?
- To which species does the animal showing in the MOFLON logo belong?
What is wrong if the body of a method is empty when the behavior is specified by a story diagram whereas other method bodies are fine and the codegeneration seems to work properly?
Such a situation occurs if the story diagram of the method with the missing body is erroneous. Since the implementation of methods is generated by a different code generator than the rest of the code, the code generation process can fail individually for separate methods. This is a result of missing analysis which informs immediately if a specification is valid or not. You can avoid such errors by completing the control flow of a method in each step of development. For instance, if you add a "For Each"-Activity first complete the control flow by adding all necessary transitions. Or if you add a "Success" transition add the "Failure" transition immediately before you start to implement the activity. This ensures that the code generator does not quit due to a broken control flow.
MOF 2.0 originally does not support floating point datatypes. Why can I choose InfrastructureLibrary.Core.PrimitiveTypes.Double and Float for the mapping of primitive types?
Indeed, the MOF 2.0 package InfrastructureLibrary.Core.PrimitiveTypes whether contains Double nor Float. In fact, this is not necessary as long MOF 2.0 is used for a theoretical description of modelling languages on an informational level. But, since the MOFLON approach aims to support the application of MOF 2.0 in real world scenarios based on generated code the application of floating point datatypes becomes necessary in some cases (e.g. DiaMeta). Thus, we decided not to keep away those people from the advantages of MOFLON and added this feature in contrast to the standard.
I want to create an attribute/parameter/return type of type String / Integer / Boolean / Double / ..., but I cannot find the type in the combobox. Is this a bug?
No, it is a feature. You need to define any required primitive type yourself and define an explicit mapping on the Java type. Nobody hinders you to define a modeling language where a primitive type called "Zeichenkette" is mapped on the Java type "String".
Yes. Open Options → Preferences → ToolBars and enable / disable the toolbars as you like.
Certainly. The diamond is used to distinguish the advanced association concept of UML 2.0 from the old simple concept. You can create references (→) or mutual references (↔), which work like you might be used to from Fujaba or other UML 1.x-Tools.
Simply drag the element from the package tree to the diagram. Depending on the existing package relationships, the correct representation of this element will be created in the local diagram
How can I define a subsets relationship from an association end in the local diagram to an association end in another package?
Drag the association end from the package tree onto the association end in the local diagram.
How can I define a redefines relationship from an association end in the local diagram to an association end in another package?
Drag the association end from the package tree onto the association end into the local diagram. Press and hold "Ctrl" before you release the dragged item.
Some import commandos are not generated yet (JavaSDM, JavaSDMException, FHashSet, FHashMap, ...). Simply invoke "organize imports" in Eclipse to add the missing imports.
When you install MOFLON, a stylesheet directory named "stylesheets" is created in your home directory. You can move the directory to another location or even create your own stylesheets.
When starting MOFLON, I get an error message in the console, saying: "ResourceManager : unable to find resource 'VM_global_library.vm' in any resource loader." Is this serious?
The message is just annoying. Simply ignore it.
Yes you can! Simply uncheck "Enable Dialog Mode" in "Options → Preferences. → MOFLON → Editor".
MOFLON is just a name. It is not an acronym and has no particular meaning.
