Interface Acl

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

    @Generated("mdsal-binding-generator")
    public interface Acl
    extends org.opendaylight.yangtools.yang.binding.ChildOf<AccessLists>, org.opendaylight.yangtools.yang.binding.Augmentable<Acl>, org.opendaylight.yangtools.yang.binding.Identifiable<AclKey>
    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 attributes for different vendors, this model accommodates customizing Access Control Lists for each kind and for each vendor.

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

     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/acl

    To create instances of this class use AclBuilder.

    See Also:
    AclBuilder, AclKey
    • Field Detail

      • QNAME

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

      • implementedInterface

        default java.lang.Class<Acl> 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 Acl 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 Acl 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 Acl 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
      • getAclName

        java.lang.String getAclName()
        Return aclName, or null if it is not present.
             
                 The name of access-list. A device MAY restrict the length and value of this
                 name, possibly space and special characters are not allowed.
             
         
        Returns:
        java.lang.String aclName, or null if it is not present.
      • getAclType

        java.lang.Class<? extends AclBase> getAclType()
        Return aclType, or null if it is not present.
             
                 Type of access control list. Indicates the primary intended type of match
                 criteria (e.g. ethernet, IPv4, IPv6, mixed, etc) used in the list instance.
             
         
        Returns:
        java.lang.Class aclType, or null if it is not present.
      • getAclOperData

        AclOperData getAclOperData()
        Return aclOperData, or null if it is not present.
             
                 Overall Access Control List operational data
             
         
        Returns:
        org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.AclOperData aclOperData, or null if it is not present.
      • getAccessListEntries

        AccessListEntries getAccessListEntries()
        Return accessListEntries, or null if it is not present.
             
                 The access-list-entries container contains a list of access-list-entries(ACE).
             
         
        Returns:
        org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.AccessListEntries accessListEntries, or null if it is not present.
      • key

        AclKey key()
        Specified by:
        key in interface org.opendaylight.yangtools.yang.binding.Identifiable<AclKey>