|
JeeWiz Architect's Guide
|
|
|
|
Contents
|
|
|
Chapter 16. 'JeeWiz' Reference
This is documentation of the JeeWiz Meta-Meta model, as a JeeWiz Meta-Model.
In other words, this describes what you can write in a JeeWiz meta-model.
Meta-model definitions are used to produce
(a) the Java code for reading in models and
(b) the documentation of the meta-models.
However, the implementation of the JeeWiz meta-model is hard-coded in Java rather than being generated by JeeWiz.
So, while the meta-model definition given here (in jeewiz/resources/JeeWiz/specification) can be generated into Java code,
the generated Jar file is not used - only the documentation is used.
Because a JeeWiz meta-model usually includes helper classes written in Java,
the meta-model is written in XML with embedded Java. There is no support in JeeWiz for modeling meta-models in UML.
The output of generating the Java code for a JeeWiz meta-model is a set of Java classes which hold the information read in from the model.
The mapping from the model to the Java classes copies the Ant approach:
- properties are defined by getters and setters using the property name (e.g. getName(), setName(String))
- nested elements are added by an adder (e.g. addChoice( MetaChoice choice )).
A group of nested elements is called a list in JeeWiz;
the type of object instantiated for adding to the list is defined by list, and is then used as the parameter type
(i.e. 'MetaChoice' is the class named by the choice list so this becomes the parameter on the 'addChoice').
Model Information
|
| Name | jeewiz
|
| DescriptiveName | JeeWiz
|
| Package | uk.co.nte.jw.components.jeewiz
|
16.1 MetaChoice Object
16.2 MetaClass Object
16.3 MetaContainedElement Object
16.4 MetaContainedElementBase Object
16.5 MetaDescription Object
16.6 MetaElementBase Object
16.7 MetaFactor Object
16.8 MetaList Object
16.9 MetaModel Object
16.10 MetaProperty Object
16.11 MetaPropertyBase Object
16.12 MetaValidator Object