46 lines
1.4 KiB
PHP
46 lines
1.4 KiB
PHP
<?php
|
|
|
|
namespace Knp\Bundle\GaufretteBundle;
|
|
|
|
use Symfony\Component\DependencyInjection\ContainerBuilder;
|
|
use Symfony\Component\HttpKernel\Bundle\Bundle;
|
|
use Gaufrette\StreamWrapper;
|
|
|
|
/**
|
|
* The Gaufrette Bundle
|
|
*
|
|
* @author Antoine Hérault <antoine.herault@gmail.com>
|
|
*/
|
|
class KnpGaufretteBundle extends Bundle
|
|
{
|
|
public function boot()
|
|
{
|
|
parent::boot();
|
|
|
|
if (!$this->container->hasParameter('knp_gaufrette.stream_wrapper.protocol')
|
|
|| !$this->container->hasParameter('knp_gaufrette.stream_wrapper.filesystems')) {
|
|
return;
|
|
}
|
|
|
|
StreamWrapper::register($this->container->getParameter('knp_gaufrette.stream_wrapper.protocol'));
|
|
$wrapperFsMap = StreamWrapper::getFilesystemMap();
|
|
|
|
$fileSystems = $this->container->getParameter('knp_gaufrette.stream_wrapper.filesystems');
|
|
|
|
/*
|
|
* If there are no filesystems configured to be wrapped,
|
|
* all filesystems within the map will be wrapped.
|
|
*/
|
|
if (empty($fileSystems)) {
|
|
$fileSystems = $this->container->get('knp_gaufrette.filesystem_map');
|
|
foreach ($fileSystems as $domain => $fileSystem) {
|
|
$wrapperFsMap->set($domain, $fileSystem);
|
|
}
|
|
} else {
|
|
foreach ($fileSystems as $domain => $fileSystem) {
|
|
$wrapperFsMap->set($domain, $this->container->get('knp_gaufrette.filesystem_map')->get($fileSystem));
|
|
}
|
|
}
|
|
}
|
|
}
|