Beispiel #1
0
 /**
  * Modify task in queue
  * @param Task $task
  * @param bool $need_commit Transaction commit required
  * @return bool
  */
 public function modify_task(Task $task, $need_commit = false)
 {
     if (is_null($this->file_handler)) {
         $this->lock_file();
     }
     $xml_dom = $this->get_xml_dom();
     $task_xml = $xml_dom->xpath("//" . self::TASK_XML . "[@" . TaskConst::UNIQID . "='" . $task->get_uniqid() . "']");
     $task_xml = $task_xml[0];
     foreach ($task->get($this->index_row) as $item_name => $item_value) {
         $task_xml[$item_name] = $item_value;
     }
     $this->save_task($task);
     $this->save_xml_dom($xml_dom);
     $this->release_file();
     return $this;
 }