blob: 07f53e1382cacd68f743a2c39964023a6878f7ed [file] [log] [blame]
Toshio Koidead17d5e2014-02-11 11:36:02 -08001package net.onrc.onos.intent;
2
3import net.onrc.onos.ofcontroller.networkgraph.Path;
4
5/**
6 * @author Toshio Koide (t-koide@onlab.us)
7 */
8public class PathIntent extends Intent {
9 protected Path path;
10 protected Double bandwidth;
11 protected Intent parentIntent;
Toshio Koide13986d12014-02-11 20:25:32 -080012 protected int id;
Toshio Koidead17d5e2014-02-11 11:36:02 -080013
14 /**
15 *
16 * @param graph
17 * @param path
18 * @param bandwidth bandwidth which should be allocated for the path.
19 * If null, it means no intent for bandwidth allocation (best effort).
20 * @param parentIntent parent intent. If null, it means this is root intent.
Toshio Koide13986d12014-02-11 20:25:32 -080021 * @param id
Toshio Koidead17d5e2014-02-11 11:36:02 -080022 */
Toshio Koide13986d12014-02-11 20:25:32 -080023 public PathIntent(String id, Path path, Double bandwidth, Intent parentIntent) {
24 super(id);
Toshio Koidead17d5e2014-02-11 11:36:02 -080025 this.path = path;
26 this.bandwidth = bandwidth;
27 this.parentIntent = parentIntent;
28 }
29
30 public Double getBandwidth() {
31 return bandwidth;
32 }
33
34 public Path getPath() {
35 return path;
36 }
37
38 public Intent getParentIntent() {
39 return parentIntent;
40 }
41}