2010-02-17 13:55:05 +00:00
|
|
|
<?php
|
|
|
|
|
2011-01-15 13:29:43 +00:00
|
|
|
/*
|
|
|
|
* This file is part of the Symfony package.
|
|
|
|
*
|
|
|
|
* (c) Fabien Potencier <fabien.potencier@symfony-project.com>
|
|
|
|
*
|
|
|
|
* For the full copyright and license information, please view the LICENSE
|
|
|
|
* file that was distributed with this source code.
|
|
|
|
*/
|
|
|
|
|
2011-02-19 13:11:18 +00:00
|
|
|
namespace Symfony\Component\HttpKernel\DataCollector;
|
2010-02-17 13:55:05 +00:00
|
|
|
|
2011-01-25 16:20:20 +00:00
|
|
|
use Symfony\Component\HttpKernel\KernelInterface;
|
2010-09-15 19:49:16 +01:00
|
|
|
use Symfony\Component\HttpKernel\Kernel;
|
2010-08-28 14:23:21 +01:00
|
|
|
use Symfony\Component\HttpKernel\DataCollector\DataCollector;
|
|
|
|
use Symfony\Component\HttpFoundation\Request;
|
|
|
|
use Symfony\Component\HttpFoundation\Response;
|
2010-02-17 13:55:05 +00:00
|
|
|
|
|
|
|
/**
|
2010-04-07 01:51:29 +01:00
|
|
|
* ConfigDataCollector.
|
2010-02-17 13:55:05 +00:00
|
|
|
*
|
2010-10-17 12:45:15 +01:00
|
|
|
* @author Fabien Potencier <fabien.potencier@symfony-project.com>
|
2010-02-17 13:55:05 +00:00
|
|
|
*/
|
|
|
|
class ConfigDataCollector extends DataCollector
|
|
|
|
{
|
2010-08-28 14:23:21 +01:00
|
|
|
protected $kernel;
|
2010-06-16 13:19:46 +01:00
|
|
|
|
2010-08-28 14:23:21 +01:00
|
|
|
/**
|
|
|
|
* Constructor.
|
|
|
|
*
|
2011-01-25 16:20:20 +00:00
|
|
|
* @param KernelInterface $kernel A KernelInterface instance
|
2010-08-28 14:23:21 +01:00
|
|
|
*/
|
2011-02-19 13:11:18 +00:00
|
|
|
public function __construct(KernelInterface $kernel)
|
2010-06-16 13:19:46 +01:00
|
|
|
{
|
2010-08-28 14:23:21 +01:00
|
|
|
$this->kernel = $kernel;
|
2010-06-16 13:19:46 +01:00
|
|
|
}
|
|
|
|
|
2010-08-28 14:23:21 +01:00
|
|
|
/**
|
|
|
|
* {@inheritdoc}
|
|
|
|
*/
|
|
|
|
public function collect(Request $request, Response $response, \Exception $exception = null)
|
2010-05-06 12:25:53 +01:00
|
|
|
{
|
2010-06-16 09:38:41 +01:00
|
|
|
$this->data = array(
|
2010-08-28 14:23:21 +01:00
|
|
|
'token' => $response->headers->get('X-Debug-Token'),
|
2010-05-06 12:25:53 +01:00
|
|
|
'symfony_version' => Kernel::VERSION,
|
2010-08-28 14:23:21 +01:00
|
|
|
'name' => $this->kernel->getName(),
|
|
|
|
'env' => $this->kernel->getEnvironment(),
|
|
|
|
'debug' => $this->kernel->isDebug(),
|
2010-05-06 12:25:53 +01:00
|
|
|
'php_version' => PHP_VERSION,
|
|
|
|
'xdebug' => extension_loaded('xdebug'),
|
|
|
|
'accel' => (
|
|
|
|
(extension_loaded('eaccelerator') && ini_get('eaccelerator.enable'))
|
|
|
|
||
|
|
|
|
(extension_loaded('apc') && ini_get('apc.enabled'))
|
|
|
|
||
|
|
|
|
(extension_loaded('xcache') && ini_get('xcache.cacher'))
|
|
|
|
),
|
|
|
|
);
|
|
|
|
}
|
2010-02-17 13:55:05 +00:00
|
|
|
|
2010-08-28 14:23:21 +01:00
|
|
|
/**
|
|
|
|
* Gets the token.
|
|
|
|
*
|
|
|
|
* @return string The token
|
|
|
|
*/
|
|
|
|
public function getToken()
|
|
|
|
{
|
|
|
|
return $this->data['token'];
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Gets the Symfony version.
|
|
|
|
*
|
|
|
|
* @return string The Symfony version
|
|
|
|
*/
|
|
|
|
public function getSymfonyVersion()
|
|
|
|
{
|
|
|
|
return $this->data['symfony_version'];
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Gets the PHP version.
|
|
|
|
*
|
|
|
|
* @return string The PHP version
|
|
|
|
*/
|
|
|
|
public function getPhpVersion()
|
|
|
|
{
|
|
|
|
return $this->data['php_version'];
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Gets the application name.
|
|
|
|
*
|
|
|
|
* @return string The application name
|
|
|
|
*/
|
|
|
|
public function getAppName()
|
|
|
|
{
|
|
|
|
return $this->data['name'];
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Gets the environment.
|
|
|
|
*
|
|
|
|
* @return string The environment
|
|
|
|
*/
|
|
|
|
public function getEnv()
|
|
|
|
{
|
|
|
|
return $this->data['env'];
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Returns true if the debug is enabled.
|
|
|
|
*
|
|
|
|
* @return Boolean true if debug is enabled, false otherwise
|
|
|
|
*/
|
|
|
|
public function isDebug()
|
|
|
|
{
|
|
|
|
return $this->data['debug'];
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Returns true if the XDebug is enabled.
|
|
|
|
*
|
|
|
|
* @return Boolean true if XDebug is enabled, false otherwise
|
|
|
|
*/
|
|
|
|
public function hasXDebug()
|
|
|
|
{
|
|
|
|
return $this->data['xdebug'];
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Returns true if an accelerator is enabled.
|
|
|
|
*
|
|
|
|
* @return Boolean true if an accelerator is enabled, false otherwise
|
|
|
|
*/
|
|
|
|
public function hasAccelerator()
|
2010-05-06 12:25:53 +01:00
|
|
|
{
|
2010-08-28 14:23:21 +01:00
|
|
|
return $this->data['accel'];
|
2010-05-06 12:25:53 +01:00
|
|
|
}
|
2010-02-17 13:55:05 +00:00
|
|
|
|
2010-08-28 14:23:21 +01:00
|
|
|
/**
|
|
|
|
* {@inheritdoc}
|
|
|
|
*/
|
2010-05-06 12:25:53 +01:00
|
|
|
public function getName()
|
|
|
|
{
|
|
|
|
return 'config';
|
|
|
|
}
|
2010-02-17 13:55:05 +00:00
|
|
|
}
|