@Singleton public final class AclServiceUtils extends Object
Modifier and Type | Field and Description |
---|---|
static AclserviceConfig.DefaultBehavior |
DEFAULT_ALLOW |
static AclserviceConfig.DefaultBehavior |
DEFAULT_DENY |
Constructor and Description |
---|
AclServiceUtils(AclDataUtil aclDataUtil,
AclserviceConfig config,
org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService idManager) |
Modifier and Type | Method and Description |
---|---|
static void |
addLportTagMetadataMatch(int lportTag,
List<org.opendaylight.genius.mdsalutil.MatchInfoBase> flowMatches,
Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceModeBase> serviceMode) |
Integer |
allocateAclId(String key)
Allocate acl id.
|
Integer |
allocateAndSaveFlowPriorityInCache(String poolName,
String key)
Allocate and save flow priority in cache.
|
static Integer |
allocateId(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService idManager,
String poolName,
String idKey,
Integer defaultId) |
BigInteger |
buildAclId(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid remoteAclId) |
static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> |
buildArpIpMatches(IpPrefixOrAddress ipPrefixOrAddress)
Builds the arp ip matches.
|
static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> |
buildBroadcastIpV4Matches(String ipAddr) |
static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> |
buildDhcpMatches(int srcPort,
int dstPort,
int lportTag,
Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceModeBase> serviceMode)
Returns the DHCP match.
|
static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> |
buildDhcpV6Matches(int srcPort,
int dstPort,
int lportTag,
Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceModeBase> serviceMode)
Returns the DHCPv6 match.
|
static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> |
buildIcmpV6Matches(int icmpType,
int icmpCode,
int lportTag,
Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceModeBase> serviceMode)
Returns the ICMPv6 match.
|
static List<? extends org.opendaylight.genius.mdsalutil.MatchInfoBase> |
buildIpAndDstServiceMatch(Long elanTag,
AllowedAddressPairs ip,
org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker,
Long vpnId) |
static List<? extends org.opendaylight.genius.mdsalutil.MatchInfoBase> |
buildIpAndSrcServiceMatch(long elanTag,
AllowedAddressPairs ip,
org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker,
Long vpnId) |
static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> |
buildIpMatches(IpPrefixOrAddress ipPrefixOrAddress,
AclServiceManager.MatchCriteria matchCriteria)
Builds the ip matches.
|
static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> |
buildL2BroadcastMatches() |
static org.opendaylight.genius.mdsalutil.MatchInfoBase |
buildLPortTagMatch(int lportTag,
Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceModeBase> serviceMode)
Gets the lport tag match.
|
static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.service.bindings.services.info.BoundServices> |
buildServiceId(String interfaceName,
short serviceIndex,
Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceModeBase> serviceMode)
Builds the service id.
|
static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface> |
buildStateInterfaceId(String interfaceName)
Build the interface state.
|
static boolean |
containsMatchFieldType(List<org.opendaylight.genius.mdsalutil.MatchInfoBase> flows,
Class<? extends org.opendaylight.genius.mdsalutil.NxMatchInfo> type) |
static boolean |
containsTcpMatchField(List<org.opendaylight.genius.mdsalutil.MatchInfoBase> flows) |
static boolean |
containsUdpMatchField(List<org.opendaylight.genius.mdsalutil.MatchInfoBase> flows) |
void |
createAclIdPools(BigInteger dpId)
Creates the acl id pools.
|
void |
createIdPool(String poolName,
org.opendaylight.netvirt.aclservice.utils.AclConstants.PacketHandlingType packetHandlingType)
Creates the id pool.
|
void |
createRemoteAclIdPool()
Creates remote the acl id pools.
|
static <T extends org.opendaylight.yangtools.yang.binding.DataObject> |
delete(org.opendaylight.controller.md.sal.binding.api.DataBroker broker,
org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType datastoreType,
org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> path) |
void |
deleteAclIdPools(BigInteger dpId)
Delete acl id pools.
|
void |
deleteIdPool(String poolName)
Delete id pool.
|
void |
deleteRemoteAclIdPool()
Delete remote the acl id pools.
|
static void |
deleteSubnetIpPrefixes(org.opendaylight.controller.md.sal.binding.api.DataBroker broker,
String portId) |
static boolean |
exactlyOneAcl(AclInterface port) |
static SecurityRuleAttr |
getAccesssListAttributes(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.Ace ace)
Retrieves the security rule attribute augmentation from the access list.
|
static List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.Ace> |
getAceWithRemoteAclId(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker,
AclInterface port,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid remoteAcl) |
static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.Acl |
getAcl(org.opendaylight.controller.md.sal.binding.api.DataBroker broker,
String aclKey)
Retrieves the acl matching the key from the data store.
|
static BigInteger |
getAclIdMetadata(BigInteger aclId) |
static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.Acl> |
getAclInstanceIdentifier(String aclKey)
Creates the Acl instance identifier.
|
static String |
getAclKeyForSynchronization(String key)
Returns ACL specific key for synchronization.
|
static String |
getAclPoolName(BigInteger dpId,
short tableId,
org.opendaylight.netvirt.aclservice.utils.AclConstants.PacketHandlingType packetHandlingType)
Gets the acl pool name.
|
static String |
getAclPoolName(BigInteger dpId,
short tableId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.ace.actions.PacketHandling packetHandling)
Gets the acl pool name.
|
static org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.service.bindings.services.info.BoundServices |
getBoundServices(String serviceName,
short servicePriority,
int flowPriority,
BigInteger cookie,
List<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction> instructions)
Gets the bound services.
|
static String |
getBroadcastAddressFromCidr(String cidr) |
AclserviceConfig |
getConfig() |
static BigInteger |
getDpIdFromIterfaceState(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface interfaceState) |
static BigInteger |
getDpnForInterface(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rpcs.rev160406.OdlInterfaceRpcService interfaceManagerRpcService,
String ifName)
Get the data path number for the interface.
|
static Long |
getElanIdFromAclInterface(String elanInterfaceName) |
static Long |
getElanIdFromInterface(String elanInterfaceName,
org.opendaylight.controller.md.sal.binding.api.DataBroker broker) |
static ElanInstance |
getElanInstanceByName(String elanInstanceName,
org.opendaylight.controller.md.sal.binding.api.DataBroker broker) |
static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<ElanInstance> |
getElanInstanceConfigurationDataPath(String elanInstanceName) |
static ElanInterface |
getElanInterfaceByElanInterfaceName(String elanInterfaceName,
org.opendaylight.controller.md.sal.binding.api.DataBroker broker) |
static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<ElanInterface> |
getElanInterfaceConfigurationDataPathId(String interfaceName) |
static Map<String,List<org.opendaylight.genius.mdsalutil.MatchInfoBase>> |
getFlowForAllowedAddresses(List<AllowedAddressPairs> syncAllowedAddresses,
Map<String,List<org.opendaylight.genius.mdsalutil.MatchInfoBase>> flowMatchesMap,
boolean isSourceIpMacMatch) |
Map<String,List<org.opendaylight.genius.mdsalutil.MatchInfoBase>> |
getFlowForRemoteAcl(AclInterface aclInterface,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid remoteAclId,
String ignoreInterfaceId,
Map<String,List<org.opendaylight.genius.mdsalutil.MatchInfoBase>> flowMatchesMap,
boolean isSourceIpMacMatch) |
static com.google.common.base.Optional<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface> |
getInterface(org.opendaylight.controller.md.sal.binding.api.DataBroker broker,
String interfaceName)
Retrieves the Interface from the datastore.
|
static List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> |
getInterfaceAcls(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface port)
Checks whether port security is enabled for the port.
|
static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface> |
getInterfaceIdentifier(String interfaceName)
Builds the interface identifier.
|
static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface |
getInterfaceStateFromOperDS(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker,
String interfaceName)
Retrieves the interface state.
|
static List<String> |
getIpBroadcastAddresses(List<IpPrefixOrAddress> cidrs) |
static org.opendaylight.genius.mdsalutil.MatchInfoBase |
getMatchInfoByType(List<org.opendaylight.genius.mdsalutil.MatchInfoBase> flows,
Class<? extends org.opendaylight.genius.mdsalutil.NxMatchInfo> type) |
static List<AllowedAddressPairs> |
getPortAllowedAddresses(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface port) |
static List<IpPrefixOrAddress> |
getSubnetIpPrefixes(org.opendaylight.controller.md.sal.binding.api.DataBroker broker,
String portId) |
static List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> |
getUpdatedAclList(List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> updatedAclList,
List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> currentAclList) |
static List<AllowedAddressPairs> |
getUpdatedAllowedAddressPairs(List<AllowedAddressPairs> updatedAllowedAddressPairs,
List<AllowedAddressPairs> currentAllowedAddressPairs) |
static Long |
getVpnIdFromInterface(org.opendaylight.controller.md.sal.binding.api.DataBroker broker,
String vpnInterfaceName) |
static boolean |
isIPv4Address(AllowedAddressPairs aap) |
static boolean |
isNotIpv4AllNetwork(AllowedAddressPairs aap) |
protected static boolean |
isNotIpv6AllNetwork(AllowedAddressPairs aap) |
static boolean |
isOfAclInterest(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.Acl acl) |
static boolean |
isOfInterest(AclInterface aclInterface)
Indicates whether the interface has port security enabled.
|
static boolean |
isPortSecurityEnabled(AclInterface port)
Checks whether port security is enabled for the port.
|
static <T extends org.opendaylight.yangtools.yang.binding.DataObject> |
read(org.opendaylight.controller.md.sal.binding.api.DataBroker broker,
org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType datastoreType,
org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> path)
Retrieves the object from the datastore.
|
void |
releaseAclId(String key)
Allocate and save flow priority in cache.
|
Integer |
releaseAndRemoveFlowPriorityFromCache(String poolName,
String key)
Release and remove flow priority from cache.
|
static void |
releaseId(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService idManager,
String poolName,
String idKey) |
public static final AclserviceConfig.DefaultBehavior DEFAULT_DENY
public static final AclserviceConfig.DefaultBehavior DEFAULT_ALLOW
@Inject public AclServiceUtils(AclDataUtil aclDataUtil, AclserviceConfig config, org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService idManager)
public static com.google.common.base.Optional<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface> getInterface(org.opendaylight.controller.md.sal.binding.api.DataBroker broker, String interfaceName)
broker
- the data brokerinterfaceName
- the interface namepublic static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface> getInterfaceIdentifier(String interfaceName)
interfaceName
- the interface name.public static <T extends org.opendaylight.yangtools.yang.binding.DataObject> com.google.common.base.Optional<T> read(org.opendaylight.controller.md.sal.binding.api.DataBroker broker, org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> path)
T
- type of DataObjectbroker
- the data broker.datastoreType
- the data store type.path
- the wild card path.public static <T extends org.opendaylight.yangtools.yang.binding.DataObject> void delete(org.opendaylight.controller.md.sal.binding.api.DataBroker broker, org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType datastoreType, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<T> path)
public static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.Acl getAcl(org.opendaylight.controller.md.sal.binding.api.DataBroker broker, String aclKey)
broker
- the data brokeraclKey
- the acl keypublic static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.Acl> getAclInstanceIdentifier(String aclKey)
aclKey
- the acl keypublic static BigInteger getDpnForInterface(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rpcs.rev160406.OdlInterfaceRpcService interfaceManagerRpcService, String ifName)
interfaceManagerRpcService
- interfaceManagerRpcService instance.ifName
- the interface name.public static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface getInterfaceStateFromOperDS(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker, String interfaceName)
dataBroker
- the data broker.interfaceName
- the interface name.public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface> buildStateInterfaceId(String interfaceName)
interfaceName
- the interface name.public static boolean isPortSecurityEnabled(AclInterface port)
port
- the port.public static List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> getInterfaceAcls(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface port)
port
- the port.public static SecurityRuleAttr getAccesssListAttributes(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.Ace ace)
ace
- the access list entrypublic static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> buildDhcpMatches(int srcPort, int dstPort, int lportTag, Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceModeBase> serviceMode)
srcPort
- the source port.dstPort
- the destination port.lportTag
- the lport tagserviceMode
- ingress or egress servicepublic static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> buildDhcpV6Matches(int srcPort, int dstPort, int lportTag, Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceModeBase> serviceMode)
srcPort
- the source port.dstPort
- the destination port.lportTag
- the lport tagserviceMode
- ingress or egresspublic static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> buildIcmpV6Matches(int icmpType, int icmpCode, int lportTag, Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceModeBase> serviceMode)
icmpType
- the icmpv6-type.icmpCode
- the icmpv6-code.lportTag
- the lport tagserviceMode
- ingress or egresspublic static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> buildBroadcastIpV4Matches(String ipAddr)
public static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> buildL2BroadcastMatches()
public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.service.bindings.services.info.BoundServices> buildServiceId(String interfaceName, short serviceIndex, Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceModeBase> serviceMode)
interfaceName
- the interface nameserviceIndex
- the service indexserviceMode
- the service modepublic static org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.service.bindings.services.info.BoundServices getBoundServices(String serviceName, short servicePriority, int flowPriority, BigInteger cookie, List<org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction> instructions)
serviceName
- the service nameservicePriority
- the service priorityflowPriority
- the flow prioritycookie
- the cookieinstructions
- the instructionspublic static List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> getUpdatedAclList(List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> updatedAclList, List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> currentAclList)
public static List<AllowedAddressPairs> getUpdatedAllowedAddressPairs(List<AllowedAddressPairs> updatedAllowedAddressPairs, List<AllowedAddressPairs> currentAllowedAddressPairs)
public static List<AllowedAddressPairs> getPortAllowedAddresses(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface port)
public static BigInteger getDpIdFromIterfaceState(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.state.Interface interfaceState)
public static List<String> getIpBroadcastAddresses(List<IpPrefixOrAddress> cidrs)
public static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> buildIpMatches(IpPrefixOrAddress ipPrefixOrAddress, AclServiceManager.MatchCriteria matchCriteria)
ipPrefixOrAddress
- the ip prefix or addressmatchCriteria
- the source_ip or destination_ip used for the matchpublic static List<org.opendaylight.genius.mdsalutil.MatchInfoBase> buildArpIpMatches(IpPrefixOrAddress ipPrefixOrAddress)
ipPrefixOrAddress
- the ip prefix or addresspublic BigInteger buildAclId(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid remoteAclId)
public static BigInteger getAclIdMetadata(BigInteger aclId)
public static org.opendaylight.genius.mdsalutil.MatchInfoBase buildLPortTagMatch(int lportTag, Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceModeBase> serviceMode)
lportTag
- the lport tagserviceMode
- ingress or egress service modepublic static List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.Ace> getAceWithRemoteAclId(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker, AclInterface port, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid remoteAcl)
public Map<String,List<org.opendaylight.genius.mdsalutil.MatchInfoBase>> getFlowForRemoteAcl(AclInterface aclInterface, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid remoteAclId, String ignoreInterfaceId, Map<String,List<org.opendaylight.genius.mdsalutil.MatchInfoBase>> flowMatchesMap, boolean isSourceIpMacMatch)
public AclserviceConfig getConfig()
public static boolean isIPv4Address(AllowedAddressPairs aap)
public static Map<String,List<org.opendaylight.genius.mdsalutil.MatchInfoBase>> getFlowForAllowedAddresses(List<AllowedAddressPairs> syncAllowedAddresses, Map<String,List<org.opendaylight.genius.mdsalutil.MatchInfoBase>> flowMatchesMap, boolean isSourceIpMacMatch)
public static boolean isNotIpv4AllNetwork(AllowedAddressPairs aap)
protected static boolean isNotIpv6AllNetwork(AllowedAddressPairs aap)
public static Long getElanIdFromInterface(String elanInterfaceName, org.opendaylight.controller.md.sal.binding.api.DataBroker broker)
public static ElanInterface getElanInterfaceByElanInterfaceName(String elanInterfaceName, org.opendaylight.controller.md.sal.binding.api.DataBroker broker)
public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<ElanInterface> getElanInterfaceConfigurationDataPathId(String interfaceName)
public static ElanInstance getElanInstanceByName(String elanInstanceName, org.opendaylight.controller.md.sal.binding.api.DataBroker broker)
public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<ElanInstance> getElanInstanceConfigurationDataPath(String elanInstanceName)
public static List<IpPrefixOrAddress> getSubnetIpPrefixes(org.opendaylight.controller.md.sal.binding.api.DataBroker broker, String portId)
public static void deleteSubnetIpPrefixes(org.opendaylight.controller.md.sal.binding.api.DataBroker broker, String portId)
public static Long getVpnIdFromInterface(org.opendaylight.controller.md.sal.binding.api.DataBroker broker, String vpnInterfaceName)
public static org.opendaylight.genius.mdsalutil.MatchInfoBase getMatchInfoByType(List<org.opendaylight.genius.mdsalutil.MatchInfoBase> flows, Class<? extends org.opendaylight.genius.mdsalutil.NxMatchInfo> type)
public static boolean containsMatchFieldType(List<org.opendaylight.genius.mdsalutil.MatchInfoBase> flows, Class<? extends org.opendaylight.genius.mdsalutil.NxMatchInfo> type)
public static boolean containsTcpMatchField(List<org.opendaylight.genius.mdsalutil.MatchInfoBase> flows)
public static boolean containsUdpMatchField(List<org.opendaylight.genius.mdsalutil.MatchInfoBase> flows)
public static Integer allocateId(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService idManager, String poolName, String idKey, Integer defaultId)
public static void releaseId(org.opendaylight.yang.gen.v1.urn.opendaylight.genius.idmanager.rev160406.IdManagerService idManager, String poolName, String idKey)
public Integer allocateAndSaveFlowPriorityInCache(String poolName, String key)
key
- the keypublic void releaseAclId(String key)
key
- the keypublic Integer releaseAndRemoveFlowPriorityFromCache(String poolName, String key)
key
- the keypublic static boolean isOfInterest(AclInterface aclInterface)
aclInterface
- the interface.public void createIdPool(String poolName, org.opendaylight.netvirt.aclservice.utils.AclConstants.PacketHandlingType packetHandlingType)
poolName
- the pool namepublic void deleteIdPool(String poolName)
poolName
- the pool namepublic static String getAclPoolName(BigInteger dpId, short tableId, org.opendaylight.netvirt.aclservice.utils.AclConstants.PacketHandlingType packetHandlingType)
dpId
- the dp idtableId
- the table idpacketHandlingType
- packet handling typepublic static String getAclPoolName(BigInteger dpId, short tableId, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.acl.access.list.entries.ace.actions.PacketHandling packetHandling)
dpId
- the dp idtableId
- the table idpacketHandling
- packet handling typepublic void createAclIdPools(BigInteger dpId)
dpId
- the dp idpublic void createRemoteAclIdPool()
public void deleteRemoteAclIdPool()
public void deleteAclIdPools(BigInteger dpId)
dpId
- the dp idpublic static List<? extends org.opendaylight.genius.mdsalutil.MatchInfoBase> buildIpAndSrcServiceMatch(long elanTag, AllowedAddressPairs ip, org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker, Long vpnId)
public static List<? extends org.opendaylight.genius.mdsalutil.MatchInfoBase> buildIpAndDstServiceMatch(Long elanTag, AllowedAddressPairs ip, org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker, Long vpnId)
public static boolean exactlyOneAcl(AclInterface port)
public static boolean isOfAclInterest(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160218.access.lists.Acl acl)
public static void addLportTagMetadataMatch(int lportTag, List<org.opendaylight.genius.mdsalutil.MatchInfoBase> flowMatches, Class<? extends org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.ServiceModeBase> serviceMode)
Copyright © 2018 OpenDaylight. All rights reserved.