import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter;
/**
- * Subtree codec specific to model subtree between Java Binding and
- * NormalizedNode.
+ * Subtree codec specific to model subtree between Java Binding and NormalizedNode.
*/
@Beta
public interface BindingCodecTreeNode<T extends DataObject> extends BindingNormalizedNodeCodec<T> {
/**
- * Returns binding class of interface which represents API of current
- * schema node.
- *
- * The result is same as invoking {@link DataObject#getImplementedInterface()}
- * on instance of data.
+ * Returns binding class of interface which represents API of current schema node. The result is same as invoking
+ * {@link DataObject#getImplementedInterface()} on instance of data.
*
* @return interface which defines API of binding representation of data.
*/
Class<T> getBindingClass();
/**
- * Returns child context as if it was walked by
- * {@link BindingStreamEventWriter}. This means that to enter case, one must
- * issue getChild(ChoiceClass).getChild(CaseClass).
+ * Returns child context as if it was walked by {@link BindingStreamEventWriter}. This means that to enter case,
+ * one must issue getChild(ChoiceClass).getChild(CaseClass).
*
* @param childClass Child class by Biding Stream navigation
* @return Context of child
<E extends DataObject> BindingCodecTreeNode<E> streamChild(@Nonnull Class<E> childClass);
/**
- * Returns child context as if it was walked by
- * {@link BindingStreamEventWriter}. This means that to enter case, one must
- * issue getChild(ChoiceClass).getChild(CaseClass).
+ * Returns child context as if it was walked by {@link BindingStreamEventWriter}. This means that to enter case,
+ * one must issue getChild(ChoiceClass).getChild(CaseClass).
*
- * This method differs from {@link #streamChild(Class)}, that is less
- * stricter for interfaces representing augmentation and cases, that
- * may return {@link BindingCodecTreeNode} even if augmentation interface
- * containing same data was supplied and does not represent augmentation
- * of this node.
+ * <p>
+ * This method differs from {@link #streamChild(Class)}, that is less strict for interfaces representing
+ * augmentation and cases, that may return {@link BindingCodecTreeNode} even if augmentation interface containing
+ * same data was supplied and does not represent augmentation of this node.
*
* @param childClass
* @return Context of child or Optional absent is supplied class is not
* applicable in context.
*/
- <E extends DataObject> Optional<? extends BindingCodecTreeNode<E>> possibleStreamChild(@Nonnull Class<E> childClass);
+ <E extends DataObject> Optional<? extends BindingCodecTreeNode<E>> possibleStreamChild(
+ @Nonnull Class<E> childClass);
/**
- * Returns nested node context using supplied YANG Instance Identifier
+ * Returns nested node context using supplied YANG Instance Identifier.
*
* @param child
* Yang Instance Identifier Argument
BindingCodecTreeNode<?> yangPathArgumentChild(@Nonnull YangInstanceIdentifier.PathArgument child);
/**
- * Returns nested node context using supplied Binding Instance Identifier
- * and adds YANG instance identifiers to supplied list.
+ * Returns nested node context using supplied Binding Instance Identifier and adds YANG instance identifiers to
+ * the supplied list.
*
* @param arg
* Binding Instance Identifier Argument
@Nullable List<YangInstanceIdentifier.PathArgument> builder);
/**
- * Returns codec which uses caches serialization / deserialization results
+ * Returns codec which uses caches serialization / deserialization results.
*
+ * <p>
* Caching may introduce performance penalty to serialization / deserialization
* but may decrease use of heap for repetitive objects.
*
- *
* @param cacheSpecifier Set of objects, for which cache may be in place
* @return Codec whihc uses cache for serialization / deserialization.
*/
* @throws IllegalArgumentException If supplied {@code arg} is not valid.
*/
@Beta
- @Nullable InstanceIdentifier.PathArgument deserializePathArgument(@Nullable YangInstanceIdentifier.PathArgument arg);
+ @Nullable InstanceIdentifier.PathArgument deserializePathArgument(
+ @Nullable YangInstanceIdentifier.PathArgument arg);
Object getSchema();
}