How CIM Maps to the Java Programming Language
The following table describes how CIM elements map to elements of the
Java programming language.
Table 7-2 How CIM Elements Map to Java Elements
|
|
Class |
The CIM class name is used as the
basis for the name of the generated Java source files. The generated
Java classes follow the same inheritance as defined in the class-subclass relationships
in the MOF. |
Property |
An accessor and a mutator method are created for each
CIM property. The CIM property name is used as the basis for
the associated accessor and mutator methods. |
Method |
For each CIM method, a comparable Java
method is created. The method name is used as the basis for
the related Java method name. The return value is the same, accounting
for the Java data type mapping. Input and output parameters are used
as arguments to the Java method. Output parameters are not directly included
in the method signature. Instead, output parameters are encapsulated in an output
container object that is included as a method parameter. |
Qualifier |
|
Association |
Nothing specific required. |
Indication |
Nothing specific required. |
Reference |
For each CIM reference, a reference
to a generated Java interface is created. |
Trigger |
Nothing specific required. |
Schema |
Nothing specific required. |
|
The following table describes how CIM data types map to Java data
types.
Table 7-3 How CIM Data Types Map to Java Data Elements
|
|
|
|
uint8 X |
UnsignedInt8 |
UnsignedInt8 getX(); |
void setX(UnsignedInt8 x); |
sint8 X |
Byte |
Byte getX(); |
void setX(Byte x); |
uint16 X |
UnsignedInt16 |
UnsignedInt16 getX(); |
void setX(UnsignedInt16 x); |
sint16 X |
Short |
Short getX(); |
void setX(Short x); |
uint32 X |
UnsignedInt32 |
UnsignedInt32 getX(); |
void setX(UnsignedInt32 x); |
sint32 X |
Integer |
Integer getX(); |
void setX(Integer x); |
uint64 X |
UnsignedInt64 |
UnsignedInt64 getX(); |
void setX(UnsignedInt64 x); |
sint64 X |
Long |
Long getX(); |
void setX(Long x); |
String X |
String |
String getX(); |
void setX(String x); |
Boolean X |
Boolean |
Boolean isX(); |
void setX(Boolean x); |
real32 X |
Float |
Float getX(); |
void setX(Float x); |
real64 X |
Double |
Double getX(); |
void setX(Double x); |
DateTime X |
CIMDateTime |
CIMDateTime getX(); |
void setX(CIMDateTime x); |
Reference X |
CIMObjectPath |
CIMObjectPath getX(); |
void setX(CIMObjectPath x); |
char16 X |
Character |
Character getX(); |
void setX(Character x); |
|
The following table lists the meta qualifiers that refine the definition of
the meta constructs in the model. These qualifiers are mutually exclusive and
are used to refine the actual usage of an object class or
property declaration within the MOF syntax.
Table 7-4 Meta Qualifiers
|
|
|
|
Association |
class |
Boolean |
No affect on mapping |
Indication |
class |
Boolean |
Class is abstract |
|
The following table lists the standard qualifiers and the effect that these
qualifiers have on the mapping of a CIM object to a bean.
There is no support for optional qualifiers. Javadoc API documentation is produced
for each interface and class based on this mapping.
Table 7-5 Standard Qualifiers
|
|
|
ABSTRACT |
Class, Association, Indication |
The class
is abstract and has no effect on the Java programming language interfaces. |
DESCRIPTION |
Any |
The
information that is provided generates Javadoc comments in the source file. |
DISPLAYNAME |
Property |
An accessor
method for the display name is created: public String displayNameForProperty(); |
IN |
Parameter |
Determines the method signature. |
OUT |
Parameter |
Determines the method
parameter signature and return values. |
TERMINAL |
Class |
Class or interface is final. |
UNITS |
Property, Method, Parameter |
Another accessor
method is created: public String getpropertyUnits(); |
VALUEMAP |
Property, Method, Parameter |
Beans contain generated constants for each property in
a CIM class that has a CIM ValueMap or a Values qualifier.
The way in which the constant name and constant value are obtained
to generate these class variables depends on the data type of the
property and the qualifiers that the property possesses.
Note - The ValueMap and Values qualifiers
as defined in the CIM specification have meanings contrary to what the
qualifier names might imply. ValueMap defines the legal set of values for
a property. Values provides translation between an integer value and a string.
|
VALUES |
Property,
Method, Parameter |
Beans contain generated constants for each property in a CIM class
that has a CIM ValueMap or a Values qualifier. The way in
which the constant name and constant value are obtained to generate these
class variables depends on the data type of the property and qualifiers
that the property possesses.
Note - The ValueMap and Values qualifiers as defined in the
CIM specification have meanings contrary to what the qualifier names might imply.
ValueMap defines the legal set of values for a property. Values provides
translation between an integer value and a string.
|
VERSION |
Class, Schema, Association, Indication |
Class possesses
a getClassVersion() method |
|
The following table describes how MOF elements map to Java elements.
Table 7-6 How MOF Elements Map to Java Elements
|
|
Description qualifier |
Description of the class, property, or method |
Complete MOF representation of the
class |
The Javadoc class description for both the Java interface and the implementation
bean |
|