private MatchesImpl(MatchesBuilder base) { this._aceType = base.getAceType(); this.augmentation = ImmutableMap.copyOf(base.augmentation); }
public MatchesBuilder addAugmentation(Class<? extends Augmentation<Matches>> augmentationType, Augmentation<Matches> augmentationValue) { if (augmentationValue == null) { return removeAugmentation(augmentationType); } if (!(this.augmentation instanceof HashMap)) { this.augmentation = new HashMap<>(); } this.augmentation.put(augmentationType, augmentationValue); return this; }
default List<Ace> toMacIpAces(final String aclName, @Nonnull MacipAclRule[] rules, @Nonnull final AclContextManager macipAclContext, @Nonnull final MappingContext mappingContext) { final List<Ace> aces = new ArrayList<>(rules.length); int i = 0; for (final MacipAclRule rule : rules) { final AceBuilder ace = new AceBuilder(); final VppMacipAceBuilder aceType = new VppMacipAceBuilder(); final VppMacipAceNodesBuilder nodes = new VppMacipAceNodesBuilder(); nodes.setAceIpVersion(ipVersion(rule)); nodes.setSourceMacAddress(sourceMac(rule)); nodes.setSourceMacAddressMask(sourceMacMask(rule)); aceType.setVppMacipAceNodes(nodes.build()); ace.setMatches(new MatchesBuilder().setAceType(aceType.build()).build()); ace.setActions(actions(rule.isPermit)); final String aceName = macipAclContext.getAceName(aclName, i++, mappingContext); ace.setRuleName(aceName); ace.withKey(new AceKey(aceName)); aces.add(ace.build()); } return aces; }
default List<Ace> toStandardAces(final String aclName, @Nonnull AclRule[] rules, @Nonnull final AclContextManager standardAclContext, @Nonnull final MappingContext mappingContext) { final List<Ace> aces = new ArrayList<>(rules.length); int i = 0; for (final AclRule rule : rules) { final AceBuilder ace = new AceBuilder(); final VppAceBuilder aceType = new VppAceBuilder(); final VppAceNodesBuilder nodes = new VppAceNodesBuilder(); nodes.setAceIpVersion(ipVersion(rule)); nodes.setIpProtocol(parseProtocol(rule)); aceType.setVppAceNodes(nodes.build()); ace.setMatches(new MatchesBuilder().setAceType(aceType.build()).build()); ace.setActions(actions(rule.isPermit)); final String aceName = standardAclContext.getAceName(aclName, i++, mappingContext); ace.setRuleName(aceName); ace.withKey(new AceKey(aceName)); aces.add(ace.build()); } return aces; } }
public MatchesBuilder addAugmentation(java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.Matches>> augmentationType, Augmentation<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.Matches> augmentation) { if (augmentation == null) { return removeAugmentation(augmentationType); } if (!(this.augmentation instanceof HashMap)) { this.augmentation = new HashMap<>(); } this.augmentation.put(augmentationType, augmentation); return this; }
private MatchesImpl(MatchesBuilder base) { this._aceType = base.getAceType(); switch (base.augmentation.size()) { case 0: this.augmentation = Collections.emptyMap(); break; case 1: final Map.Entry<java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.Matches>>, Augmentation<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.Matches>> e = base.augmentation.entrySet().iterator().next(); this.augmentation = Collections.<java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.Matches>>, Augmentation<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.Matches>>singletonMap(e.getKey(), e.getValue()); break; default : this.augmentation = new HashMap<>(base.augmentation); } }