blob: 482d3f1f0d1747723d66a095f458dabed98711ce [file] [log] [blame]
Jonathan Hartaa380972014-04-03 10:24:46 -07001package net.onrc.onos.core.intent;
Brian O'Connor7f8e3012014-02-15 23:59:29 -08002
Jonathan Hart23701d12014-04-03 10:45:48 -07003import net.onrc.onos.core.util.FlowEntryAction;
Brian O'Connor7f8e3012014-02-15 23:59:29 -08004
5/**
6 *
7 * @author Brian O'Connor <bocon@onlab.us>
8 *
9 */
10
11class ForwardAction extends Action {
Brian O'Connor488e5ed2014-02-20 19:50:01 -080012 protected long dstPort;
Brian O'Connor7f8e3012014-02-15 23:59:29 -080013
Brian O'Connor488e5ed2014-02-20 19:50:01 -080014 public ForwardAction(long dstPort) {
Brian O'Connor7f8e3012014-02-15 23:59:29 -080015 this.dstPort = dstPort;
16 }
17
18 public String toString() {
Brian O'Connor488e5ed2014-02-20 19:50:01 -080019 return Long.toString(dstPort);
Brian O'Connor7f8e3012014-02-15 23:59:29 -080020 }
Brian O'Connor67c6e662014-02-17 15:20:44 -080021
22 @Override
23 public FlowEntryAction getFlowEntryAction() {
24 FlowEntryAction action = new FlowEntryAction();
Jonathan Hart23701d12014-04-03 10:45:48 -070025 action.setActionOutput(new net.onrc.onos.core.util.Port((short) dstPort));
Brian O'Connor67c6e662014-02-17 15:20:44 -080026 return action;
27 }
Brian O'Connor6dc44e92014-02-24 21:23:46 -080028
29 public int hashCode() {
30 return (int) dstPort;
31 }
Brian O'Connor7f8e3012014-02-15 23:59:29 -080032
Brian O'Connor6dc44e92014-02-24 21:23:46 -080033 public boolean equals(Object o) {
34 if(!(o instanceof ForwardAction)) {
35 return false;
36 }
37 ForwardAction action = (ForwardAction) o;
38 return this.dstPort == action.dstPort;
39 }
40}