alshabib

default packet context

1 +package org.onlab.onos.net.packet;
2 +
3 +
4 +public abstract class DefaultPacketContext implements PacketContext {
5 +
6 + private final long time;
7 + private final InboundPacket inPkt;
8 + private final OutboundPacket outPkt;
9 + private boolean block = false;
10 +
11 + protected DefaultPacketContext(long time, InboundPacket inPkt,
12 + OutboundPacket outPkt, boolean block) {
13 + super();
14 + this.time = time;
15 + this.inPkt = inPkt;
16 + this.outPkt = outPkt;
17 + this.block = block;
18 + }
19 +
20 + @Override
21 + public long time() {
22 + return time;
23 + }
24 +
25 + @Override
26 + public InboundPacket inPacket() {
27 + return inPkt;
28 + }
29 +
30 + @Override
31 + public OutboundPacket outPacket() {
32 + return outPkt;
33 + }
34 +
35 + @Override
36 + public abstract void send();
37 +
38 + @Override
39 + public void block() {
40 + this.block = true;
41 + }
42 +
43 + @Override
44 + public boolean isHandled() {
45 + return this.block;
46 + }
47 +
48 +}