2010-01-04 14:26:20 +00:00
< ? php
use Symfony\Components\DependencyInjection\Container ;
use Symfony\Components\DependencyInjection\Reference ;
use Symfony\Components\DependencyInjection\Parameter ;
/**
* ProjectServiceContainer
*
* This class has been auto - generated
* by the Symfony Dependency Injection Component .
*
* @ property FooClass $foo
* @ property FooClass $bar
* @ property Object $foo . baz
* @ property Object $foo_bar
* @ property FooClass $method_call1
* @ property FooClass $alias_for_foo
*/
class ProjectServiceContainer extends Container
{
protected $shared = array ();
/**
* Constructor .
*/
public function __construct ()
{
2010-02-08 17:38:36 +00:00
parent :: __construct ();
$this -> parameters = $this -> getDefaultParameters ();
2010-01-04 14:26:20 +00:00
}
/**
* Gets the 'foo' service .
*
* @ return FooClass A FooClass instance .
*/
protected function getFooService ()
{
require_once '%path%/foo.php' ;
2010-01-21 20:28:21 +00:00
$instance = call_user_func ( array ( 'FooClass' , 'getInstance' ), 'foo' , $this -> getFoo_BazService (), array ( $this -> getParameter ( 'foo' ) => 'foo is ' . $this -> getParameter ( 'foo' ), 'bar' => $this -> getParameter ( 'foo' )), true , $this );
2010-01-04 14:26:20 +00:00
$instance -> setBar ( 'bar' );
$instance -> initialize ();
sc_configure ( $instance );
return $instance ;
}
/**
* Gets the 'bar' service .
*
* This service is shared .
* This method always returns the same instance of the service .
*
* @ return FooClass A FooClass instance .
*/
protected function getBarService ()
{
if ( isset ( $this -> shared [ 'bar' ])) return $this -> shared [ 'bar' ];
2010-01-21 20:28:21 +00:00
$instance = new FooClass ( 'foo' , $this -> getFoo_BazService (), $this -> getParameter ( 'foo_bar' ));
$this -> getFoo_BazService () -> configure ( $instance );
2010-01-04 14:26:20 +00:00
return $this -> shared [ 'bar' ] = $instance ;
}
/**
* Gets the 'foo.baz' service .
*
* This service is shared .
* This method always returns the same instance of the service .
*
* @ return Object A % baz_class % instance .
*/
protected function getFoo_BazService ()
{
if ( isset ( $this -> shared [ 'foo.baz' ])) return $this -> shared [ 'foo.baz' ];
$instance = call_user_func ( array ( $this -> getParameter ( 'baz_class' ), 'getInstance' ));
call_user_func ( array ( $this -> getParameter ( 'baz_class' ), 'configureStatic1' ), $instance );
return $this -> shared [ 'foo.baz' ] = $instance ;
}
/**
* Gets the 'foo_bar' service .
*
* This service is shared .
* This method always returns the same instance of the service .
*
* @ return Object A % foo_class % instance .
*/
protected function getFooBarService ()
{
if ( isset ( $this -> shared [ 'foo_bar' ])) return $this -> shared [ 'foo_bar' ];
$class = $this -> getParameter ( 'foo_class' );
$instance = new $class ();
return $this -> shared [ 'foo_bar' ] = $instance ;
}
/**
* Gets the 'method_call1' service .
*
* This service is shared .
* This method always returns the same instance of the service .
*
* @ return FooClass A FooClass instance .
*/
protected function getMethodCall1Service ()
{
if ( isset ( $this -> shared [ 'method_call1' ])) return $this -> shared [ 'method_call1' ];
$instance = new FooClass ();
2010-01-21 20:28:21 +00:00
$instance -> setBar ( $this -> getFooService ());
2010-01-04 14:26:20 +00:00
$instance -> setBar ( $this -> getService ( 'foo' , Container :: NULL_ON_INVALID_REFERENCE ));
if ( $this -> hasService ( 'foo' ))
{
$instance -> setBar ( $this -> getService ( 'foo' , Container :: NULL_ON_INVALID_REFERENCE ));
}
if ( $this -> hasService ( 'foobaz' ))
{
$instance -> setBar ( $this -> getService ( 'foobaz' , Container :: NULL_ON_INVALID_REFERENCE ));
}
return $this -> shared [ 'method_call1' ] = $instance ;
}
/**
* Gets the alias_for_foo service alias .
*
* @ return FooClass An instance of the foo service
*/
protected function getAliasForFooService ()
{
2010-01-21 20:28:21 +00:00
return $this -> getFooService ();
2010-01-04 14:26:20 +00:00
}
/**
* Gets the default parameters .
*
* @ return array An array of the default parameters
*/
protected function getDefaultParameters ()
{
return array (
'baz_class' => 'BazClass' ,
'foo_class' => 'FooClass' ,
'foo' => 'bar' ,
);
}
}