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
dc_db.AttrUpdateTask.AttrUpdateTask Class Reference
Inheritance diagram for dc_db.AttrUpdateTask.AttrUpdateTask:
Collaboration diagram for dc_db.AttrUpdateTask.AttrUpdateTask:

Public Member Functions

def __init__ (self)
 
def process (self, attrUpdates, queryCallback)
 
def updateAttribute (self, attrObject, queryCallback)
 
- Public Member Functions inherited from dc_db.BaseTask.BaseTask
def isSiteExist (self, siteId, queryCallback, userId=None)
 
def generateCriterionSQL (self, criterions, additionWhere=None, siteId=None)
 
def fetchByCriterions (self, criterions, queryCallback)
 
def dbLock (self, mutexName, queryCallback, sleepTime=1, mutexLockTTL=Constants.DEFAULT_LOCK_TTL)
 
def dbUnlock (self, mutexName, queryCallback)
 
def createUrlsInsertQuery (self, siteId, localKeys, localValues)
 
def copyUrlsToDcUrls (self, siteId, queryCallback)
 
def statisticLogUpdate (self, localObj, urlMd5, siteId, status, queryCallback, isInsert=False)
 
def calculateMd5FormUrl (self, url, urlType, useNormilize=False)
 

Public Attributes

 arrtSet
 

Additional Inherited Members

- Static Public Member Functions inherited from dc_db.BaseTask.BaseTask
def readValueFromSiteProp (siteId, propName, queryCallback, urlMd5=None)
 

Detailed Description

Definition at line 22 of file AttrUpdateTask.py.

Constructor & Destructor Documentation

◆ __init__()

def dc_db.AttrUpdateTask.AttrUpdateTask.__init__ (   self)

Definition at line 27 of file AttrUpdateTask.py.

27  def __init__(self):
28  super(AttrUpdateTask, self).__init__()
29  self.arrtSet = AttrSetTask()
30 
31 
def __init__(self)
constructor
Definition: UIDGenerator.py:19

Member Function Documentation

◆ process()

def dc_db.AttrUpdateTask.AttrUpdateTask.process (   self,
  attrUpdates,
  queryCallback 
)

Definition at line 37 of file AttrUpdateTask.py.

37  def process(self, attrUpdates, queryCallback):
38  ret = GeneralResponse()
39  for attrUpdate in attrUpdates:
40  statusValue = False
41  if self.isSiteExist(attrUpdate.siteId, queryCallback):
42  if self.arrtSet.selectAttribute(attrUpdate, queryCallback):
43  self.updateAttribute(attrUpdate, queryCallback)
44  statusValue = True
45  else:
46  localAttribute = dc.EventObjects.Attribute(attrUpdate.siteId, attrUpdate.name)
47  localAttribute.urlMd5 = attrUpdate.urlMd5 if attrUpdate.urlMd5 is not None else ""
48  localAttribute.value = attrUpdate.value if attrUpdate.value is not None else ""
49  localRet = self.arrtSet.process([localAttribute], queryCallback)
50  if len(localRet.statuses) > 0 and localRet.statuses[0] == AttrSetTask.CODE_GOOD_INSERT:
51  statusValue = True
52  ret.statuses.append(statusValue)
53  return ret
54 
55 
Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateAttribute()

def dc_db.AttrUpdateTask.AttrUpdateTask.updateAttribute (   self,
  attrObject,
  queryCallback 
)

Definition at line 60 of file AttrUpdateTask.py.

60  def updateAttribute(self, attrObject, queryCallback):
61  UPDATE_TEMPLATE = "UPDATE `att_%s` SET `Value` = '%s' WHERE `Name` = '%s' AND `URLMd5` = '%s'"
62  query = UPDATE_TEMPLATE % (attrObject.siteId, Utils.escape(attrObject.value), attrObject.name,
63  attrObject.urlMd5 if attrObject.urlMd5 is not None else "")
64  queryCallback(query, Constants.ATT_DB_ID, Constants.EXEC_NAME, True)
65 
Here is the caller graph for this function:

Member Data Documentation

◆ arrtSet

dc_db.AttrUpdateTask.AttrUpdateTask.arrtSet

Definition at line 29 of file AttrUpdateTask.py.


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