public interface StructureSpecification extends UaDataTypeSpecification
It is not recommended to manually make StructureSpecification instances, but it is technically
possible via builder() to create a StructureSpecification.Builder.
| Modifier and Type | Interface and Description |
|---|---|
static interface |
StructureSpecification.Builder<T extends Structure.Builder>
Builder for
StructureSpecification. |
static class |
StructureSpecification.StructureType
Type of a
Structure. |
UaNamespaceTranslateable.Context| Modifier and Type | Method and Description |
|---|---|
static StructureSpecification.Builder<Structure.Builder> |
builder()
Creates a new builder.
|
UaNodeId |
getBinaryEncodeId() |
Function<UaDataTypeSpecification,? extends Structure.Builder> |
getBuilderSupplier()
Returns value set by
StructureSpecification.Builder.setBuilderSupplier(Function). |
FieldSpecification |
getField(String name)
Get FieldSpecification that has the given name.
|
List<String> |
getFieldNames()
Returns the field names of the Structure as an unmodifiable list.
|
List<FieldSpecification> |
getFields()
Returns the fields as an unmodifiable list.
|
Class<? extends Structure> |
getJavaClass()
Returns the java Class of Structures that are returned by the
toStructureBuilder(). |
UaNodeId |
getJsonEncodeId() |
StructureSpecification.StructureType |
getStructureType() |
default UaNodeId |
getSuperTypeId()
Returns the TypeId of the direct supertype.
|
Set<UaNodeId> |
getSuperTypeIds()
Returns an unmodifiable
Set of all supertypes (direct and indirect) for the Structure
type this specification models. |
UaNodeId |
getXmlEncodeId()
Returns the XML encoding ExpandedNodeId, can be null if not supported.
|
StructureSpecification.Builder |
toBuilder()
Returns a
StructureSpecification.Builder initialized to the state of this
StructureSpecification. |
Structure.Builder |
toInstanceBuilder()
Creates a
Structure.Builder implementation that creates Structures that match this
specification. |
default Structure.Builder |
toStructureBuilder()
Deprecated.
use
toInstanceBuilder() instead |
StructureSpecification |
withTranslatedNamespaces(UaNamespaceTranslateable.Context context)
Returns a deep copy of itself where all where every namespace index and uri plus server index
and uri (see
ExpandedNodeId, UaExpandedNodeId) has been swapped based on the
given UaNamespaceTranslateable.Context. |
getName, getTypeId, getXmlName, isAbstract, toDataTypeDefinitionstatic StructureSpecification.Builder<Structure.Builder> builder()
UaNodeId getBinaryEncodeId()
Function<UaDataTypeSpecification,? extends Structure.Builder> getBuilderSupplier()
StructureSpecification.Builder.setBuilderSupplier(Function). Important! This method is
only intended for SDK internal usage for the purposes of using this when creating
StructureSpecifications of subtypes. Use toInstanceBuilder() for obtaining
Structure.Builder.FieldSpecification getField(String name)
FieldSpecification.getName() of one of the FieldSpecification returned by
getFields().name - name of the fieldIllegalArgumentException - if this StructureSpecification does not have the
field.List<String> getFieldNames()
getFields() for
more specific field type info.List<FieldSpecification> getFields()
Class<? extends Structure> getJavaClass()
toStructureBuilder().getJavaClass in interface UaDataTypeSpecificationUaNodeId getJsonEncodeId()
StructureSpecification.StructureType getStructureType()
default UaNodeId getSuperTypeId()
StructureSpecification
modeling exactly UaDataTypeIds.Structure this will return
UaDataTypeIds.Structure.Set<UaNodeId> getSuperTypeIds()
Set of all supertypes (direct and indirect) for the Structure
type this specification models. The UaDataTypeSpecification.getTypeId() is not part of this set (except for
the StructureSpecification modeling UaDataTypeIds.Structure). The
UaDataTypeIds.Structure is always part of this set. The iteration order is root->leaf,
thus the UaDataTypeIds.Structure always iterated first and the direct subtype is last.UaNodeId getXmlEncodeId()
StructureSpecification.Builder toBuilder()
StructureSpecification.Builder initialized to the state of this
StructureSpecification.Structure.Builder toInstanceBuilder()
Structure.Builder implementation that creates Structures that match this
specification. By default returns DynamicStructure.Builder unless more specific
supplier was given in the Builder of this StructureSpecification.@Deprecated default Structure.Builder toStructureBuilder()
toInstanceBuilder() insteadStructure.Builder implementation that creates Structures that match this
specification. By default returns DynamicStructure.Builder unless more specific
supplier was given in the Builder of this StructureSpecification.StructureSpecification withTranslatedNamespaces(UaNamespaceTranslateable.Context context)
UaNamespaceTranslateableExpandedNodeId, UaExpandedNodeId) has been swapped based on the
given UaNamespaceTranslateable.Context. Returning the same object is allowed if the type is immutable and the
result is equal to this. Note that for Structure types if the
UaDataTypeSpecification translation is active the returned type can be of different
java class.withTranslatedNamespaces in interface UaNamespaceTranslateable<UaDataTypeSpecification>Copyright © 2026. All rights reserved.