private static void hasAceList(final Acl acl) { final AccessListEntries accessListEntries = acl.getAccessListEntries(); checkArgument(accessListEntries != null, "The access-list-entries container is not defined."); final List<Ace> ace = accessListEntries.getAce(); checkArgument(ace != null, "The ace list is not defined."); checkArgument(!ace.isEmpty(), "The ace list is empty."); }
/** * Checks if provided {@link Acl} has aces of type {@link VppAce} */ default boolean isStandardAcl(@Nonnull final Acl acl) { return acl.getAccessListEntries().getAce().stream() .map(Ace::getMatches) .map(Matches::getAceType) .filter(aceType -> aceType instanceof VppAce) .findAny() .isPresent(); }
/** * Checks if provided {@link Acl} has aces of type {@link VppMacipAce} */ default boolean isMacIpAcl(@Nonnull final Acl acl) { return acl.getAccessListEntries().getAce().stream() .map(Ace::getMatches) .map(Matches::getAceType) .filter(aceType -> aceType instanceof VppMacipAce) .findAny() .isPresent(); }
default List<Ace> getAces(@Nonnull final Acl acl) { return Optional.ofNullable(acl.getAccessListEntries()).orElseThrow(() -> new IllegalArgumentException(String.format("Unable to extract aces from %s", acl))).getAce(); }
private static Stream<Ace> aclToAceStream(@Nonnull final Acl assignedAcl, @Nonnull final WriteContext writeContext) { final String aclName = assignedAcl.getName(); final Class<? extends AclBase> aclType = assignedAcl.getType(); // ietf-acl updates are handled first, so we use writeContext.readAfter final Optional<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.Acl> aclOptional = writeContext.readAfter(AclWriter.ACL_ID.child( org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.Acl.class, new AclKey(aclName, aclType))); checkArgument(aclOptional.isPresent(), "Acl lists not configured"); final org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.Acl acl = aclOptional.get(); final AccessListEntries accessListEntries = acl.getAccessListEntries(); checkArgument(accessListEntries != null, "access list entries not configured"); return accessListEntries.getAce().stream(); }
if (!Objects.equals(_accessListEntries, other.getAccessListEntries())) { return false;
if (!Objects.equals(_accessListEntries, other.getAccessListEntries())) { return false;
private static void hasConsistentAceTypeForAclType(final Acl acl) { checkTypesSame(acl.getAccessListEntries().getAce(), acl.getAclName(), checkNotNull(ACL_ACE_PAIRS.get(acl.getAclType()), "Unsupported ACL type %s for ACL %s", acl.getAclType(), acl.getAclName())); }
public AclBuilder(Acl base) { if (base.getKey() == null) { this._key = new AclKey( base.getAclName(), base.getAclType() ); this._aclName = base.getAclName(); this._aclType = base.getAclType(); } else { this._key = base.getKey(); this._aclName = _key.getAclName(); this._aclType = _key.getAclType(); } this._accessListEntries = base.getAccessListEntries(); this._aclOperData = base.getAclOperData(); if (base instanceof AclImpl) { AclImpl impl = (AclImpl) base; if (!impl.augmentation.isEmpty()) { this.augmentation = new HashMap<>(impl.augmentation); } } else if (base instanceof AugmentationHolder) { @SuppressWarnings("unchecked") AugmentationHolder<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.Acl> casted =(AugmentationHolder<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.Acl>) base; if (!casted.augmentations().isEmpty()) { this.augmentation = new HashMap<>(casted.augmentations()); } } }
public AclBuilder(Acl base) { if (base.key() == null) { this.key = new AclKey( base.getAclName(), base.getAclType() ); this._aclName = base.getAclName(); this._aclType = base.getAclType(); } else { this.key = base.key(); this._aclName = key.getAclName(); this._aclType = key.getAclType(); } this._accessListEntries = base.getAccessListEntries(); this._aclOperData = base.getAclOperData(); if (base instanceof AclImpl) { AclImpl impl = (AclImpl) base; if (!impl.augmentation.isEmpty()) { this.augmentation = new HashMap<>(impl.augmentation); } } else if (base instanceof AugmentationHolder) { @SuppressWarnings("unchecked") AugmentationHolder<Acl> casted =(AugmentationHolder<Acl>) base; if (!casted.augmentations().isEmpty()) { this.augmentation = new HashMap<>(casted.augmentations()); } } }