Class AbstractBindingLazyContainerNode<T extends DataObject,C>

java.lang.Object
com.google.common.collect.ForwardingObject
org.opendaylight.mdsal.binding.dom.codec.spi.AbstractBindingLazyContainerNode<T,C>
Type Parameters:
T - Binding DataObject type
C - Context type
All Implemented Interfaces:
org.opendaylight.mdsal.binding.dom.codec.api.BindingLazyContainerNode<T>, org.opendaylight.yangtools.concepts.Delegator<org.opendaylight.yangtools.yang.data.api.schema.ContainerNode>, org.opendaylight.yangtools.concepts.ItemOrder<org.opendaylight.yangtools.concepts.ItemOrder.Unordered>, org.opendaylight.yangtools.concepts.ItemOrder.Unordered, org.opendaylight.yangtools.concepts.PrettyTreeAware, org.opendaylight.yangtools.yang.data.api.schema.ContainerNode, org.opendaylight.yangtools.yang.data.api.schema.DataContainer, org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild, org.opendaylight.yangtools.yang.data.api.schema.DataContainerNode, org.opendaylight.yangtools.yang.data.api.schema.DistinctContainer<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier,org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild>, org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier,org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild>, org.opendaylight.yangtools.yang.data.api.schema.NormalizedContainer<org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild>, org.opendaylight.yangtools.yang.data.api.schema.NormalizedData, org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode, org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodeContainer<org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild>, org.opendaylight.yangtools.yang.data.api.schema.OrderingAware, org.opendaylight.yangtools.yang.data.api.schema.OrderingAware.System
Direct Known Subclasses:
LazyActionInputContainerNode, LazyActionOutputContainerNode

public abstract class AbstractBindingLazyContainerNode<T extends DataObject,C> extends com.google.common.collect.ForwardingObject implements org.opendaylight.mdsal.binding.dom.codec.api.BindingLazyContainerNode<T>
A ContainerNode backed by a binding DataObject, with lazy instantiation of the ContainerNode view. This class is thread-safe.
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.opendaylight.yangtools.yang.data.api.schema.ContainerNode

    org.opendaylight.yangtools.yang.data.api.schema.ContainerNode.Builder

    Nested classes/interfaces inherited from interface org.opendaylight.yangtools.concepts.ItemOrder

    org.opendaylight.yangtools.concepts.ItemOrder.Ordered, org.opendaylight.yangtools.concepts.ItemOrder.Unordered

    Nested classes/interfaces inherited from interface org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode

    org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode.BuilderFactory

    Nested classes/interfaces inherited from interface org.opendaylight.yangtools.yang.data.api.schema.OrderingAware

    org.opendaylight.yangtools.yang.data.api.schema.OrderingAware.System, org.opendaylight.yangtools.yang.data.api.schema.OrderingAware.User
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    AbstractBindingLazyContainerNode(@NonNull org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier identifier, @NonNull T bindingData, C context)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    Collection<@NonNull org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild>
     
    org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild
    childByArg(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier child)
     
    protected abstract @GuardedBy("this") @NonNull org.opendaylight.yangtools.yang.data.api.schema.ContainerNode
     
    protected final @NonNull org.opendaylight.yangtools.yang.data.api.schema.ContainerNode
     
    boolean
     
    final T
     
    final org.opendaylight.yangtools.yang.data.api.schema.ContainerNode
     
    int
     
    final org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier
     
    org.opendaylight.yangtools.concepts.PrettyTree
     

    Methods inherited from class com.google.common.collect.ForwardingObject

    toString

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.opendaylight.yangtools.yang.data.api.schema.ContainerNode

    contract

    Methods inherited from interface org.opendaylight.yangtools.yang.data.api.schema.DistinctContainer

    findChildByArg, getChildByArg

    Methods inherited from interface org.opendaylight.yangtools.concepts.ItemOrder.Unordered

    itemOrder

    Methods inherited from interface org.opendaylight.yangtools.yang.data.api.schema.NormalizedContainer

    isEmpty, size

    Methods inherited from interface org.opendaylight.yangtools.yang.data.api.schema.OrderingAware.System

    ordering
  • Constructor Details

    • AbstractBindingLazyContainerNode

      protected AbstractBindingLazyContainerNode(@NonNull org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier identifier, @NonNull T bindingData, C context)
  • Method Details

    • getDataObject

      public final T getDataObject()
      Specified by:
      getDataObject in interface org.opendaylight.mdsal.binding.dom.codec.api.BindingLazyContainerNode<T extends DataObject>
    • name

      public final org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier name()
      Specified by:
      name in interface org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild
      Specified by:
      name in interface org.opendaylight.yangtools.yang.data.api.schema.NormalizedData
      Specified by:
      name in interface org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode
    • getDelegate

      public final org.opendaylight.yangtools.yang.data.api.schema.ContainerNode getDelegate()
      Specified by:
      getDelegate in interface org.opendaylight.yangtools.concepts.Delegator<T extends DataObject>
    • body

      public Collection<@NonNull org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild> body()
      Specified by:
      body in interface org.opendaylight.yangtools.yang.data.api.schema.DistinctContainer<T extends DataObject,C>
      Specified by:
      body in interface org.opendaylight.yangtools.yang.data.api.schema.NormalizedContainer<T extends DataObject>
      Specified by:
      body in interface org.opendaylight.yangtools.yang.data.api.schema.NormalizedData
    • childByArg

      public org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild childByArg(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier child)
      Specified by:
      childByArg in interface org.opendaylight.yangtools.yang.data.api.schema.DistinctContainer<T extends DataObject,C>
    • prettyTree

      public org.opendaylight.yangtools.concepts.PrettyTree prettyTree()
      Specified by:
      prettyTree in interface org.opendaylight.yangtools.concepts.PrettyTreeAware
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface org.opendaylight.yangtools.yang.data.api.schema.DataContainer
      Specified by:
      hashCode in interface org.opendaylight.yangtools.concepts.ItemOrder<T extends DataObject>
      Specified by:
      hashCode in interface org.opendaylight.yangtools.concepts.ItemOrder.Unordered
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface org.opendaylight.yangtools.yang.data.api.schema.DataContainer
      Specified by:
      equals in interface org.opendaylight.yangtools.concepts.ItemOrder<T extends DataObject>
      Specified by:
      equals in interface org.opendaylight.yangtools.concepts.ItemOrder.Unordered
      Overrides:
      equals in class Object
    • delegate

      protected final @NonNull org.opendaylight.yangtools.yang.data.api.schema.ContainerNode delegate()
      Specified by:
      delegate in class com.google.common.collect.ForwardingObject
    • computeContainerNode

      protected abstract @GuardedBy("this") @NonNull org.opendaylight.yangtools.yang.data.api.schema.ContainerNode computeContainerNode(C context)