|
@@ -522,14 +522,29 @@ class KillAction():
|
|
|
return [cls.FIELDS['message']]
|
|
return [cls.FIELDS['message']]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+class JoinAction():
|
|
|
|
|
+ TYPE = 'join'
|
|
|
|
|
+ FIELDS = {}
|
|
|
|
|
+
|
|
|
|
|
+ @classmethod
|
|
|
|
|
+ def get_fields(cls):
|
|
|
|
|
+ return [(f['name'], f['value']) for f in cls.FIELDS.itervalues()]
|
|
|
|
|
+
|
|
|
|
|
+ @classmethod
|
|
|
|
|
+ def get_mandatory_fields(cls):
|
|
|
|
|
+ return []
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
NODES = {
|
|
NODES = {
|
|
|
'pig-widget': PigAction,
|
|
'pig-widget': PigAction,
|
|
|
'java-widget': JavaAction,
|
|
'java-widget': JavaAction,
|
|
|
'hive-widget': HiveAction,
|
|
'hive-widget': HiveAction,
|
|
|
'subworkflow-widget': SubWorkflowAction,
|
|
'subworkflow-widget': SubWorkflowAction,
|
|
|
- 'kill-widget': KillAction
|
|
|
|
|
|
|
+ 'kill-widget': KillAction,
|
|
|
|
|
+ 'join-widget': JoinAction,
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
WORKFLOW_NODE_PROPERTIES = {}
|
|
WORKFLOW_NODE_PROPERTIES = {}
|
|
|
for node in NODES.itervalues():
|
|
for node in NODES.itervalues():
|
|
|
WORKFLOW_NODE_PROPERTIES.update(node.FIELDS)
|
|
WORKFLOW_NODE_PROPERTIES.update(node.FIELDS)
|