public final class StructureInfo extends java.lang.Object implements java.io.Serializable, StaticStructure
StructureInfo class contains the metamodel information of all the
field elements, constant elements and enumeration elements contained in the
structure element.
In the interface definition language, API designers have
the ability to include all the fields from one structure to another structure.
This is done by using an annotation @Include on the structure in which
we want to add the fields. If this annotation is present, the list of fields in
the StructureInfo will also contain the fields that are being included.
The annotation information is also retained in the getMetadata() element as
well.
| Modifier and Type | Class and Description |
|---|---|
static class |
StructureInfo.Builder
Builder class for
StructureInfo. |
static class |
StructureInfo.Type
The
Type enumeration class defines the kind of this structure element. |
| Modifier and Type | Field and Description |
|---|---|
protected StructValue |
__dynamicStructureFields |
| Modifier | Constructor and Description |
|---|---|
|
StructureInfo()
Default constructor.
|
protected |
StructureInfo(StructValue __dynamicStructureFields) |
| Modifier and Type | Method and Description |
|---|---|
<T extends Structure> |
_convertTo(java.lang.Class<T> clazz)
Converts this structure into an instance of the provided class structure
if possible.
|
java.lang.String |
_getCanonicalName()
Returns the canonical name of the structure.
|
static java.lang.String |
_getCanonicalTypeName()
Returns the canonical type name.
|
static com.vmware.vapi.bindings.type.StructType |
_getClassType()
WARNING: Internal method, subject to change in future versions.
|
StructValue |
_getDataValue()
Returns this
Structure represented in the dynamic
DataValue model. |
DataValue |
_getDynamicField(java.lang.String fieldName)
Get dynamic filed value.
|
java.util.Set<java.lang.String> |
_getDynamicFieldNames()
Get the names of the dynamic fields in the structure.
|
com.vmware.vapi.bindings.type.StructType |
_getType()
WARNING: Internal method, subject to change in future versions.
|
boolean |
_hasTypeNameOf(java.lang.Class<? extends Structure> clazz)
Checks that the runtime type name matches the type name from the binding
class.
|
static StructureInfo |
_newInstance(StructValue structValue)
WARNING: Internal method, subject to change in future versions.
Returns new instance of this binding class and injects the provided data value. WARNING: The returned object is not fully initialized. |
void |
_setDynamicField(java.lang.String fieldName,
DataValue fieldValue)
Sets a dynamic field value.
|
protected void |
_updateDataValue(StructValue structValue) |
void |
_validate()
Validates the state of the discriminated unions and HasFieldsOf
restrictions (if any) in this Java language binding
Structure. |
boolean |
equals(java.lang.Object obj) |
java.util.Map<java.lang.String,ConstantInfo> |
getConstants()
Metamodel information of all the constant elements contained in the structure
element.
|
java.lang.String |
getDocumentation()
English language documentation for a structure element.
|
java.util.Map<java.lang.String,EnumerationInfo> |
getEnumerations()
Metamodel information of all the enumeration elements contained in the structure
element.
|
java.util.List<FieldInfo> |
getFields()
Metamodel information of all the field elements.
|
java.util.Map<java.lang.String,ElementMap> |
getMetadata()
Generic metadata elements for the structure element.
|
java.lang.String |
getName()
Dot separated name of the structure element.
|
StructureInfo.Type |
getType()
Type of the structure.
|
int |
hashCode() |
void |
setConstants(java.util.Map<java.lang.String,ConstantInfo> constants)
Metamodel information of all the constant elements contained in the structure
element.
|
void |
setDocumentation(java.lang.String documentation)
English language documentation for a structure element.
|
void |
setEnumerations(java.util.Map<java.lang.String,EnumerationInfo> enumerations)
Metamodel information of all the enumeration elements contained in the structure
element.
|
void |
setFields(java.util.List<FieldInfo> fields)
Metamodel information of all the field elements.
|
void |
setMetadata(java.util.Map<java.lang.String,ElementMap> metadata)
Generic metadata elements for the structure element.
|
void |
setName(java.lang.String name)
Dot separated name of the structure element.
|
void |
setType(StructureInfo.Type type)
Type of the structure.
|
java.lang.String |
toString()
Returns a string representation of this structure.
|
protected final StructValue __dynamicStructureFields
public StructureInfo()
protected StructureInfo(StructValue __dynamicStructureFields)
public java.lang.String getName()
public void setName(java.lang.String name)
name - New value for the property.public StructureInfo.Type getType()
public void setType(StructureInfo.Type type)
type - New value for the property.public java.util.Map<java.lang.String,EnumerationInfo> getEnumerations()
Map is the identifier of the
enumeration element and the value is the metamodel information of the
enumeration element.Map must be an identifier for the resource type: com.vmware.vapi.enumeration. When methods return a value of this class as a
return value, the key in the property Map will be an
identifier for the resource type: com.vmware.vapi.enumeration.public void setEnumerations(java.util.Map<java.lang.String,EnumerationInfo> enumerations)
Map is the identifier of the
enumeration element and the value is the metamodel information of the
enumeration element.enumerations - New value for the property.
When clients pass a value of this class as a parameter, the key in the property
Map must be an identifier for the resource type: com.vmware.vapi.enumeration. When methods return a value of this class as a
return value, the key in the property Map will be an
identifier for the resource type: com.vmware.vapi.enumeration.public java.util.Map<java.lang.String,ConstantInfo> getConstants()
Map is the name of the constant
element and the value in the Map is the metamodel information
for the constant element.public void setConstants(java.util.Map<java.lang.String,ConstantInfo> constants)
Map is the name of the constant
element and the value in the Map is the metamodel information
for the constant element.constants - New value for the property.public java.util.List<FieldInfo> getFields()
public void setFields(java.util.List<FieldInfo> fields)
fields - New value for the property.public java.util.Map<java.lang.String,ElementMap> getMetadata()
Map is the name of the metadata element and the value is the data
associated with that metadata element.
The MetadataIdentifier contains possible string
values for keys in the Map.
public void setMetadata(java.util.Map<java.lang.String,ElementMap> metadata)
Map is the name of the metadata element and the value is the data
associated with that metadata element.
The MetadataIdentifier contains possible string
values for keys in the Map.
metadata - New value for the property.public java.lang.String getDocumentation()
public void setDocumentation(java.lang.String documentation)
documentation - New value for the property.public com.vmware.vapi.bindings.type.StructType _getType()
StaticStructureStructType instance representing the static bindings
type for this Structure._getType in interface StaticStructureStructTypepublic StructValue _getDataValue()
StructureStructure represented in the dynamic
DataValue model.
Attempts to change the returned StructValue
representation are not required to change the state of this structure.
Actually the behavior is implementation dependent and is unspecified.
In general the returned value shouldn't be changed.
_getDataValue in interface StructureStructValue representing this structureprotected void _updateDataValue(StructValue structValue)
public void _validate()
StaticStructureStructure.
More precisely, for each union: given value of the discriminant/tag
field (@UnionTag in the IDL) of an union in this structure,
validates that:
_validate in interface StaticStructurepublic boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectpublic java.lang.String toString()
StaticStructureIn general no code should depend on the format of the resulting string. E.g. there must be no attempts to parse for re-creation of the original instance.
toString in interface StaticStructuretoString in class java.lang.Objectpublic boolean _hasTypeNameOf(java.lang.Class<? extends Structure> clazz)
Structure_hasTypeNameOf in interface Structureclazz - type of the result structure. cannot be null.public <T extends Structure> T _convertTo(java.lang.Class<T> clazz)
Structure_convertTo in interface Structureclazz - type of the result structure. cannot be null.CoreException is thrown otherwise.public void _setDynamicField(java.lang.String fieldName,
DataValue fieldValue)
StaticStructure_setDynamicField in interface StaticStructurefieldName - canonical name of the dynamic field to setfieldValue - the value of the fieldpublic DataValue _getDynamicField(java.lang.String fieldName)
StaticStructure_getDynamicField in interface StaticStructurefieldName - the canonical name of the dynamic fieldDataValue of the dynamic fieldpublic java.util.Set<java.lang.String> _getDynamicFieldNames()
StaticStructure_getDynamicFieldNames in interface StaticStructurepublic static com.vmware.vapi.bindings.type.StructType _getClassType()
StructType instance representing the static bindings
type for this Structure.public java.lang.String _getCanonicalName()
Structureorg.example.FooBar would turn into
org.example.foo_bar._getCanonicalName in interface Structurepublic static java.lang.String _getCanonicalTypeName()
_getCanonicalName().public static StructureInfo _newInstance(StructValue structValue)
structValue - the source of the data contained in the binding object. Could
contain more data than fields of this class can describe i.e.
newer version of the binding object. Could be null.StructType