HCE Project Python language Distributed Tasks Manager Application, Distributed Crawler Application and client API bindings.  2.0.0-chaika
Hierarchical Cluster Engine Python language binding
dtma.DTMAObjectsFiller.DTMAObjectsFiller Class Reference

DTMCObjectsFiller Class contents serialize/deserialize methods for incoming "DTMA" commands. More...

Inheritance diagram for dtma.DTMAObjectsFiller.DTMAObjectsFiller:
Collaboration diagram for dtma.DTMAObjectsFiller.DTMAObjectsFiller:

Public Member Functions

def __init__ (self)
 
def generateStatObjects (self, fields, classes)
 
def generateSetObjects (self, fields, classes)
 
def generateGetObjects (self, fields, classes)
 
def generateStopObjects (self, classes)
 
def generateSuspendObject (self, fields)
 
def generateSystemObject (self, fields)
 
def generateSQLCustomObject (self, fields)
 
def generateObjectsList (self, cmd, fields, classes)
 generateObjectsList method represents main income point of user call. More...
 

Detailed Description

DTMCObjectsFiller Class contents serialize/deserialize methods for incoming "DTMA" commands.

Definition at line 24 of file DTMAObjectsFiller.py.

Constructor & Destructor Documentation

◆ __init__()

def dtma.DTMAObjectsFiller.DTMAObjectsFiller.__init__ (   self)

Definition at line 27 of file DTMAObjectsFiller.py.

27  def __init__(self):
28  pass
29 
30 
def __init__(self)
constructor
Definition: UIDGenerator.py:19

Member Function Documentation

◆ generateGetObjects()

def dtma.DTMAObjectsFiller.DTMAObjectsFiller.generateGetObjects (   self,
  fields,
  classes 
)

Definition at line 80 of file DTMAObjectsFiller.py.

80  def generateGetObjects(self, fields, classes):
81  ret = []
82  classesList = []
83  filedsList = []
84  fieldsDict = {}
85  if len(fields) > 0:
86  filedsList = fields.split(CONSTANTS.FIELDS_SEPARATOR)
87  for field in filedsList:
88  if field != None and field != "":
89  fieldsDict[field] = ""
90  if len(classes) > 0:
91  classesList = classes.split(CONSTANTS.FIELDS_SEPARATOR)
92  for name in classesList:
93  ret.append(dtm.EventObjects.AdminConfigVars(name, fieldsDict))
94  else:
95  raise DTMAExceptions.DTMAEmptyClasses("DTMAEmptyClasses [SET]")
96  else:
97  raise DTMAExceptions.DTMAEmptyFields("DTMAEmptyFields [SET]")
98  return ret
99 
100 
AdminConfigVars event object, for admin set or get config variables from any of threaded classes or a...
Here is the caller graph for this function:

◆ generateObjectsList()

def dtma.DTMAObjectsFiller.DTMAObjectsFiller.generateObjectsList (   self,
  cmd,
  fields,
  classes 
)

generateObjectsList method represents main income point of user call.

Definition at line 145 of file DTMAObjectsFiller.py.

145  def generateObjectsList(self, cmd, fields, classes):
146  objectList = []
147  if cmd == CONSTANTS.TASKS[0]:
148  objectList = self.generateStatObjects(fields, classes)
149  elif cmd == CONSTANTS.TASKS[1]:
150  objectList = self.generateSetObjects(fields, classes)
151  elif cmd == CONSTANTS.TASKS[2]:
152  objectList = self.generateGetObjects(fields, classes)
153  elif cmd == CONSTANTS.TASKS[3]:
154  objectList = self.generateStopObjects(classes)
155  elif cmd == CONSTANTS.TASKS[4]:
156  objectList = self.generateSuspendObject(fields)
157  elif cmd == CONSTANTS.TASKS[5]:
158  objectList = self.generateSystemObject(fields)
159  elif cmd == CONSTANTS.TASKS[6]:
160  objectList = self.generateSQLCustomObject(fields)
161  return objectList
162 
Here is the call graph for this function:

◆ generateSetObjects()

def dtma.DTMAObjectsFiller.DTMAObjectsFiller.generateSetObjects (   self,
  fields,
  classes 
)

Definition at line 52 of file DTMAObjectsFiller.py.

