/** * @param string $task_name * @param int $lock_timestamp * * @return void */ public function release_lock($task_name, $lock_timestamp) { $this->log('debug', 'releasing lock for task ' . $task_name); $this->db_object->execute('DELETE FROM ' . $this->db_object->get_db_table_name() . ' WHERE task_name = :task_name AND lock_timestamp = :lock_timestamp', array(':task_name' => $task_name, ':lock_timestamp' => $lock_timestamp)); }
/** * @param \Ingenerator\RunSingle\PdoDatabaseObject $db_object * @param string $task_name * @param int $lock_id */ protected function givenOldLockToGarbageCollect($db_object, $task_name, $lock_id) { $db_object->fetch_all(self::SELECT_LOCK_SQL, array(':task_name' => self::TASK_NAME, ':current_timestamp' => self::FAKE_TIMESTAMP))->willReturn(array(array('task_name' => $task_name, 'lock_timestamp' => $lock_id, 'timeout' => 10, 'lock_holder' => self::FAKE_LOCK_HOLDER))); $db_object->execute(self::DELETE_LOCK_SQL, array(':task_name' => self::TASK_NAME, ':lock_timestamp' => self::FAKE_TIMESTAMP))->willReturn(); }
/** * @param \PDOStatement $q */ function its_execute_executes_the_query($q) { $this->subject->execute(self::FAKE_SQL, array(':task_name' => self::TASK_NAME)); $q->execute(array(':task_name' => self::TASK_NAME))->shouldHaveBeenCalled(); }