package org.batfish.representation.juniper; import org.batfish.datamodel.LineAction; import org.batfish.datamodel.Prefix6; import org.batfish.datamodel.Route6FilterList; import org.batfish.datamodel.SubRange; public final class Route6FilterLineUpTo extends Route6FilterLine { /** * */ private static final long serialVersionUID = 1L; private final int _maxPrefixLength; public Route6FilterLineUpTo(Prefix6 prefix6, int maxPrefixLength) { super(prefix6); _maxPrefixLength = maxPrefixLength; } @Override public void applyTo(Route6FilterList rfl) { int prefixLength = _prefix6.getPrefixLength(); org.batfish.datamodel.Route6FilterLine line = new org.batfish.datamodel.Route6FilterLine( LineAction.ACCEPT, _prefix6, new SubRange(prefixLength, _maxPrefixLength)); rfl.addLine(line); } @Override public boolean equals(Object o) { if (!this.getClass().equals(o.getClass())) { return false; } else { Route6FilterLineUpTo rhs = (Route6FilterLineUpTo) o; return _prefix6.equals(rhs._prefix6) && _maxPrefixLength == rhs._maxPrefixLength; } } public int getMaxPrefixLength() { return _maxPrefixLength; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + _maxPrefixLength; result = prime * result + _prefix6.hashCode(); return result; } }