private function applyAdditionalConditions(Selection $selection) { $additionalParameters = $this->currentFilter->getAdditionalConditions(); if (array_key_exists(self::MEDIA_STORAGE_TABLE, $additionalParameters)) { foreach ($additionalParameters[self::MEDIA_STORAGE_TABLE] as $condition) { $selection->where($condition); } } if (array_key_exists(self::MEDIA_USAGE_TABLE, $additionalParameters)) { foreach ($additionalParameters[self::MEDIA_USAGE_TABLE] as $condition) { $selection->where(':' . self::MEDIA_USAGE_TABLE . '.' . $condition); } } }
private function hydrateRowContainer($rowContainer) { if (is_array($this->currentFilter->getPairs())) { return $rowContainer; } if ($this->currentFilter->isFind()) { $rows = []; foreach ($rowContainer as $row) { $rows[] = $this->hydrateRow($row); } return $rows; } if ($this->currentFilter->isGet()) { return $this->hydrateRow($rowContainer); } throw new StorageException('Can\'not determine hydratation mode.'); }