Interface ElanInstance

  • All Superinterfaces:
    org.opendaylight.yangtools.yang.binding.Augmentable<ElanInstance>, org.opendaylight.yangtools.yang.binding.BindingObject, org.opendaylight.yangtools.yang.binding.ChildOf<ElanInstances>, org.opendaylight.yangtools.yang.binding.DataContainer, org.opendaylight.yangtools.yang.binding.DataObject, org.opendaylight.yangtools.yang.binding.Identifiable<ElanInstanceKey>

    public interface ElanInstance
    extends org.opendaylight.yangtools.yang.binding.ChildOf<ElanInstances>, org.opendaylight.yangtools.yang.binding.Augmentable<ElanInstance>, org.opendaylight.yangtools.yang.binding.Identifiable<ElanInstanceKey>
    Specifies the name of the elan instance. It is a string of 1 to 31 case-sensitive characters.

    This class represents the following YANG schema fragment defined in module elan

     list elan-instance {
       key elan-instance-name;
       leaf elan-instance-name {
         type string;
       }
       leaf elan-tag {
         type uint32;
       }
       leaf segment-type {
         type identityref {
           base segment-type-base;
         }
       }
       leaf segmentation-id {
         type uint32;
       }
       leaf physical-network-name {
         type string;
       }
       leaf external {
         type boolean;
         default false;
       }
       leaf mac-timeout {
         type uint32 {
           range 0..65535;
         }
       }
       leaf description {
         type string {
           length 1..254;
         }
       }
       list elan-segments {
         key segmentation-index;
         leaf segmentation-index {
           type uint32;
         }
         leaf physical-network-name {
           type string;
         }
         leaf segment-type {
           type identityref {
             base segment-type-base;
           }
         }
         leaf segmentation-id {
           type uint32;
         }
       }
       list external-teps {
         key tep-ip;
         leaf tep-ip {
           type inet:ip-address;
         }
         leaf nodeid {
           type string;
         }
       }
     }
     
    The schema path to identify an instance is elan/elan-instances/elan-instance

    To create instances of this class use ElanInstanceBuilder.

    See Also:
    ElanInstanceBuilder, ElanInstanceKey
    • Field Detail

      • QNAME

        static final @NonNull org.opendaylight.yangtools.yang.common.QName QNAME
    • Method Detail

      • implementedInterface

        default java.lang.Class<ElanInstance> implementedInterface()
        Specified by:
        implementedInterface in interface org.opendaylight.yangtools.yang.binding.DataContainer
        Specified by:
        implementedInterface in interface org.opendaylight.yangtools.yang.binding.DataObject
      • getElanInstanceName

        @Nullable java.lang.String getElanInstanceName()
        The name of the elan-instance.
        Returns:
        java.lang.String elanInstanceName, or null if not present
      • getElanTag

        @Nullable org.opendaylight.yangtools.yang.common.Uint32 getElanTag()
        ELAN unique identifier which is unique across all the tenants. This will be created internally and if provided, the value will be discarded.
        Returns:
        org.opendaylight.yangtools.yang.common.Uint32 elanTag, or null if not present
      • getSegmentType

        @Nullable java.lang.Class<? extends SegmentTypeBase> getSegmentType()
        Optional. Network segment type. It's mandatory when there are external devices participating in the ELAN
        Returns:
        java.lang.Class segmentType, or null if not present
      • getSegmentationId

        @Nullable org.opendaylight.yangtools.yang.common.Uint32 getSegmentationId()
        Optional. Isolated segment on the physical network. For example, if segment-type is vlan, this ID is a vlan identifier. If segment-type is vxlan, this ID is a vni
        Returns:
        org.opendaylight.yangtools.yang.common.Uint32 segmentationId, or null if not present
      • getPhysicalNetworkName

        @Nullable java.lang.String getPhysicalNetworkName()
        Optional. The name of the physical network attached to the ELAN.
        Returns:
        java.lang.String physicalNetworkName, or null if not present
      • isExternal

        @Nullable java.lang.Boolean isExternal()
        indicates whether this is an external network
        Returns:
        java.lang.Boolean external, or null if not present
      • getMacTimeout

        @Nullable org.opendaylight.yangtools.yang.common.Uint32 getMacTimeout()
        MAC Table entry ageing time in seconds. A value of 0 will indicate that the MAC will never expire.
        Returns:
        org.opendaylight.yangtools.yang.common.Uint32 macTimeout, or null if not present
      • getDescription

        @Nullable java.lang.String getDescription()
        A textual description of elan instance, the elan instance description helps users memorize the elan instance.
        Returns:
        java.lang.String description, or null if not present
      • getElanSegments

        @Nullable java.util.List<ElanSegments> getElanSegments()
        List of provider network(s) associated with this ELAN.
        Returns:
        java.util.List elanSegments, or null if not present
      • nonnullElanSegments

        default @NonNull java.util.List<ElanSegments> nonnullElanSegments()
        Returns:
        java.util.List elanSegments, or an empty list if it is not present
      • getExternalTeps

        @Nullable java.util.List<ExternalTeps> getExternalTeps()
        Optional. The external tep ips of the nodes where this elan is present
        Returns:
        java.util.List externalTeps, or null if not present
      • nonnullExternalTeps

        default @NonNull java.util.List<ExternalTeps> nonnullExternalTeps()
        Returns:
        java.util.List externalTeps, or an empty list if it is not present