DiInterface.php
2.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
<?php
namespace Phalcon {
/**
* Phalcon\DiInterface initializer
*/
interface DiInterface extends \ArrayAccess {
/**
* Registers a service in the services container
*
* @param string $name
* @param mixed $definition
* @param boolean $shared
* @return \Phalcon\DI\ServiceInterface
*/
public function set($name, $definition, $shared=null);
/**
* Registers an "always shared" service in the services container
*
* @param string $name
* @param mixed $definition
* @return \Phalcon\DI\ServiceInterface
*/
public function setShared($name, $definition);
/**
* Removes a service in the services container
*
* @param string $name
*/
public function remove($name);
/**
* Attempts to register a service in the services container
* Only is successful if a service hasn't been registered previously
* with the same name
*
* @param string $name
* @param mixed $definition
* @param boolean $shared
* @return \Phalcon\DI\ServiceInterface
*/
public function attempt($name, $definition, $shared=null);
/**
* Resolves the service based on its configuration
*
* @param string $name
* @param array $parameters
* @return mixed
*/
public function get($name, $parameters=null);
/**
* Returns a shared service based on their configuration
*
* @param string $name
* @param array $parameters
* @return mixed
*/
public function getShared($name, $parameters=null);
/**
* Sets a service using a raw \Phalcon\DI\Service definition
*
* @param string $name
* @param \Phalcon\DI\ServiceInterface $rawDefinition
* @return \Phalcon\DI\ServiceInterface
*/
public function setRaw($name, $rawDefinition);
/**
* Returns a service definition without resolving
*
* @param string $name
* @return mixed
*/
public function getRaw($name);
/**
* Returns the corresponding \Phalcon\Di\Service instance for a service
*
* @param string $name
* @return \Phalcon\DI\ServiceInterface
*/
public function getService($name);
/**
* Check whether the DI contains a service by a name
*
* @param string $name
* @return boolean
*/
public function has($name);
/**
* Check whether the last service obtained via getShared produced a fresh instance or an existing one
*
* @return boolean
*/
public function wasFreshInstance();
/**
* Return the services registered in the DI
*
* @return array
*/
public function getServices();
/**
* Set a default dependency injection container to be obtained into static methods
*
* @param \Phalcon\DiInterface $dependencyInjector
*/
public static function setDefault($dependencyInjector);
/**
* Return the last DI created
*
* @return \Phalcon\DiInterface
*/
public static function getDefault();
/**
* Resets the internal default DI
*/
public static function reset();
}
}