Chris@0
|
1 <?php
|
Chris@0
|
2
|
Chris@0
|
3 /*
|
Chris@0
|
4 * This file is part of the Symfony package.
|
Chris@0
|
5 *
|
Chris@0
|
6 * (c) Fabien Potencier <fabien@symfony.com>
|
Chris@0
|
7 *
|
Chris@0
|
8 * For the full copyright and license information, please view the LICENSE
|
Chris@0
|
9 * file that was distributed with this source code.
|
Chris@0
|
10 */
|
Chris@0
|
11
|
Chris@0
|
12 namespace Symfony\Component\DependencyInjection\LazyProxy\Instantiator;
|
Chris@0
|
13
|
Chris@0
|
14 use Symfony\Component\DependencyInjection\ContainerInterface;
|
Chris@0
|
15 use Symfony\Component\DependencyInjection\Definition;
|
Chris@0
|
16
|
Chris@0
|
17 /**
|
Chris@0
|
18 * Lazy proxy instantiator, capable of instantiating a proxy given a container, the
|
Chris@0
|
19 * service definitions and a callback that produces the real service instance.
|
Chris@0
|
20 *
|
Chris@0
|
21 * @author Marco Pivetta <ocramius@gmail.com>
|
Chris@0
|
22 */
|
Chris@0
|
23 interface InstantiatorInterface
|
Chris@0
|
24 {
|
Chris@0
|
25 /**
|
Chris@0
|
26 * Instantiates a proxy object.
|
Chris@0
|
27 *
|
Chris@0
|
28 * @param ContainerInterface $container the container from which the service is being requested
|
Chris@0
|
29 * @param Definition $definition the definition of the requested service
|
Chris@0
|
30 * @param string $id identifier of the requested service
|
Chris@0
|
31 * @param callable $realInstantiator zero-argument callback that is capable of producing the real
|
Chris@0
|
32 * service instance
|
Chris@0
|
33 *
|
Chris@0
|
34 * @return object
|
Chris@0
|
35 */
|
Chris@0
|
36 public function instantiateProxy(ContainerInterface $container, Definition $definition, $id, $realInstantiator);
|
Chris@0
|
37 }
|