Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.jxml.quick.model.qjml
Class QMCoin

    java.lang.Object
      |
      +--com.jxml.quick.model.qjml.QMCloneable
            |
            +--com.jxml.quick.model.qjml.QMCoin

All Implemented Interfaces:
  Cloneable

Direct Known Subclasses:
  QMAbstract, QMBean, QMInterface, QMLink, QMText

public abstract class QMCoin
extends QMCloneable

Models the element coin, which represents a family of elements in QJML that are used to define XML elements and attributes. Corrispondingly, QMCoin serves as a base class for classes which model that family of QJML elements. (The inheritance model used by QJML is the same model used by Java.)

Field Summary
`HashMap` | `accessors` A table of all the variables and properties implemented by this coin, keyed by the variable and property name.
`ArrayList` | `extensions` A list of all the coins which extend this one.
`boolean` | `generate` Models the generate attribute, an optional attribute which defaults to true.
`ArrayList` | `implementations` A list of all the coins which implement this one.
`String` | `label` Models the attribute label, a required attribute on the coin element.
`ArrayList` | `remList` A container for QMRem objects, which model rem elements.

Constructor Summary
`QMCoin()`

Method Summary
`void` | `buildMaps(Map coinMap, Map contentMap)` Builds the maps.
`Object` | `clone()` Returns a deep copy of this object, but in an uninitialized form.
`QMAccess` | `getAccessor(Map coinMap, String name)` Returns the object which models the named field or property element.
`abstract String` | `getClassName()` Returns the fully qualified name of the class described by this coin.
`String` | `getLabel()` Returns the unique (within the scope of the QJML document) name of the coin, as specified by the coin's label.
`void` | `init(Map coinMap, Map contentMap)` Resolve references, inheritance.

Methods inherited from class com.jxml.quick.model.qjml.QMCloneable
`clone, clone`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### label

    public String label

  Models the attribute label, a required attribute on the coin element. The label uniquely (within a document) names a coin.

### generate

    public boolean generate

  Models the generate attribute, an optional attribute which defaults to true. When set to false, the production of Java code for the class described by the coin is inhibited.

### remList

    public ArrayList remList

  A container for QMRem objects, which model rem elements. The rem elements are optional and repeating. When a class is generated from the coin, the rem elements are used to produce the JavaDoc comment which describes the class.

### extensions

    public transient ArrayList extensions

  A list of all the coins which extend this one. This list is populated when the data model is initialized.

### implementations

    public transient ArrayList implementations

  A list of all the coins which implement this one. This list is populated when the data model is initialized.

### accessors

    public transient HashMap accessors

  A table of all the variables and properties implemented by this coin, keyed by the variable and property name. This table is populated when the data model is initialized.

  The keys include both the field or property name and a prefix, as follows:

  - field_ prefixes the name of a field entry;
  - get_ prefixes the name of a property entry with the read attribute set to true;
  - set_ prefixes the name of a property entry with the write attribute set to true. (There can be two entries for property elements.)

  The field and property elements which duplicate inherited field and property elements are not included in this table, but are accessable via the getAccessor method. For example, for a read/write property on a coin which extends another coin with a read-only property by the same name, the read/write property will be put in the coin's accessor table only once--with a prefix of "set_".

Constructor Detail

### QMCoin

    public QMCoin()

Method Detail

### clone

    public Object clone()

  Returns a deep copy of this object, but in an uninitialized form.
  Overrides:
    `clone` in class `QMCloneable`

### getLabel

    public String getLabel()

  Returns the unique (within the scope of the QJML document) name of the coin, as specified by the coin's label.

### buildMaps

    public void buildMaps(Map coinMap,
                          Map contentMap)
                   throws SAXException

  Builds the maps. This method is called during initialization of the data model.

### getAccessor

    public QMAccess getAccessor(Map coinMap,
                                String name)
                         throws SAXException

  Returns the object which models the named field or property element. This can be a field or property found within the content of the coin element being modeled, or one found within the content of a coin which this coin extends.

  The keys include both the field or property name and a prefix, as follows:

  - field_ prefixes the name of a field entry;
  - get_ prefixes the name of a property entry with the read attribute set to true;
  - set_ prefixes the name of a property entry with the write attribute set to true. (There can be two entries for property elements.)

### init

    public void init(Map coinMap,
                     Map contentMap)
              throws SAXException

  Resolve references, inheritance. This method is called during initialization of the data model.

### getClassName

    public abstract String getClassName()
                                 throws SAXException

  Returns the fully qualified name of the class described by this coin.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD