pmMDA cartridges
Two
cartridges
are responsible to generate the pmMDA.NET artefacts out of the UML model.
.net-dog cartridge
This cartridge generates the C# source code for the pmMDA.NET framework.
With the stereotype and the
tagged values can be configurated
which artefacts are generated. I.e. if a class in the UML model has the stereotype
"DataObject" a data object for
this class is generated.
Currently the following artefacts are supported:
-
Data object with its constructors, fields and properties.
The code is well indented and fully documented following the
coding guidelines and
xml documentation conventions.
Generated members per data object:
-
Property to read the identifier.
-
Property to read the timestamp.
-
pmMDA properties,
which are defined in the UML model, are generated as
.NET properties.
-
For each
indexed property
the following class members are generated:
-
A read only property which returns the items as array if the property is
readable.
-
Method to add an item if the property is writable.
-
Method to add a range of items if the property is writable.
-
Method to remove an item if the property is writable.
-
Method to get an item at a specified index if the property is a
bag or a list
and is
readable.
-
Method to set an item at a specified index if the property is a
bag or a list
and is
writable.
-
Method to remove all items if the property is
writable.
-
A lightweight representation of each data object, which has the
lightweight flag set, is
generated. Lightweight objects are used for navigation and display purposes when it
would be too expensive to send the complete graph of data object instances. Typical
usage is displaying a navigation tree in the user interface.
-
Helper classes are generated to provide a complete implementation of the
visitor pattern on all data object
classes defined in the same package.
.net-nhibernate cartridge
The NHibernate.NET cartridge generates artefacts to make data objects persistent.
Currently the following persistency artefacts are supported.
-
The MySQL scripts for table creation and data integrity.
-
The XML description file for the Hibernate.NET impedance mismatch persistency layer.