52  def generateSetObjects(self, fields, classes):
53  ret = []
54  classesList = []
55  filedsList = []
56  fieldsDict = {}
57  if len(fields) > 0:
58  filedsList = fields.split(CONSTANTS.FIELDS_SEPARATOR)
59  for field in filedsList:
60  fieldPair = field.split(CONSTANTS.NAME_VALUE_SEPARATOR)
61  if len(fieldPair) < 2:
62  raise DTMAExceptions.DTMANameValueException("wrong name-value format in --field arg [SET]")
63  else:
64  try:
65  fieldsDict[fieldPair[0]] = eval(fieldPair[1]) # pylint: disable=eval-used
66  except Exception:
67  raise DTMAExceptions.DTMANameValueException("Wrong value type, for string use str('abcd') as value!")
68  if len(classes) > 0:
69  classesList = classes.split(CONSTANTS.FIELDS_SEPARATOR)
70  for name in classesList:
71  ret.append(dtm.EventObjects.AdminConfigVars(name, fieldsDict))
72  else:
73  raise DTMAExceptions.DTMAEmptyClasses("DTMAEmptyClasses [SET]")
74  else:
75  raise DTMAExceptions.DTMAEmptyFields("DTMAEmptyFields [SET]")
76 
77  return ret
78 
79 
AdminConfigVars event object, for admin set or get config variables from any of threaded classes or a...
Here is the caller graph for this function:

◆ generateSQLCustomObject()

def dtma.DTMAObjectsFiller.DTMAObjectsFiller.generateSQLCustomObject (   self,
  fields 
)

Definition at line 133 of file DTMAObjectsFiller.py.

133  def generateSQLCustomObject(self, fields):
134  ret = []
135  try:
136  dataJson = json.loads(fields)
137  ret.append(dtm.EventObjects.CustomRequest(dataJson["id"], dataJson["sql"], None))
138  except Exception:
139  raise DTMAExceptions.DTMAEmptyFields("DTMAEmptyFields [SQL_CUSTOM]")
140  return ret
141 
142 
Here is the caller graph for this function:

◆ generateStatObjects()

def dtma.DTMAObjectsFiller.DTMAObjectsFiller.generateStatObjects (   self,
  fields,
  classes 
)

Definition at line 31 of file DTMAObjectsFiller.py.

31  def generateStatObjects(self, fields, classes):
32  ret = []
33  names = []
34  filedsList = []
35  fieldsDict = {}
36  if fields != None and len(fields) > 0:
37  filedsList = fields.split(CONSTANTS.FIELDS_SEPARATOR)
38  for field in filedsList:
39  if len(field) > 0:
40  fieldPair = field.split(CONSTANTS.NAME_VALUE_SEPARATOR)
41  if len(fieldPair) >= 1:
42  fieldsDict[fieldPair[0]] = None
43  if len(classes) > 0:
44  names = classes.split(CONSTANTS.FIELDS_SEPARATOR)
45  for name in names:
46  ret.append(dtm.EventObjects.AdminStatData(name, fieldsDict))
47  else:
48  raise DTMAExceptions.DTMAEmptyClasses("DTMAEmptyClasses [STAT]")
49  return ret
50 
51 
AdminStatData event object, for admin fetch stat fields and possible data from any threaded classes i...
Here is the caller graph for this function:

◆ generateStopObjects()

def dtma.DTMAObjectsFiller.DTMAObjectsFiller.generateStopObjects (   self,
  classes 
)

Definition at line 101 of file DTMAObjectsFiller.py.

101  def generateStopObjects(self, classes):
102  ret = []
103  names = []
104  if len(classes) > 0:
105  names = classes.split(CONSTANTS.FIELDS_SEPARATOR)
106  for name in names:
107  ret.append(dtm.EventObjects.AdminState(name, dtm.EventObjects.AdminState.STATE_SHUTDOWN))
108  else:
109  raise DTMAExceptions.DTMAEmptyClasses("DTMAEmptyFields [Stop]")
110  return ret
111 
112 
AdminState event object, for admin manage change application state commands, like shutdown...
Here is the caller graph for this function:

◆ generateSuspendObject()

def dtma.DTMAObjectsFiller.DTMAObjectsFiller.generateSuspendObject (   self,
  fields 
)

Definition at line 113 of file DTMAObjectsFiller.py.

113  def generateSuspendObject(self, fields):
114  ret = []
115  if fields is not None:
116  if fields == "1":
117  ret.append(dtm.EventObjects.AdminSuspend(dtm.EventObjects.AdminSuspend.SUSPEND))
118  else:
119  ret.append(dtm.EventObjects.AdminSuspend(dtm.EventObjects.AdminSuspend.RUN))
120  return ret
121 
122 
AdminSuspend event object, for admin suspend command.
Here is the caller graph for this function:

◆ generateSystemObject()

def dtma.DTMAObjectsFiller.DTMAObjectsFiller.generateSystemObject (   self,
  fields 
)

Definition at line 123 of file DTMAObjectsFiller.py.

123  def generateSystemObject(self, fields):
124  ret = []
125  try:
126  dataJson = json.loads(fields)
127  ret.append(dtm.EventObjects.System(dataJson["type"], dataJson["data"]))
128  except Exception:
129  raise DTMAExceptions.DTMAEmptyFields("DTMAEmptyFields [SYSTEM]")
130  return ret
131 
132 
AvailableTaskIds event object, for return all available task id.
Here is the caller graph for this function:

The documentation for this class was generated from the following file: