blob: 00a47856154c3c91945787749fa8d471f17e73bf [file] [log] [blame]
Toshio Koidea03915e2014-07-01 18:39:52 -07001package net.onrc.onos.api.flowmanager;
2
3import java.util.List;
4
5import net.onrc.onos.core.matchaction.MatchActionPlan;
6import net.onrc.onos.core.matchaction.action.IAction;
7import net.onrc.onos.core.util.PortNumber;
8
9/**
10 * IFlow object representing an optical path.
11 * <p>
12 * TODO: Think this: How do we deal the optical path flow going through the
13 * regenerators? Can we express it with multiple OpticalPathFlow objects?
14 */
15public class OpticalPathFlow extends PathFlow {
16 protected int lambda;
17
18 /**
19 * Constructor.
20 *
21 * @param id ID for this new IFlow object.
22 * @param inPort Ingress port number at the ingress edge node.
23 * @param path Path between ingress and egress edge node.
24 * @param actions The list of IAction objects at the egress edge node.
25 * @param lambda The lambda to be used throughout the path.
26 */
27 public OpticalPathFlow(String id,
28 PortNumber inPort, Path path, List<IAction> actions, int lambda) {
29 super(id, null, inPort, path, actions);
30 this.lambda = lambda;
31 // TODO Auto-generated constructor stub
32 }
33
34 /**
35 * Gets lambda which is used throughout the path.
36 *
37 * @return lambda which is used throughout the path.
38 */
39 public int getLambda() {
40 return lambda;
41 }
42
43 @Override
44 public MatchActionPlan compile() {
45 // TODO Auto-generated method stub
46 return super.compile();
47 }
48}