Interface NetworkInstance

  • All Superinterfaces:
    org.opendaylight.yangtools.yang.binding.Augmentable<NetworkInstance>, org.opendaylight.yangtools.yang.binding.BindingObject, org.opendaylight.yangtools.yang.binding.ChildOf<NetworkInstances>, org.opendaylight.yangtools.yang.binding.DataContainer, org.opendaylight.yangtools.yang.binding.DataObject, org.opendaylight.yangtools.yang.binding.Identifiable<NetworkInstanceKey>

    @Generated("mdsal-binding-generator")
    public interface NetworkInstance
    extends org.opendaylight.yangtools.yang.binding.ChildOf<NetworkInstances>, org.opendaylight.yangtools.yang.binding.Augmentable<NetworkInstance>, org.opendaylight.yangtools.yang.binding.Identifiable<NetworkInstanceKey>
    Network instances configured on the local system

    This class represents the following YANG schema fragment defined in module openconfig-network-instance

     list network-instance {
       key name;
       leaf name {
         type leafref {
           path ../config/name;
         }
       }
       container config {
         uses network-instance-config;
         uses network-instance-l3vrf-config {
           when "../type = 'L3VRF'" {
           }
         }
       }
       container state {
         config false;
         uses network-instance-config;
         uses network-instance-l3vrf-config {
           when "../type = 'L3VRF'" {
           }
         }
         uses network-instance-state;
       }
       container inter-instance-policies {
         uses rpol:apply-policy-group;
       }
       container table-connections {
         list table-connection {
           key "src-table dst-table";
           leaf src-table {
             type leafref {
               path ../config/src-table;
             }
           }
           leaf dst-table {
             type leafref {
               path ../config/dst-table;
             }
           }
           container config {
             uses inter-table-policies-config;
           }
           container state {
             config false;
             uses inter-table-policies-config;
           }
           uses rpol:apply-policy-group;
         }
       }
       container tables {
         list table {
           key table-name;
           leaf table-name {
             type leafref {
               path ../config/table-name;
             }
           }
           container config {
             uses table-config;
           }
           container state {
             config false;
             uses table-config;
           }
         }
       }
       container interfaces {
         container config {
           uses instance-interfaces-config;
         }
         container state {
           config false;
           uses instance-interfaces-config;
           uses instance-interfaces-state;
         }
       }
       container connection-points {
         list connection-point {
           key connection-point-id;
           leaf connection-point-id {
             type leafref {
               path ../config/connection-point-id;
             }
           }
           container config {
             uses instance-connection-point-config;
           }
           container state {
             config false;
             uses instance-connection-point-config;
             uses instance-connection-point-state;
           }
           container endpoints {
             when "../config/type = 'L2P2P' or ../config/type = 'L2VSI'" {
             }
             list endpoint {
               key endpoint-id;
               leaf endpoint-id {
                 type leafref {
                   path ../config/endpoint-id;
                 }
               }
               container config {
                 uses instance-endpoint-config;
               }
               container state {
                 config false;
                 uses instance-endpoint-config;
                 uses instance-endpoint-state;
               }
             }
           }
         }
       }
       container protocols {
         list protocol {
           key "identifier name";
           leaf identifier {
             type leafref {
               path ../config/identifier;
             }
           }
           leaf name {
             type leafref {
               path ../config/name;
             }
           }
           container config {
             uses protocols-config;
           }
           container state {
             config false;
             uses protocols-config;
             uses protocols-state;
           }
           container static {
             when "../config/identifier = 'STATIC'" {
             }
             uses lroute:local-static-top;
           }
           container aggregate {
             when "../config/identifier = 'LOCAL-AGGREGATE'" {
             }
             uses lroute:local-aggregate-top;
           }
         }
       }
     }
     

    To create instances of this class use NetworkInstanceBuilder.

    See Also:
    NetworkInstanceBuilder, NetworkInstanceKey
    • Field Detail

      • QNAME

        static final @NonNull org.opendaylight.yangtools.yang.common.QName QNAME
        YANG identifier of the statement represented by this class.
    • Method Detail

      • implementedInterface

        default Class<NetworkInstance> implementedInterface()
        Specified by:
        implementedInterface in interface org.opendaylight.yangtools.yang.binding.DataContainer
        Specified by:
        implementedInterface in interface org.opendaylight.yangtools.yang.binding.DataObject
      • bindingHashCode

        static int bindingHashCode​(@NonNull NetworkInstance obj)
        Default implementation of Object.hashCode() contract for this interface. Implementations of this interface are encouraged to defer to this method to get consistent hashing results across all implementations.
        Parameters:
        obj - Object for which to generate hashCode() result.
        Returns:
        Hash code value of data modeled by this interface.
        Throws:
        NullPointerException - if obj is null
      • bindingEquals

        static boolean bindingEquals​(@NonNull NetworkInstance thisObj,
                                     Object obj)
        Default implementation of Object.equals(Object) contract for this interface. Implementations of this interface are encouraged to defer to this method to get consistent equality results across all implementations.
        Parameters:
        thisObj - Object acting as the receiver of equals invocation
        obj - Object acting as argument to equals invocation
        Returns:
        True if thisObj and obj are considered equal
        Throws:
        NullPointerException - if thisObj is null
      • bindingToString

        static String bindingToString​(@NonNull NetworkInstance obj)
        Default implementation of Object.toString() contract for this interface. Implementations of this interface are encouraged to defer to this method to get consistent string representations across all implementations.
        Parameters:
        obj - Object for which to generate toString() result.
        Returns:
        String value of data modeled by this interface.
        Throws:
        NullPointerException - if obj is null
      • getName

        String getName()
        Return name, or null if it is not present.
             
                 A unique name identifying the network instance
             
         
        Returns:
        String name, or null if it is not present.
      • requireName

        default @NonNull String requireName()
        Return name, guaranteed to be non-null.
             
                 A unique name identifying the network instance
             
         
        Returns:
        String name, guaranteed to be non-null.
        Throws:
        NoSuchElementException - if name is not present
      • getConfig

        Config getConfig()
        Return config, or null if it is not present.
             
                 Configuration parameters relating to a network instance
             
         
        Returns:
        Config config, or null if it is not present.
      • getState

        State getState()
        Return state, or null if it is not present.
             
                 Operational state parameters relating to a network instance
             
         
        Returns:
        State state, or null if it is not present.
      • getInterInstancePolicies

        InterInstancePolicies getInterInstancePolicies()
        Return interInstancePolicies, or null if it is not present.
             
                 Policies dictating how RIB or FIB entries are imported to and exported from this
                 instance
             
         
        Returns:
        InterInstancePolicies interInstancePolicies, or null if it is not present.
      • getTableConnections

        TableConnections getTableConnections()
        Return tableConnections, or null if it is not present.
             
                 Policies dictating how RIB or FIB entries are propagated between tables
             
         
        Returns:
        TableConnections tableConnections, or null if it is not present.
      • getTables

        Tables getTables()
        Return tables, or null if it is not present.
             
                 The routing tables that are managed by this network instance
             
         
        Returns:
        Tables tables, or null if it is not present.
      • getInterfaces

        Interfaces getInterfaces()
        Return interfaces, or null if it is not present.
             
                 Interfaces associated with this network intance
             
         
        Returns:
        Interfaces interfaces, or null if it is not present.
      • getConnectionPoints

        ConnectionPoints getConnectionPoints()
        Return connectionPoints, or null if it is not present.
             
                 The set of connection points within a forwarding instance
             
         
        Returns:
        ConnectionPoints connectionPoints, or null if it is not present.
      • getProtocols

        Protocols getProtocols()
        Return protocols, or null if it is not present.
             
                 The routing protocols that are enabled for this network-instance.
             
         
        Returns:
        Protocols protocols, or null if it is not present.