public class BindingNormalizedNodeCodecRegistry extends Object implements DataObjectSerializerRegistry, BindingCodecTreeFactory, BindingNormalizedNodeWriterFactory, BindingNormalizedNodeSerializer
| Constructor and Description |
|---|
BindingNormalizedNodeCodecRegistry(DataObjectSerializerGenerator generator) |
| Modifier and Type | Method and Description |
|---|---|
BindingCodecTree |
create(BindingRuntimeContext context)
Creates Binding Codec Tree for specified Binding runtime context.
|
BindingCodecTree |
create(org.opendaylight.yangtools.yang.model.api.SchemaContext context,
Class<?>... bindingClasses)
Creates Binding Codec Tree for specified Binding runtime context.
|
<T extends DataObject> |
deserializeFunction(InstanceIdentifier<T> path) |
Map.Entry<InstanceIdentifier<?>,DataObject> |
fromNormalizedNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier path,
org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?> data)
Translates supplied YANG Instance Identifier and NormalizedNode into
Binding data.
|
Notification |
fromNormalizedNodeNotification(org.opendaylight.yangtools.yang.model.api.SchemaPath path,
org.opendaylight.yangtools.yang.data.api.schema.ContainerNode data)
Translates supplied NormalizedNode Notification into Binding data.
|
DataObject |
fromNormalizedNodeRpcData(org.opendaylight.yangtools.yang.model.api.SchemaPath path,
org.opendaylight.yangtools.yang.data.api.schema.ContainerNode data)
Translates supplied NormalizedNode RPC input or output into Binding data.
|
InstanceIdentifier<?> |
fromYangInstanceIdentifier(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier dom)
Translates supplied YANG Instance Identifier into Binding instance
identifier.
|
BindingCodecTree |
getCodecContext() |
DataObjectSerializer |
getSerializer(Class<? extends DataObject> type) |
BindingStreamEventWriter |
newNotificationWriter(Class<? extends Notification> notification,
org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter streamWriter)
Creates a
BindingStreamEventWriter for notification which will translate to NormalizedNode model
and invoke proper events on supplied NormalizedNodeStreamWriter. |
BindingStreamEventWriter |
newRpcWriter(Class<? extends DataContainer> rpcInputOrOutput,
org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter streamWriter)
Creates a
BindingStreamEventWriter for RPC data which will translate to NormalizedNode model and invoke
proper events on supplied NormalizedNodeStreamWriter. |
BindingStreamEventWriter |
newWriter(InstanceIdentifier<?> path,
org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter domWriter)
Creates a
BindingStreamEventWriter for data tree path which will translate to NormalizedNode model
and invoke proper events on supplied NormalizedNodeStreamWriter. |
Map.Entry<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier,BindingStreamEventWriter> |
newWriterAndIdentifier(InstanceIdentifier<?> path,
org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter domWriter)
Creates a
BindingStreamEventWriter for data tree path which will translate to NormalizedNode model
and invoke proper events on supplied NormalizedNodeStreamWriter. |
void |
onBindingRuntimeContextUpdated(BindingRuntimeContext context) |
<T extends DataObject> |
toNormalizedNode(InstanceIdentifier<T> path,
T data)
Translates supplied Binding Instance Identifier and data into
NormalizedNode representation.
|
org.opendaylight.yangtools.yang.data.api.schema.ContainerNode |
toNormalizedNodeNotification(Notification data)
Translates supplied Binding Notification or output into NormalizedNode notification.
|
org.opendaylight.yangtools.yang.data.api.schema.ContainerNode |
toNormalizedNodeRpcData(DataContainer data)
Translates supplied Binding RPC input or output into NormalizedNode data.
|
org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier |
toYangInstanceIdentifier(InstanceIdentifier<?> binding)
Translates supplied Binding Instance Identifier into NormalizedNode
instance identifier.
|
public BindingNormalizedNodeCodecRegistry(DataObjectSerializerGenerator generator)
public DataObjectSerializer getSerializer(Class<? extends DataObject> type)
getSerializer in interface DataObjectSerializerRegistrypublic BindingCodecTree getCodecContext()
public void onBindingRuntimeContextUpdated(BindingRuntimeContext context)
public org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier toYangInstanceIdentifier(InstanceIdentifier<?> binding)
BindingNormalizedNodeSerializertoYangInstanceIdentifier in interface BindingNormalizedNodeSerializerbinding - Binding Instance Identifierpublic InstanceIdentifier<?> fromYangInstanceIdentifier(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier dom)
BindingNormalizedNodeSerializerfromYangInstanceIdentifier in interface BindingNormalizedNodeSerializerdom - YANG Instance Identifierpublic <T extends DataObject> Map.Entry<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier,org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?>> toNormalizedNode(InstanceIdentifier<T> path, T data)
BindingNormalizedNodeSerializertoNormalizedNode in interface BindingNormalizedNodeSerializerpath - Binding Instance Identifier pointing to datadata - Data object representing datapublic org.opendaylight.yangtools.yang.data.api.schema.ContainerNode toNormalizedNodeNotification(Notification data)
BindingNormalizedNodeSerializertoNormalizedNodeNotification in interface BindingNormalizedNodeSerializerdata - NormalizedNode representing notification datapublic org.opendaylight.yangtools.yang.data.api.schema.ContainerNode toNormalizedNodeRpcData(DataContainer data)
BindingNormalizedNodeSerializertoNormalizedNodeRpcData in interface BindingNormalizedNodeSerializerdata - NormalizedNode representing rpc datapublic Map.Entry<InstanceIdentifier<?>,DataObject> fromNormalizedNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier path, org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?> data)
BindingNormalizedNodeSerializerfromNormalizedNode in interface BindingNormalizedNodeSerializerpath - Binding Instance Identifierdata - NormalizedNode representing datapublic Notification fromNormalizedNodeNotification(org.opendaylight.yangtools.yang.model.api.SchemaPath path, org.opendaylight.yangtools.yang.data.api.schema.ContainerNode data)
BindingNormalizedNodeSerializerfromNormalizedNodeNotification in interface BindingNormalizedNodeSerializerpath - Schema Path of Notification, schema path is absolute, and consists of Notification QName.data - NormalizedNode representing datapublic DataObject fromNormalizedNodeRpcData(org.opendaylight.yangtools.yang.model.api.SchemaPath path, org.opendaylight.yangtools.yang.data.api.schema.ContainerNode data)
BindingNormalizedNodeSerializerfromNormalizedNodeRpcData in interface BindingNormalizedNodeSerializerpath - Schema path of RPC data, Schema path consists of rpc QName and input / output QName.data - NormalizedNode representing datapublic Map.Entry<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier,BindingStreamEventWriter> newWriterAndIdentifier(InstanceIdentifier<?> path, org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter domWriter)
BindingNormalizedNodeWriterFactoryBindingStreamEventWriter for data tree path which will translate to NormalizedNode model
and invoke proper events on supplied NormalizedNodeStreamWriter.
Also provides translation of supplied Instance Identifier to YangInstanceIdentifier so client code, does
not need to translate that separately.
If YangInstanceIdentifier is not needed, please use
BindingNormalizedNodeWriterFactory.newWriter(InstanceIdentifier, NormalizedNodeStreamWriter) method to conserve resources.
newWriterAndIdentifier in interface BindingNormalizedNodeWriterFactorypath - Binding Path in conceptual data tree, for which writer should
be instantiateddomWriter - Stream writer on which events will be invoked.BindingStreamEventWriter
which will write to supplied NormalizedNodeStreamWriter.public BindingStreamEventWriter newWriter(InstanceIdentifier<?> path, org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter domWriter)
BindingNormalizedNodeWriterFactoryBindingStreamEventWriter for data tree path which will translate to NormalizedNode model
and invoke proper events on supplied NormalizedNodeStreamWriter.
This variant does not provide YANG instance identifier and is useful for use-cases, where
InstanceIdentifier translation is done in other way, or YANG instance identifier is unnecessary
(e.g. notifications, RPCs).
newWriter in interface BindingNormalizedNodeWriterFactorypath - Binding Path in conceptual data tree, for which writer should
be instantiateddomWriter - Stream writer on which events will be invoked.BindingStreamEventWriter
which will write to supplied NormalizedNodeStreamWriter.public BindingStreamEventWriter newNotificationWriter(Class<? extends Notification> notification, org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter streamWriter)
BindingNormalizedNodeWriterFactoryBindingStreamEventWriter for notification which will translate to NormalizedNode model
and invoke proper events on supplied NormalizedNodeStreamWriter.newNotificationWriter in interface BindingNormalizedNodeWriterFactorynotification - Binding class representing notification,
for which writer should be instantiatedstreamWriter - Stream writer on which events will be invoked.BindingStreamEventWriter which will write to supplied
NormalizedNodeStreamWriter.public BindingStreamEventWriter newRpcWriter(Class<? extends DataContainer> rpcInputOrOutput, org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter streamWriter)
BindingNormalizedNodeWriterFactoryBindingStreamEventWriter for RPC data which will translate to NormalizedNode model and invoke
proper events on supplied NormalizedNodeStreamWriter.newRpcWriter in interface BindingNormalizedNodeWriterFactoryrpcInputOrOutput - Binding class representing RPC input or output,
for which writer should be instantiatedstreamWriter - Stream writer on which events will be invoked.BindingStreamEventWriter which will write to supplied
NormalizedNodeStreamWriter.public <T extends DataObject> com.google.common.base.Function<com.google.common.base.Optional<org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?>>,com.google.common.base.Optional<T>> deserializeFunction(InstanceIdentifier<T> path)
public BindingCodecTree create(BindingRuntimeContext context)
BindingCodecTreeFactorycreate in interface BindingCodecTreeFactorycontext - Binding Runtime Context for which Binding codecs should be
instantiated.public BindingCodecTree create(org.opendaylight.yangtools.yang.model.api.SchemaContext context, Class<?>... bindingClasses)
BindingCodecTreeFactorycreate in interface BindingCodecTreeFactorycontext - Binding Runtime Context for which Binding codecs should be
instantiated.bindingClasses - Binding Runtime Context will be constructed using bindings
which contains specified classes, in order to support
deserialization in multi-classloader environment.Copyright © 2019 OpenDaylight. All rights reserved.