Interface AccessLists

  • All Superinterfaces:
    org.opendaylight.yangtools.yang.binding.Augmentable<AccessLists>, org.opendaylight.yangtools.yang.binding.BindingObject, org.opendaylight.yangtools.yang.binding.ChildOf<IetfAccessControlListData>, org.opendaylight.yangtools.yang.binding.DataContainer, org.opendaylight.yangtools.yang.binding.DataObject

    @Generated("mdsal-binding-generator")
    public interface AccessLists
    extends org.opendaylight.yangtools.yang.binding.ChildOf<IetfAccessControlListData>, org.opendaylight.yangtools.yang.binding.Augmentable<AccessLists>
    This is a top level container for Access Control Lists. It can have one or more Access Control Lists.

    This class represents the following YANG schema fragment defined in module ietf-access-control-list

     container access-lists {
       list acl {
         key "acl-type acl-name";
         leaf acl-name {
           type string;
         }
         leaf acl-type {
           type acl-type;
         }
         container acl-oper-data {
           config false;
         }
         container access-list-entries {
           list ace {
             key rule-name;
             ordered-by user;
             leaf rule-name {
               type string;
             }
             container matches {
               choice ace-type {
                 case ace-ip {
                   choice ace-ip-version {
                     case ace-ipv4 {
                       uses packet-fields:acl-ipv4-header-fields;
                     }
                     case ace-ipv6 {
                       uses packet-fields:acl-ipv6-header-fields;
                     }
                   }
                   uses packet-fields:acl-ip-header-fields;
                 }
                 case ace-eth {
                   uses packet-fields:acl-eth-header-fields;
                 }
               }
               uses packet-fields:metadata;
             }
             container actions {
               choice packet-handling {
                 default deny;
                 case deny {
                   leaf deny {
                     type empty;
                   }
                 }
                 case permit {
                   leaf permit {
                     type empty;
                   }
                 }
               }
             }
             container ace-oper-data {
               config false;
               leaf match-counter {
                 type yang:counter64;
               }
             }
           }
         }
       }
     }
     
    The schema path to identify an instance is ietf-access-control-list/access-lists

    To create instances of this class use AccessListsBuilder.

    See Also:
    AccessListsBuilder
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static @NonNull org.opendaylight.yangtools.yang.common.QName QNAME  
    • Field Detail

      • QNAME

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

      • implementedInterface

        default java.lang.Class<AccessLists> 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 AccessLists 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:
        java.lang.NullPointerException - if obj is null
      • bindingEquals

        static boolean bindingEquals​(@NonNull AccessLists thisObj,
                                     java.lang.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:
        java.lang.NullPointerException - if thisObj is null
      • bindingToString

        static java.lang.String bindingToString​(@NonNull AccessLists 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:
        java.lang.NullPointerException - if obj is null
      • getAcl

        @Nullable java.util.Map<AclKey,​Acl> getAcl()
        Return acl, or null if it is not present.
             
                 An Access Control List(ACL) is an ordered list of Access List Entries (ACE).
                 Each Access Control Entry has a list of match criteria and a list of actions.
                 Since there are several kinds of Access Control Lists implemented with different
                 attributes for different vendors, this model accommodates customizing Access
                 Control Lists for each kind and for each vendor.
             
         
        Returns:
        java.util.Map acl, or null if it is not present.
      • nonnullAcl

        default @NonNull java.util.Map<AclKey,​Acl> nonnullAcl()
        Return acl, or an empty list if it is not present.
        Returns:
        java.util.Map acl, or an empty list if it is not present.