/** * Retrieves a value from cache with a specified key. * This method should be implemented by child classes to retrieve the data * from specific cache storage. * @param string $key a unique key identifying the cached value * @return string|boolean the value stored in cache, false if the value is not in the cache or expired. */ protected function getValue($key) { $query = new Query(); $row = $query->select(['data'])->from($this->cacheCollection)->where(['id' => $key, '$or' => [['expire' => 0], ['expire' => ['$gt' => time()]]]])->one($this->db); if (empty($row)) { return false; } else { return $row['data']; } }
/** * Ensures migration history contains at least base migration entry. */ protected function ensureBaseMigrationHistory() { if (!$this->baseMigrationEnsured) { $query = new Query(); $row = $query->select(['version'])->from($this->migrationCollection)->andWhere(['version' => self::BASE_MIGRATION])->limit(1)->one($this->db); if (empty($row)) { $this->addMigrationHistory(self::BASE_MIGRATION); } $this->baseMigrationEnsured = true; } }