49 lines
1.5 KiB
PHP
49 lines
1.5 KiB
PHP
<?php
|
|
namespace Trinity\Bundle\AkamaiBundle\EventListener;
|
|
|
|
use Symfony\Component\DependencyInjection\Container;
|
|
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
|
|
use Trinity\Bundle\AkamaiBundle\Event\AkamaiEvent;
|
|
use Trinity\Bundle\AkamaiBundle\TrinityAkamaiEvents;
|
|
|
|
class AkamaiSubscriber implements EventSubscriberInterface
|
|
{
|
|
protected $container;
|
|
|
|
public function __construct(Container $container)
|
|
{
|
|
$this->container = $container;
|
|
}
|
|
|
|
public static function getSubscribedEvents()
|
|
{
|
|
return array(
|
|
TrinityAkamaiEvents::AKAMAI_PURGE => 'purge',
|
|
);
|
|
}
|
|
|
|
public function purge(AkamaiEvent $event)
|
|
{
|
|
$urls = $event->getUrl();
|
|
|
|
if(is_array($urls)){
|
|
$data = ['objects' => $urls];
|
|
} else {
|
|
$data = ['objects' => [$urls]];
|
|
}
|
|
|
|
// $response = $this->container->get('trinity.akamai.ccu.client')->addRequest($data);
|
|
//
|
|
// $record = new \Trinity\Bundle\AkamaiBundle\Model\AkamaiEvent();
|
|
// $record
|
|
// ->setRawData(serialize($data))
|
|
// ->setRawResponse(serialize($response))
|
|
// ->setObjectClass($event->getObjectClass())
|
|
// ->setObjectId($event->getObjectId())
|
|
// ->setProgressUri(isset($response['progressUri']) ? $response['progressUri'] : null)
|
|
// ->setPurgeId(isset($response['purgeId']) ? $response['purgeId'] : null)
|
|
// ->setSupportId(isset($response['supportId']) ? $response['supportId'] : null)
|
|
// ->save();
|
|
}
|
|
}
|