Interface BindingCodecTree
- All Superinterfaces:
BindingDataObjectCodecTreeParent<Empty>
- All Known Subinterfaces:
BindingDOMCodecServices
- All Known Implementing Classes:
BindingCodecContext
,DefaultBindingDOMCodecServices
,ForwardingBindingDOMCodecServices
,GlobalBindingDOMCodecServices
Navigable tree representing hierarchy of Binding to Normalized Node codecs. This navigable tree is associated to
a concrete set of YANG models, represented by SchemaContext and provides access to subtree specific serialization
context.
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic final record
BindingCodecTree.CodecWithPath<T extends DataObject>
A DTO holding aCommonDataObjectCodecTreeNode
and the correspondingYangInstanceIdentifier
. -
Method Summary
Modifier and TypeMethodDescription<A extends Augmentation<?>>
@NonNull BindingAugmentationCodecTreeNode<A> getAugmentationCodec
(DataObjectReference<A> path) Look up the codec for specified augmentation path.<T extends DataObject>
@NonNull BindingDataObjectCodecTreeNode<T> getDataObjectCodec
(DataObjectReference<T> path) Look up the codec for specified ordinary DataObject path.@NonNull BindingIdentityCodec
Get theBindingIdentityCodec
associated with this tree.@NonNull BindingInstanceIdentifierCodec
Get theBindingInstanceIdentifierCodec
associated with this tree.<T extends DataObject>
@NonNull CommonDataObjectCodecTreeNode<T> getSubtreeCodec
(DataObjectReference<T> path) Look up the codec for specified path.@Nullable BindingCodecTreeNode
Look up a codec by itsYangInstanceIdentifier
path.@Nullable BindingCodecTreeNode
<T extends DataObject>
@NonNull BindingCodecTree.CodecWithPath<T> Look up the codec for specified path, constructing theYangInstanceIdentifier
corresponding to it.<T extends YangData<T>>
@NonNull BindingYangDataCodecTreeNode<T> getYangDataCodec
(Class<T> yangDataClass) Get theBindingYangDataCodecTreeNode
corresponding to a particular generatedYangData
type.@NonNull BindingYangDataCodecTreeNode
<?> getYangDataCodec
(YangDataName yangDataName) Get theBindingYangDataCodecTreeNode
corresponding to a particularYangDataName
.Methods inherited from interface org.opendaylight.yangtools.binding.data.codec.api.BindingDataObjectCodecTreeParent
getStreamAugmentation, getStreamChild, getStreamDataObject
-
Method Details
-
getAugmentationCodec
<A extends Augmentation<?>> @NonNull BindingAugmentationCodecTreeNode<A> getAugmentationCodec(DataObjectReference<A> path) Look up the codec for specified augmentation path.- Type Parameters:
A
- DataObject type- Parameters:
path
- Binding path- Returns:
- A
BindingAugmentationCodecTreeNode
- Throws:
NullPointerException
- ifpath
isnull
IllegalArgumentException
- if the codec cannot be resolved
-
getDataObjectCodec
<T extends DataObject> @NonNull BindingDataObjectCodecTreeNode<T> getDataObjectCodec(DataObjectReference<T> path) Look up the codec for specified ordinary DataObject path.- Type Parameters:
T
- DataObject type- Parameters:
path
- Binding path- Returns:
- A
BindingDataObjectCodecTreeNode
- Throws:
NullPointerException
- ifpath
isnull
IllegalArgumentException
- if the codec cannot be resolved or refers to an Augmentation
-
getSubtreeCodecWithPath
<T extends DataObject> @NonNull BindingCodecTree.CodecWithPath<T> getSubtreeCodecWithPath(DataObjectReference<T> path) Look up the codec for specified path, constructing theYangInstanceIdentifier
corresponding to it.- Type Parameters:
T
- DataObject type- Parameters:
path
- Binding path- Returns:
- A
BindingCodecTree.CodecWithPath
- Throws:
NullPointerException
- ifpath
isnull
IllegalArgumentException
- if the codec cannot be resolved
-
getSubtreeCodec
<T extends DataObject> @NonNull CommonDataObjectCodecTreeNode<T> getSubtreeCodec(DataObjectReference<T> path) Look up the codec for specified path.- Type Parameters:
T
- DataObject type- Parameters:
path
- Binding path- Returns:
- A
BindingDataObjectCodecTreeNode
- Throws:
NullPointerException
- ifpath
isnull
IllegalArgumentException
- if the codec cannot be resolved
-
getSubtreeCodec
Look up a codec by itsYangInstanceIdentifier
path.- Parameters:
path
- A non-emptyYangInstanceIdentifier
- Returns:
- A
BindingCodecTreeNode
- Throws:
NullPointerException
- ifpath
isnull
IllegalArgumentException
- ifpath
is empty
-
getSubtreeCodec
-
getIdentityCodec
@NonNull BindingIdentityCodec getIdentityCodec()Get theBindingIdentityCodec
associated with this tree.- Returns:
- A BindingIdentityCodec instance.
-
getInstanceIdentifierCodec
@NonNull BindingInstanceIdentifierCodec getInstanceIdentifierCodec()Get theBindingInstanceIdentifierCodec
associated with this tree.- Returns:
- A BindingInstanceIdentifierCodec instance.
-
getYangDataCodec
<T extends YangData<T>> @NonNull BindingYangDataCodecTreeNode<T> getYangDataCodec(Class<T> yangDataClass) Get theBindingYangDataCodecTreeNode
corresponding to a particular generatedYangData
type.- Type Parameters:
T
-YangData
type- Parameters:
yangDataClass
- Class object ofYangData
type- Returns:
- A
BindingYangDataCodecTreeNode
- Throws:
NullPointerException
- ifyangDataClass
isnull
IllegalArgumentException
- if the specified type is not known
-
getYangDataCodec
Get theBindingYangDataCodecTreeNode
corresponding to a particularYangDataName
.- Parameters:
yangDataName
- aYangDataName
- Returns:
- A
BindingYangDataCodecTreeNode
- Throws:
NullPointerException
- ifyangDataName
isnull
IllegalArgumentException
- if the specified name is not known
-