2014-11-30 15:07:59 +00:00
< ? php
2016-12-13 17:37:51 +00:00
use Symfony\Component\DependencyInjection\Argument\RewindableGenerator ;
2014-11-30 15:07:59 +00:00
use Symfony\Component\DependencyInjection\ContainerInterface ;
use Symfony\Component\DependencyInjection\Container ;
use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException ;
use Symfony\Component\DependencyInjection\Exception\LogicException ;
use Symfony\Component\DependencyInjection\Exception\RuntimeException ;
use Symfony\Component\DependencyInjection\ParameterBag\FrozenParameterBag ;
/**
2015-03-24 21:20:39 +00:00
* ProjectServiceContainer .
2014-11-30 15:07:59 +00:00
*
* This class has been auto - generated
* by the Symfony Dependency Injection Component .
2017-01-12 22:13:34 +00:00
*
* @ final since Symfony 3.3
2014-11-30 15:07:59 +00:00
*/
class ProjectServiceContainer extends Container
{
2014-12-03 09:22:11 +00:00
private $parameters ;
2014-12-04 20:13:58 +00:00
private $targetDirs = array ();
2014-12-03 09:22:11 +00:00
2014-11-30 15:07:59 +00:00
/**
* Constructor .
*/
public function __construct ()
{
2014-12-04 18:27:52 +00:00
$dir = __DIR__ ;
for ( $i = 1 ; $i <= 5 ; ++ $i ) {
$this -> targetDirs [ $i ] = $dir = dirname ( $dir );
}
2014-12-04 20:13:58 +00:00
$this -> parameters = $this -> getDefaultParameters ();
2015-09-04 20:54:37 +01:00
$this -> services = array ();
2014-11-30 15:07:59 +00:00
$this -> methodMap = array (
'test' => 'getTestService' ,
);
$this -> aliases = array ();
}
2014-12-03 09:22:11 +00:00
/**
* { @ inheritdoc }
*/
public function compile ()
{
2016-08-19 13:18:08 +01:00
throw new LogicException ( 'You cannot compile a dumped container that was already compiled.' );
}
/**
* { @ inheritdoc }
*/
public function isCompiled ()
{
return true ;
2014-12-03 09:22:11 +00:00
}
2016-08-22 09:46:49 +01:00
/**
* { @ inheritdoc }
*/
public function isFrozen ()
{
2016-08-19 13:18:08 +01:00
@ trigger_error ( sprintf ( 'The %s() method is deprecated since version 3.3 and will be removed in 4.0. Use the isCompiled() method instead.' , __METHOD__ ), E_USER_DEPRECATED );
2016-08-22 09:46:49 +01:00
return true ;
}
2014-11-30 15:07:59 +00:00
/**
2017-07-26 08:27:50 +01:00
* Gets the public 'test' shared service .
2014-11-30 15:07:59 +00:00
*
2017-07-26 08:27:50 +01:00
* @ return \stdClass
2014-11-30 15:07:59 +00:00
*/
protected function getTestService ()
{
2014-12-04 18:27:52 +00:00
return $this -> services [ 'test' ] = new \stdClass (( 'wiz' . $this -> targetDirs [ 1 ]), array (( 'wiz' . $this -> targetDirs [ 1 ]) => ( $this -> targetDirs [ 2 ] . '/' )));
2014-11-30 15:07:59 +00:00
}
/**
* { @ inheritdoc }
*/
public function getParameter ( $name )
{
2017-06-12 12:31:43 +01:00
if ( ! ( isset ( $this -> parameters [ $name ]) || isset ( $this -> loadedDynamicParameters [ $name ]) || array_key_exists ( $name , $this -> parameters ))) {
$name = strtolower ( $name );
2014-11-30 15:07:59 +00:00
2017-06-12 12:31:43 +01:00
if ( ! ( isset ( $this -> parameters [ $name ]) || isset ( $this -> loadedDynamicParameters [ $name ]) || array_key_exists ( $name , $this -> parameters ))) {
throw new InvalidArgumentException ( sprintf ( 'The parameter "%s" must be defined.' , $name ));
}
2014-11-30 15:07:59 +00:00
}
2016-08-12 19:34:27 +01:00
if ( isset ( $this -> loadedDynamicParameters [ $name ])) {
return $this -> loadedDynamicParameters [ $name ] ? $this -> dynamicParameters [ $name ] : $this -> getDynamicParameter ( $name );
}
2014-11-30 15:07:59 +00:00
return $this -> parameters [ $name ];
}
/**
* { @ inheritdoc }
*/
public function hasParameter ( $name )
{
$name = strtolower ( $name );
2017-06-12 12:31:43 +01:00
return isset ( $this -> parameters [ $name ]) || isset ( $this -> loadedDynamicParameters [ $name ]) || array_key_exists ( $name , $this -> parameters );
2014-11-30 15:07:59 +00:00
}
/**
* { @ inheritdoc }
*/
public function setParameter ( $name , $value )
{
throw new LogicException ( 'Impossible to call set() on a frozen ParameterBag.' );
}
/**
* { @ inheritdoc }
*/
public function getParameterBag ()
{
if ( null === $this -> parameterBag ) {
2016-08-12 19:34:27 +01:00
$parameters = $this -> parameters ;
foreach ( $this -> loadedDynamicParameters as $name => $loaded ) {
$parameters [ $name ] = $loaded ? $this -> dynamicParameters [ $name ] : $this -> getDynamicParameter ( $name );
}
$this -> parameterBag = new FrozenParameterBag ( $parameters );
2014-11-30 15:07:59 +00:00
}
return $this -> parameterBag ;
}
2014-12-12 16:21:40 +00:00
2016-08-12 19:34:27 +01:00
private $loadedDynamicParameters = array (
'foo' => false ,
'buz' => false ,
);
private $dynamicParameters = array ();
/**
* Computes a dynamic parameter .
*
* @ param string The name of the dynamic parameter to load
*
* @ return mixed The value of the dynamic parameter
*
* @ throws InvalidArgumentException When the dynamic parameter does not exist
*/
private function getDynamicParameter ( $name )
{
switch ( $name ) {
case 'foo' : $value = ( 'wiz' . $this -> targetDirs [ 1 ]); break ;
case 'buz' : $value = $this -> targetDirs [ 2 ]; break ;
default : throw new InvalidArgumentException ( sprintf ( 'The dynamic parameter "%s" must be defined.' , $name ));
}
$this -> loadedDynamicParameters [ $name ] = true ;
return $this -> dynamicParameters [ $name ] = $value ;
}
2014-12-04 20:13:58 +00:00
/**
* Gets the default parameters .
*
* @ return array An array of the default parameters
*/
protected function getDefaultParameters ()
{
return array (
'bar' => __DIR__ ,
'baz' => ( __DIR__ . '/PhpDumperTest.php' ),
);
}
2014-11-30 15:07:59 +00:00
}