This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
symfony/tests/Symfony/Tests/Component/DependencyInjection/Fixtures/containers/container9.php

58 lines
2.1 KiB
PHP
Raw Normal View History

2010-01-04 14:26:20 +00:00
<?php
require_once __DIR__.'/../includes/classes.php';
use Symfony\Component\DependencyInjection\ContainerInterface;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Reference;
use Symfony\Component\DependencyInjection\Parameter;
2010-01-04 14:26:20 +00:00
$container = new ContainerBuilder();
2010-01-04 14:26:20 +00:00
$container->
register('foo', 'FooClass')->
2010-08-05 06:34:53 +01:00
addTag('foo', array('foo' => 'foo'))->
addTag('foo', array('bar' => 'bar'))->
setFactoryClass('FooClass')->
setFactoryMethod('getInstance')->
setArguments(array('foo', new Reference('foo.baz'), array('%foo%' => 'foo is %foo%', 'bar' => '%foo%'), true, new Reference('service_container')))->
2011-01-17 22:28:59 +00:00
setScope('prototype')->
addMethodCall('setBar', array(new Reference('bar')))->
addMethodCall('initialize')->
setConfigurator('sc_configure')
2010-01-04 14:26:20 +00:00
;
$container->
register('bar', 'FooClass')->
setArguments(array('foo', new Reference('foo.baz'), new Parameter('foo_bar')))->
2011-01-17 22:28:59 +00:00
setScope('container')->
setConfigurator(array(new Reference('foo.baz'), 'configure'))
2010-01-04 14:26:20 +00:00
;
$container->
register('foo.baz', '%baz_class%')->
setFactoryClass('%baz_class%')->
setFactoryMethod('getInstance')->
setConfigurator(array('%baz_class%', 'configureStatic1'))
2010-01-04 14:26:20 +00:00
;
$container->register('foo_bar', '%foo_class%');
2010-06-27 17:28:29 +01:00
$container->getParameterBag()->clear();
$container->getParameterBag()->add(array(
'baz_class' => 'BazClass',
'foo_class' => 'FooClass',
'foo' => 'bar',
2010-01-04 14:26:20 +00:00
));
$container->setAlias('alias_for_foo', 'foo');
$container->
register('method_call1', 'FooClass')->
setFile(realpath(__DIR__.'/../includes/foo.php'))->
addMethodCall('setBar', array(new Reference('foo')))->
2011-01-05 11:13:27 +00:00
addMethodCall('setBar', array(new Reference('foo2', ContainerInterface::NULL_ON_INVALID_REFERENCE)))->
addMethodCall('setBar', array(new Reference('foo3', ContainerInterface::IGNORE_ON_INVALID_REFERENCE)))->
2010-06-27 17:28:29 +01:00
addMethodCall('setBar', array(new Reference('foobaz', ContainerInterface::IGNORE_ON_INVALID_REFERENCE)))
2010-01-04 14:26:20 +00:00
;
$container->
register('factory_service')->
setFactoryService('foo.baz')->
setFactoryMethod('getInstance')
;
2010-01-04 14:26:20 +00:00
return $container;