Parameter and Field Metadata Classes 

IFieldInfo, SimpleInfo, ComplexInfo

Metadata information for fields and parameters is stored in IFieldInfo and two classes that implement it:

The following table describes these objects:

Interface/Class

Description

IFieldInfo

The base interface for classes representing the metadata for fields and parameters.

IFieldInfo is an abstract interface that is implemented by the classes SimpleInfo and ComplexInfo.

IFieldInfo stores only the field name, type, and length.

SimpleInfo

Implements IFieldInfo for simple parameters or fields. Stores metadata for a single (simple) field or parameter.

ComplexInfo

Stores metadata for a Structure or a Table.

ComplexInfo contains a list of IFieldInfos (a combination of SimpleInfos and ComplexInfos) describing the elements of the structure. The metadata for individual fields (IFieldInfo) of a structure or a table can be obtained from ComplexInfo.

Because the ComplexInfo class itself implements the IFieldInfo interface, this means that a ComplexInfo may contain nested ComplexInfos of indefinite depth.

Metadata Objects and the Field and Parameter Objects

The IFieldInfo and its related objects are used by both the IParameter and the IField object hierarchies. They provide field metadata for IField and its related objects and they provide parameter metadata for IParameter and its related objects.

For example, the IFieldInfo, SimpleInfo, and ComplexInfo objects are used by the IParameter, ISimpleParam, and IComplexParam objects respectively. An IParameter object contains one IFieldInfo object. When the IParameter object is an ISimpleParam object, the IFieldInfo it contains is in fact SimpleInfo. When the IParameter object is an IComplexParam object, the IFieldInfo it contains is ComplexInfo. The following diagram illustrates this relationship.

The same relationship exists between IFieldInfo and IField, ComplexInfo and IComplexField, and SimpleInfo and ISimpleField.

See Also

See the topic Using the Client Interface to make an RFC Call and its subtopics for how to use these objects to get metadata information for an RFC function module.

Also see the Java RFC HTML Reference documentation for the details of each of the classes and interfaces.