<?php /** * Created by PhpStorm. * User: christophe * Date: 20/06/17 * Time: 15:11 */ namespace oat\taoOutcomeUi\model\Wrapper; use oat\oatbox\service\ConfigurableService; use oat\oatbox\service\ServiceManager; use oat\taoDelivery\model\execution\DeliveryExecutionInterface; use oat\taoDelivery\models\classes\execution\event\DeliveryExecutionState; use oat\taoOutcomeUi\model\ResultsService; class ResultServiceWrapper extends ConfigurableService { const SERVICE_ID = 'taoOutcomeUi/resultService'; const RESULT_COLUMNS_CHUNK_SIZE_OPTION = 'resultColumnsChunkSize'; /** * @var ResultsService */ protected $resultService; public function getService() { if (is_null($this->resultService)) { $serviceClass = $this->getOption('class'); $this->resultService = $serviceClass::singleton(); } return $this->resultService; } public static function deleteResultCache(DeliveryExecutionState $event) { // if the delivery execution has been re-activated, we have to delete the result cache already existing for this execution if ($event->getPreviousState() == DeliveryExecutionInterface::STATE_FINISHIED) { /** @var ResultsService $resultService */ $resultService = ServiceManager::getServiceManager()->get(self::SERVICE_ID)->getService(); $resultService->deleteCacheFor($event->getDeliveryExecution()->getIdentifier()); } } }