| package net.onrc.onos.api.flowmanager; |
| |
| import java.util.List; |
| |
| import net.onrc.onos.core.matchaction.MatchActionPlan; |
| import net.onrc.onos.core.matchaction.action.IAction; |
| import net.onrc.onos.core.matchaction.match.PacketMatch; |
| import net.onrc.onos.core.util.PortNumber; |
| |
| /** |
| * IFlow object representing a packet path. |
| * <p> |
| * TODO: Think this: Do we need a bandwidth constraint? |
| */ |
| public class PacketPathFlow extends PathFlow { |
| private int hardTimeout; |
| private int idleTimeout; |
| |
| /** |
| * Constructor. |
| * |
| * @param id ID for this new IFlow object. |
| * @param match Match object at the source node of the path. |
| * @param inPort Ingress port number at the ingress edge node. |
| * @param path Path between ingress and egress edge node. |
| * @param edgeActions The list of IAction objects at the egress edge node. |
| * @param hardTimeout hard-timeout value. |
| * @param idleTimeout idle-timeout value. |
| */ |
| public PacketPathFlow(String id, |
| PacketMatch match, PortNumber inPort, Path path, List<IAction> edgeActions, |
| int hardTimeout, int idleTimeout) { |
| super(id, match, inPort, path, edgeActions); |
| this.hardTimeout = hardTimeout; |
| this.idleTimeout = idleTimeout; |
| } |
| |
| /** |
| * Gets idle-timeout value. |
| * |
| * @return Idle-timeout value (seconds) |
| */ |
| public int getIdleTimeout() { |
| return idleTimeout; |
| } |
| |
| /** |
| * Gets hard-timeout value. |
| * |
| * @return Hard-timeout value (seconds) |
| */ |
| public int getHardTimeout() { |
| return hardTimeout; |
| } |
| |
| @Override |
| public MatchActionPlan compile() { |
| // TODO Auto-generated method stub |
| return super.compile(); |
| } |
| } |