Package io.netty.handler.ipfilter
Class IpSubnetFilterRule
- java.lang.Object
-
- io.netty.handler.ipfilter.IpSubnetFilterRule
-
- All Implemented Interfaces:
IpFilterRule
public final class IpSubnetFilterRule extends java.lang.Object implements IpFilterRule
Use this class to create rules forRuleBasedIpFilter
that group IP addresses into subnets. Supports both, IPv4 and IPv6.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
IpSubnetFilterRule.Ip4SubnetFilterRule
private static class
IpSubnetFilterRule.Ip6SubnetFilterRule
-
Field Summary
Fields Modifier and Type Field Description private IpFilterRule
filterRule
-
Constructor Summary
Constructors Constructor Description IpSubnetFilterRule(java.lang.String ipAddress, int cidrPrefix, IpFilterRuleType ruleType)
IpSubnetFilterRule(java.net.InetAddress ipAddress, int cidrPrefix, IpFilterRuleType ruleType)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
matches(java.net.InetSocketAddress remoteAddress)
IpFilterRuleType
ruleType()
private static IpFilterRule
selectFilterRule(java.net.InetAddress ipAddress, int cidrPrefix, IpFilterRuleType ruleType)
-
-
-
Field Detail
-
filterRule
private final IpFilterRule filterRule
-
-
Constructor Detail
-
IpSubnetFilterRule
public IpSubnetFilterRule(java.lang.String ipAddress, int cidrPrefix, IpFilterRuleType ruleType)
-
IpSubnetFilterRule
public IpSubnetFilterRule(java.net.InetAddress ipAddress, int cidrPrefix, IpFilterRuleType ruleType)
-
-
Method Detail
-
selectFilterRule
private static IpFilterRule selectFilterRule(java.net.InetAddress ipAddress, int cidrPrefix, IpFilterRuleType ruleType)
-
matches
public boolean matches(java.net.InetSocketAddress remoteAddress)
- Specified by:
matches
in interfaceIpFilterRule
- Returns:
- This method should return true if remoteAddress is valid according to your criteria. False otherwise.
-
ruleType
public IpFilterRuleType ruleType()
- Specified by:
ruleType
in interfaceIpFilterRule
- Returns:
- This method should return
IpFilterRuleType.ACCEPT
if allIpFilterRule.matches(InetSocketAddress)
for whichIpFilterRule.matches(InetSocketAddress)
returns true should the accepted. If you want to exclude all of those IP addresses thenIpFilterRuleType.REJECT
should be returned.
-
-