package org.batfish.representation.cisco; import java.io.Serializable; import java.util.List; import java.util.Set; import org.batfish.datamodel.Ip6Wildcard; import org.batfish.datamodel.IpProtocol; import org.batfish.datamodel.LineAction; import org.batfish.datamodel.State; import org.batfish.datamodel.SubRange; import org.batfish.datamodel.TcpFlags; public class ExtendedIpv6AccessListLine implements Serializable { private static final long serialVersionUID = 1L; private final LineAction _action; private final Set<Integer> _dscps; private final String _dstAddressGroup; private final Ip6Wildcard _dstIpWildcard; private final List<SubRange> _dstPortRanges; private final Set<Integer> _ecns; private final Integer _icmpCode; private final Integer _icmpType; private final String _name; private final IpProtocol _protocol; private final String _srcAddressGroup; private final Ip6Wildcard _srcIpWildcard; private final List<SubRange> _srcPortRanges; private Set<State> _states; private final List<TcpFlags> _tcpFlags; public ExtendedIpv6AccessListLine(String name, LineAction action, IpProtocol protocol, Ip6Wildcard srcIpWildcard, String srcAddressGroup, Ip6Wildcard dstIpWildcard, String dstAddressGroup, List<SubRange> srcPortRanges, List<SubRange> dstPortRanges, Set<Integer> dscps, Set<Integer> ecns, Integer icmpType, Integer icmpCode, Set<State> states, List<TcpFlags> tcpFlags) { _name = name; _action = action; _protocol = protocol; _srcIpWildcard = srcIpWildcard; _srcAddressGroup = srcAddressGroup; _dscps = dscps; _dstIpWildcard = dstIpWildcard; _dstAddressGroup = dstAddressGroup; _ecns = ecns; _srcPortRanges = srcPortRanges; _dstPortRanges = dstPortRanges; _icmpType = icmpType; _icmpCode = icmpCode; _states = states; _tcpFlags = tcpFlags; } public LineAction getAction() { return _action; } public Ip6Wildcard getDestinationIpWildcard() { return _dstIpWildcard; } public Set<Integer> getDscps() { return _dscps; } public String getDstAddressGroup() { return _dstAddressGroup; } public List<SubRange> getDstPorts() { return _dstPortRanges; } public Set<Integer> getEcns() { return _ecns; } public Integer getIcmpCode() { return _icmpCode; } public Integer getIcmpType() { return _icmpType; } public String getName() { return _name; } public IpProtocol getProtocol() { return _protocol; } public Ip6Wildcard getSourceIpWildcard() { return _srcIpWildcard; } public String getSrcAddressGroup() { return _srcAddressGroup; } public List<SubRange> getSrcPorts() { return _srcPortRanges; } public Set<State> getStates() { return _states; } public List<TcpFlags> getTcpFlags() { return _tcpFlags; } @Override public String toString() { String protocolName = _protocol.name(); return "[Name:\"" + _name + "\", Action:" + _action + ", Protocol:" + protocolName + "(" + _protocol.number() + ")" + ", SourceIpWildcard:" + _srcIpWildcard + ", DestinationIpWildcard:" + _dstIpWildcard + ", PortRange:" + _srcPortRanges + "]"; } }