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
TaskBackLogScheme.py
Go to the documentation of this file.
1 '''
2 Created on Mar 6, 2014
3 
4 @author: igor
5 '''
6 import sqlalchemy
7 from sqlalchemy.ext.declarative import declarative_base
8 import dtm.EventObjects
9 
10 from TaskLog import TaskLog
11 
12 
13 # #ORM mapper for TaskLog class
14 #
15 Base = declarative_base()
16 class TaskBackLogScheme(Base): # pylint: disable-all
17  __tablename__ = "task_back_log_scheme"
18  __table_args__ = {'mysql_engine': 'MyISAM'}
19  id = sqlalchemy.Column(sqlalchemy.BigInteger, unique=True, index=True, primary_key=True, autoincrement=False)
20  pId = sqlalchemy.Column(sqlalchemy.BigInteger, unique=False, index=True)
21  nodeName = sqlalchemy.Column(sqlalchemy.String, unique=False, index=True)
22  cDate = sqlalchemy.Column(sqlalchemy.DateTime, unique=False, index=True)
23  sDate = sqlalchemy.Column(sqlalchemy.DateTime, unique=False, index=True)
24  rDate = sqlalchemy.Column(sqlalchemy.DateTime, unique=False, index=True)
25  fDate = sqlalchemy.Column(sqlalchemy.DateTime, unique=False, index=True)
26  pTime = sqlalchemy.Column(sqlalchemy.BigInteger, unique=False, index=True)
27  pTimeMax = sqlalchemy.Column(sqlalchemy.BigInteger, unique=False, index=False)
28  state = sqlalchemy.Column(sqlalchemy.Integer, unique=False, index=True,
29  server_default=str(dtm.EventObjects.EEResponseData.TASK_STATE_NEW_JUST_CREATED), nullable=True)
30  uRRAM = sqlalchemy.Column(sqlalchemy.BigInteger, unique=False, index=False, server_default="0")
31  uVRAM = sqlalchemy.Column(sqlalchemy.BigInteger, unique=False, index=False, server_default="0")
32  uCPU = sqlalchemy.Column(sqlalchemy.Integer, unique=False, index=False, server_default="0")
33  uThreads = sqlalchemy.Column(sqlalchemy.Integer, unique=False, index=False, server_default="0")
34  tries = sqlalchemy.Column(sqlalchemy.Integer, unique=False, index=False)
35  host = sqlalchemy.Column(sqlalchemy.String, unique=False, index=True, server_default="")
36  port = sqlalchemy.Column(sqlalchemy.String, unique=False, index=True, server_default="")
37  deleteTaskId = sqlalchemy.Column(sqlalchemy.Integer, unique=False, index=False, server_default="0")
38  autoCleanupFields = sqlalchemy.Column(sqlalchemy.String, unique=False, index=False, server_default="")
39  type = sqlalchemy.Column(sqlalchemy.Integer, unique=False, index=True, server_default="0")
40  name = sqlalchemy.Column(sqlalchemy.String, unique=False, index=True, server_default="")
41 
42 
43  # #constructor
44  # creates and sets all attributes from taskLog object instance
45  def __init__(self, taskLog):
46  attributes = [attr for attr in dir(self) if not attr.startswith('__') and not attr.startswith('_')]
47  for attr in attributes:
48  setattr(self, attr, getattr(taskLog, attr, None))
49 
50 
51  def _getTaskLog(self):
52  taskLog = TaskLog()
53  attributes = [attr for attr in dir(taskLog) if not attr.startswith('__') and not attr.startswith('_')]
54  for attr in attributes:
55  setattr(taskLog, attr, getattr(self, attr, None))
56  return taskLog
Class describes structures of task item used in TaskManager.
Definition: TaskLog.py:10
def __init__(self, taskLog)