import java.util.regex.Pattern;
import javax.annotation.RegEx;
-final class IpUtil extends AbstractIetfInetUtil<IpClass, IpClass, IpClass, IpClass, IpClass, IpClass> {
+final class IpUtil extends AbstractIetfInetUtil<IpClass, IpClass, IpClass, IpClass, IpClass, IpClass, IpClass, IpClass,
+ IpClass> {
@RegEx
private static final String IP_V4_REGEX = "^\\d+\\.\\d+\\.\\d+\\.\\d+$";
private static final Pattern IP_V4_PATTERN = Pattern.compile(IP_V4_REGEX);
IpUtil() {
- super(IpClass.class, IpClass.class, IpClass.class, IpClass.class);
+ super(IpClass.class, IpClass.class, IpClass.class, IpClass.class, IpClass.class, IpClass.class);
}
@Override
return addr;
}
+
+ @Override
+ protected IpClass ipv4AddressNoZone(final IpClass addr) {
+ return addr;
+ }
+
@Override
protected IpClass ipv6Address(final IpClass addr) {
return addr;
}
@Override
- protected IpClass ipv4Prefix(IpClass addr) {
+ protected IpClass ipv6AddressNoZone(final IpClass addr) {
return addr;
}
@Override
- protected IpClass ipv6Prefix(IpClass addr) {
+ protected IpClass ipv4Prefix(final IpClass addr) {
+ return addr;
+ }
+
+ @Override
+ protected IpClass ipv6Prefix(final IpClass addr) {
return addr;
}
@Override
protected String ipv4AddressString(final IpClass addr) {
- return addr._value;
+ return addr.getValue();
}
@Override
protected String ipv6AddressString(final IpClass addr) {
- return addr._value;
+ return addr.getValue();
}
@Override
protected String ipv4PrefixString(final IpClass prefix) {
- return prefix._value;
+ return prefix.getValue();
}
@Override
protected String ipv6PrefixString(final IpClass prefix) {
- return prefix._value;
+ return prefix.getValue();
+ }
+
+ @Override
+ protected IpClass maybeIpv4Address(final IpClass addr) {
+ return IP_V4_PATTERN.matcher(addr.getValue()).matches() ? addr : null;
+ }
+
+ @Override
+ protected IpClass maybeIpv4AddressNoZone(final IpClass addr) {
+ return maybeIpv4Address(addr);
}
@Override
- protected IpClass maybeIpv4Address(IpClass addr) {
- return IP_V4_PATTERN.matcher(addr._value).matches() ? addr : null;
+ protected IpClass maybeIpv6Address(final IpClass addr) {
+ return addr.getValue().indexOf(':') != -1 ? addr : null;
}
@Override
- protected IpClass maybeIpv6Address(IpClass addr) {
- return addr._value.indexOf(':') != -1 ? addr : null;
+ protected IpClass maybeIpv6AddressNoZone(final IpClass addr) {
+ return maybeIpv6Address(addr);
}
-}
+}
\ No newline at end of file