public BaseIpAddressOption(ipAddressOptionType ipAddressOption) : base() { if (ipAddressOption != null) { ipAddress = ipAddressOption.ipAddress; } }
/* (non-Javadoc) * @see com.jagornet.dhcpv6.option.DhcpComparableOption#matches(com.jagornet.dhcp.xml.OptionExpression) */ public bool Matches(optionExpression expression) { if (expression == null) { return(false); } if (expression.code != this.GetCode()) { return(false); } if (ipAddress == null) { return(false); } ipAddressOptionType exprOption = (ipAddressOptionType)expression.Item; if (exprOption != null) { String exprIpAddress = exprOption.ipAddress; @operator op = expression.@operator; if (op.Equals(@operator.equals)) { return(ipAddress.Equals(exprIpAddress)); } else if (op.Equals(@operator.startsWith)) { return(ipAddress.StartsWith(exprIpAddress)); } else if (op.Equals(@operator.endsWith)) { return(ipAddress.EndsWith(exprIpAddress)); } else if (op.Equals(@operator.contains)) { return(ipAddress.Contains(exprIpAddress)); } else if (op.Equals(@operator.regExp)) { Match m = Regex.Match(ipAddress, exprIpAddress); return(m.Success); } else { log.Warn("Unsupported expression operator: " + op); } } return(false); }