Open Kilda Java Documentation
CtrlAction.java
Go to the documentation of this file.
1
package
org.openkilda.wfm.ctrl;
2
3
import
org
.apache.storm.tuple.Tuple;
4
import
org
.
openkilda
.
messaging
.
ctrl
.
RequestData
;
5
import
org
.
openkilda
.
wfm
.
AbstractAction
;
6
import
org
.
openkilda
.
wfm
.
error
.
MessageFormatException
;
7
import
org
.
openkilda
.
wfm
.
error
.
UnsupportedActionException
;
8
import
org
.
openkilda
.
wfm
.
topology
.
AbstractTopology
;
9
10
public
class
CtrlAction
extends
AbstractAction
{
11
private
Boolean isHandled =
false
;
12
private
final
ICtrlBolt
bolt;
13
14
public
CtrlAction
(
ICtrlBolt
bolt, Tuple tuple) {
15
super(bolt, tuple);
16
this.bolt = bolt;
17
}
18
19
@Override
20
protected
void
handle
()
21
throws
MessageFormatException
,
UnsupportedActionException
{
22
String
source
=
getTuple
().getSourceComponent();
23
24
if
(!
source
.equals(
AbstractTopology
.
BOLT_ID_CTRL_ROUTE
)) {
25
return
;
26
}
27
28
isHandled =
true
;
29
30
AbstractAction
action;
31
RouteMessage
message =
new
RouteMessage
(
getTuple
());
32
RequestData
payload = message.
getPayload
();
33
switch
(payload.
getAction
()) {
34
case
"list"
:
35
action =
new
ListAction
(
this
, message);
36
break
;
37
case
"dump"
:
38
action =
new
DumpStateAction
(
this
, message);
39
break
;
40
case
"clearState"
:
41
action =
new
ClearStateAction(
this
, message);
42
break
;
43
case
"dumpBySwitch"
:
44
action =
new
DumpBySwitchStateAction
(
this
, message);
45
break
;
46
case
"dumpResorceCache"
:
47
action =
new
DumpByResorceCacheAction
(
this
, message);
48
break
;
49
default
:
50
throw
new
UnsupportedActionException
(payload.
getAction
());
51
}
52
53
action.
run
();
54
}
55
56
@Override
57
protected
void
commit
() {
58
if
(! isHandled) {
59
return
;
60
}
61
super.commit();
62
}
63
64
public
Boolean
getHandled
() {
65
return
isHandled;
66
}
67
68
public
String
getStreamId
() {
69
return
getBolt
().
getCtrlStreamId
();
70
}
71
72
@Override
73
public
ICtrlBolt
getBolt
() {
74
return
bolt;
75
}
76
77
78
public
static
boolean
boltHandlerEntrance
(
ICtrlBolt
bolt, Tuple tuple)
79
{
80
CtrlAction
ctrl =
new
CtrlAction
(bolt, tuple);
81
ctrl.
run
();
82
return
ctrl.
getHandled
();
83
}
84
}
org.openkilda.wfm.ctrl.CtrlAction.getHandled
Boolean getHandled()
Definition:
CtrlAction.java:64
org.openkilda.wfm.AbstractAction
Definition:
AbstractAction.java:12
org.openkilda.wfm.ctrl.CtrlAction.CtrlAction
CtrlAction(ICtrlBolt bolt, Tuple tuple)
Definition:
CtrlAction.java:14
org.openkilda.wfm.ctrl.DumpBySwitchStateAction
Definition:
DumpBySwitchStateAction.java:11
org.openkilda.messaging
Definition:
BaseMessage.java:16
org.openkilda.messaging.ctrl.RequestData.getAction
String getAction()
Definition:
RequestData.java:55
org.openkilda.wfm.ctrl.CtrlAction.getBolt
ICtrlBolt getBolt()
Definition:
CtrlAction.java:73
org.openkilda.wfm.error.UnsupportedActionException
Definition:
UnsupportedActionException.java:3
org
org.openkilda.wfm.ctrl.CtrlAction.commit
void commit()
Definition:
CtrlAction.java:57
org.openkilda.wfm.topology.AbstractTopology.BOLT_ID_CTRL_ROUTE
static final String BOLT_ID_CTRL_ROUTE
Definition:
AbstractTopology.java:64
org.openkilda.wfm.ctrl.CtrlAction.getStreamId
String getStreamId()
Definition:
CtrlAction.java:68
org.openkilda.wfm
Definition:
AbstractAction.java:1
org.openkilda.wfm.protocol.JsonMessage.getPayload
T getPayload()
Definition:
JsonMessage.java:35
org.openkilda.wfm.AbstractAction.getTuple
Tuple getTuple()
Definition:
AbstractAction.java:57
org.openkilda.wfm.error
Definition:
AbstractException.java:16
org.openkilda.messaging.ctrl.RequestData
Definition:
RequestData.java:31
org.openkilda.wfm.AbstractAction.run
void run()
Definition:
AbstractAction.java:25
org.openkilda.wfm.ctrl.ICtrlBolt
Definition:
ICtrlBolt.java:11
org.openkilda.wfm.ctrl.CtrlAction.handle
void handle()
Definition:
CtrlAction.java:20
org.openkilda.wfm.ctrl.DumpStateAction
Definition:
DumpStateAction.java:10
org.openkilda.wfm.ctrl.DumpByResorceCacheAction
Definition:
DumpByResorceCacheAction.java:12
org.openkilda.wfm.ctrl.CtrlAction
Definition:
CtrlAction.java:10
nodes.source
source
Definition:
nodes.py:53
org.openkilda.wfm.topology.AbstractTopology
Definition:
AbstractTopology.java:60
org.openkilda.wfm.ctrl.ICtrlBolt.getCtrlStreamId
String getCtrlStreamId()
org.openkilda.wfm.ctrl.CtrlAction.boltHandlerEntrance
static boolean boltHandlerEntrance(ICtrlBolt bolt, Tuple tuple)
Definition:
CtrlAction.java:78
org.openkilda.wfm.ctrl.ListAction
Definition:
ListAction.java:9
org.openkilda.wfm.ctrl.RouteMessage
Definition:
RouteMessage.java:13
org.openkilda
org.openkilda.wfm.error.MessageFormatException
Definition:
MessageFormatException.java:5
org.openkilda.messaging.ctrl
Definition:
AbstractDumpState.java:1
org.openkilda.wfm.topology
Definition:
AbstractTopology.java:16
open-kilda-develop
services
wfm
src
main
java
org
openkilda
wfm
ctrl
CtrlAction.java
Generated by
1.8.14