def UpdateFlow(self,
                 client_id,
                 flow_id,
                 flow_obj=db.Database.unchanged,
                 flow_state=db.Database.unchanged,
                 client_crash_info=db.Database.unchanged,
                 pending_termination=db.Database.unchanged,
                 processing_on=db.Database.unchanged,
                 processing_since=db.Database.unchanged,
                 processing_deadline=db.Database.unchanged):
    """Updates flow objects in the database."""

    try:
      flow = self.flows[(client_id, flow_id)]
    except KeyError:
      raise db.UnknownFlowError(client_id, flow_id)

    if flow_obj != db.Database.unchanged:
      self.flows[(client_id, flow_id)] = flow_obj
      flow = flow_obj

    if flow_state != db.Database.unchanged:
      flow.flow_state = flow_state
    if client_crash_info != db.Database.unchanged:
      flow.client_crash_info = client_crash_info
    if pending_termination != db.Database.unchanged:
      flow.pending_termination = pending_termination
    if processing_on != db.Database.unchanged:
      flow.processing_on = processing_on
    if processing_since != db.Database.unchanged:
      flow.processing_since = processing_since
    if processing_deadline != db.Database.unchanged:
      flow.processing_deadline = processing_deadline
    flow.last_update_time = rdfvalue.RDFDatetime.Now()
def UpdateFlow ( self , client_id , flow_id , flow_obj = db . Database . unchanged , flow_state = db . Database . unchanged , client_crash_info = db . Database . unchanged , pending_termination = db . Database . unchanged , processing_on = db . Database . unchanged , processing_since = db . Database . unchanged , processing_deadline = db . Database . unchanged ) : try : flow = self . flows [ ( client_id , flow_id ) ] except KeyError : raise db . UnknownFlowError ( client_id , flow_id ) if flow_obj != db . Database . unchanged : self . flows [ ( client_id , flow_id ) ] = flow_obj flow = flow_obj if flow_state != db . Database . unchanged : flow . flow_state = flow_state if client_crash_info != db . Database . unchanged : flow . client_crash_info = client_crash_info if pending_termination != db . Database . unchanged : flow . pending_termination = pending_termination if processing_on != db . Database . unchanged : flow . processing_on = processing_on if processing_since != db . Database . unchanged : flow . processing_since = processing_since if processing_deadline != db . Database . unchanged : flow . processing_deadline = processing_deadline flow . last_update_time = rdfvalue . RDFDatetime . Now ( )
Updates flow objects in the database.