@@ -9,7 +9,7 @@ discard block |
||
9 | 9 | use Resta\Contracts\ApplicationContracts; |
10 | 10 | use Resta\Exception\FileNotFoundException; |
11 | 11 | |
12 | -class Container implements ContainerContracts,\ArrayAccess |
|
12 | +class Container implements ContainerContracts, \ArrayAccess |
|
13 | 13 | { |
14 | 14 | /** |
15 | 15 | * @var bool |
@@ -51,12 +51,12 @@ discard block |
||
51 | 51 | * @param array $bind |
52 | 52 | * @return array |
53 | 53 | */ |
54 | - public function applicationProviderBinding($make,$bind=array()) |
|
54 | + public function applicationProviderBinding($make, $bind = array()) |
|
55 | 55 | { |
56 | 56 | //service container is an automatic application provider |
57 | 57 | //that we can bind to the special class di in the dependency condition. |
58 | 58 | //This method is automatically added to the classes resolved by the entire make bind method. |
59 | - return array_merge($bind,['app'=>$make]); |
|
59 | + return array_merge($bind, ['app'=>$make]); |
|
60 | 60 | } |
61 | 61 | |
62 | 62 | /** |
@@ -68,16 +68,16 @@ discard block |
||
68 | 68 | * @throws DependencyException |
69 | 69 | * @throws NotFoundException |
70 | 70 | */ |
71 | - public function bind($object=null,$callback=null,$alias=null) |
|
71 | + public function bind($object = null, $callback = null, $alias = null) |
|
72 | 72 | { |
73 | - if(!is_null($alias)){ |
|
73 | + if (!is_null($alias)) { |
|
74 | 74 | $object = $alias; |
75 | 75 | } |
76 | 76 | |
77 | 77 | //If the bind method does not have parameters object and callback, the value is directly assigned to the kernel object. |
78 | 78 | //Otherwise, when the bind object and callback are sent, the closure class inherits |
79 | 79 | //the applicationProvider object and the resolve method is called |
80 | - return $this->make($object,$callback,'container'); |
|
80 | + return $this->make($object, $callback, 'container'); |
|
81 | 81 | } |
82 | 82 | |
83 | 83 | /** |
@@ -89,16 +89,16 @@ discard block |
||
89 | 89 | * @throws DependencyException |
90 | 90 | * @throws NotFoundException |
91 | 91 | */ |
92 | - private function build($object,$callback,$sync=false) |
|
92 | + private function build($object, $callback, $sync = false) |
|
93 | 93 | { |
94 | 94 | //If the console object returns true, |
95 | 95 | //we do not cancel binding operations |
96 | 96 | //We are getting what applies to console with consoleKernelObject. |
97 | - if($sync===false) return $this->consoleKernelObjectChecker($object,$callback); |
|
97 | + if ($sync===false) return $this->consoleKernelObjectChecker($object, $callback); |
|
98 | 98 | |
99 | 99 | //the value corresponding to the bind value for the global object is assigned and |
100 | 100 | //the resolve method is called for the dependency injection. |
101 | - $this->kernelAssigner()->setKernelObject($object,$callback); |
|
101 | + $this->kernelAssigner()->setKernelObject($object, $callback); |
|
102 | 102 | |
103 | 103 | //return kernel object |
104 | 104 | return $this->kernel(); |
@@ -113,11 +113,11 @@ discard block |
||
113 | 113 | * @throws DependencyException |
114 | 114 | * @throws NotFoundException |
115 | 115 | */ |
116 | - private function consoleKernelObject($object,$callback,$container=false) |
|
116 | + private function consoleKernelObject($object, $callback, $container = false) |
|
117 | 117 | { |
118 | 118 | //we use the console bindings class to specify the classes to be preloaded in the console application. |
119 | 119 | //Thus, classes that can not be bound with http are called without closure in global loaders directory. |
120 | - $this->resolve(ConsoleBindings::class)->console($object,$callback,$container); |
|
120 | + $this->resolve(ConsoleBindings::class)->console($object, $callback, $container); |
|
121 | 121 | |
122 | 122 | //The console application must always return the kernel method. |
123 | 123 | return $this->kernel(); |
@@ -132,7 +132,7 @@ discard block |
||
132 | 132 | * @throws DependencyException |
133 | 133 | * @throws NotFoundException |
134 | 134 | */ |
135 | - private function consoleKernelObjectChecker($object,$callback,$container=false) |
|
135 | + private function consoleKernelObjectChecker($object, $callback, $container = false) |
|
136 | 136 | { |
137 | 137 | //we check whether the callback value is a callable function. |
138 | 138 | $isCallableForCallback = is_callable($callback); |
@@ -140,10 +140,10 @@ discard block |
||
140 | 140 | //If the console object returns true, |
141 | 141 | //we do not cancel binding operations |
142 | 142 | //We are getting what applies to console with consoleKernelObject. |
143 | - if($this->console() AND $isCallableForCallback) return $this->consoleKernelObject($object,$callback,$container); |
|
143 | + if ($this->console() AND $isCallableForCallback) return $this->consoleKernelObject($object, $callback, $container); |
|
144 | 144 | |
145 | 145 | //If the application is not a console operation, we re-bind to existing methods synchronously. |
146 | - return ($container) ? $this->containerBuild($object,$callback,true) : $this->build($object,$callback,true); |
|
146 | + return ($container) ? $this->containerBuild($object, $callback, true) : $this->build($object, $callback, true); |
|
147 | 147 | } |
148 | 148 | |
149 | 149 | /** |
@@ -153,11 +153,11 @@ discard block |
||
153 | 153 | * @throws DependencyException |
154 | 154 | * @throws NotFoundException |
155 | 155 | */ |
156 | - private function consoleShared($object,$callback) |
|
156 | + private function consoleShared($object, $callback) |
|
157 | 157 | { |
158 | 158 | //The console share is evaluated as a true variable to be assigned as the 3rd parameter in the classes to be bound. |
159 | 159 | //The work to be done here is to bind the classes to be included in the console share privately. |
160 | - $this->kernelAssigner()->consoleShared($object,$callback); |
|
160 | + $this->kernelAssigner()->consoleShared($object, $callback); |
|
161 | 161 | } |
162 | 162 | |
163 | 163 | /** |
@@ -169,12 +169,12 @@ discard block |
||
169 | 169 | * @throws DependencyException |
170 | 170 | * @throws NotFoundException |
171 | 171 | */ |
172 | - public function containerBuild($object,$callback,$sync=false) |
|
172 | + public function containerBuild($object, $callback, $sync = false) |
|
173 | 173 | { |
174 | 174 | //If the console object returns true, |
175 | 175 | //we do not cancel binding operations |
176 | 176 | //We are getting what applies to console with consoleKernelObject. |
177 | - if($sync===false) return $this->consoleKernelObjectChecker($object,$callback,true); |
|
177 | + if ($sync===false) return $this->consoleKernelObjectChecker($object, $callback, true); |
|
178 | 178 | |
179 | 179 | //Since the objects that come to the build method are objects from the container method, |
180 | 180 | //we need to automatically create a kernel object named serviceContainer in this method. |
@@ -182,7 +182,7 @@ discard block |
||
182 | 182 | |
183 | 183 | //the value corresponding to the bind value for the global object is assigned and |
184 | 184 | //the resolve method is called for the dependency method. |
185 | - $this->kernelAssigner()->setKernelObject($object,$callback,'serviceContainer'); |
|
185 | + $this->kernelAssigner()->setKernelObject($object, $callback, 'serviceContainer'); |
|
186 | 186 | |
187 | 187 | //return kernel object |
188 | 188 | return $this->kernel(); |
@@ -192,11 +192,11 @@ discard block |
||
192 | 192 | * @param $class |
193 | 193 | * @param $bind |
194 | 194 | */ |
195 | - private function contextualBindCleaner($class,$bind) |
|
195 | + private function contextualBindCleaner($class, $bind) |
|
196 | 196 | { |
197 | 197 | //the context bind objects are checked again and the bind sequence submitted by |
198 | 198 | //the user is checked and forced to re-instantiate the object. |
199 | - if(isset(self::$instance[$class]) && self::$bindParams[$class]!==$bind){ |
|
199 | + if (isset(self::$instance[$class]) && self::$bindParams[$class]!==$bind) { |
|
200 | 200 | unset(self::$instance[$class]); |
201 | 201 | unset(self::$bindParams[$class]); |
202 | 202 | } |
@@ -219,13 +219,13 @@ discard block |
||
219 | 219 | |
220 | 220 | // the has method can have a dotted string value so |
221 | 221 | // we need to be able to control the string or array within the container. |
222 | - foreach (explode(".",$abstract) as $item){ |
|
223 | - if(isset($container[$item])){ |
|
222 | + foreach (explode(".", $abstract) as $item) { |
|
223 | + if (isset($container[$item])) { |
|
224 | 224 | $container = $container[$item]; |
225 | 225 | } |
226 | - else{ |
|
226 | + else { |
|
227 | 227 | $containerClosureResolver[] = $item; |
228 | - $container = ContainerClosureResolver::get(implode('.',$containerClosureResolver)); |
|
228 | + $container = ContainerClosureResolver::get(implode('.', $containerClosureResolver)); |
|
229 | 229 | } |
230 | 230 | } |
231 | 231 | |
@@ -247,11 +247,11 @@ discard block |
||
247 | 247 | |
248 | 248 | // the has method can have a dotted string value so |
249 | 249 | // we need to be able to control the string or array within the container. |
250 | - foreach (explode(".",$abstract) as $item){ |
|
250 | + foreach (explode(".", $abstract) as $item) { |
|
251 | 251 | |
252 | 252 | // this blog will work |
253 | 253 | // if the data in the container loop points to an array. |
254 | - if(!is_array($container)){ |
|
254 | + if (!is_array($container)) { |
|
255 | 255 | |
256 | 256 | // we are querying the value of |
257 | 257 | // the items corresponding to the dotted value in the container. |
@@ -259,7 +259,7 @@ discard block |
||
259 | 259 | $container = $container[$item]; |
260 | 260 | $bools[] = is_null($container) ? false : true; |
261 | 261 | } |
262 | - else{ |
|
262 | + else { |
|
263 | 263 | |
264 | 264 | // if the container array corresponds to a string, |
265 | 265 | // the bools array is filled with the isset control directly. |
@@ -269,7 +269,7 @@ discard block |
||
269 | 269 | |
270 | 270 | // the method returns false if the bools sequence is false, |
271 | 271 | // otherwise it will return true. |
272 | - return in_array(false,$bools) ? false : true; |
|
272 | + return in_array(false, $bools) ? false : true; |
|
273 | 273 | } |
274 | 274 | |
275 | 275 | /** |
@@ -319,7 +319,7 @@ discard block |
||
319 | 319 | * @throws DependencyException |
320 | 320 | * @throws NotFoundException |
321 | 321 | */ |
322 | - public function make($object=null,$callback=null,$container=false) |
|
322 | + public function make($object = null, $callback = null, $container = false) |
|
323 | 323 | { |
324 | 324 | //we check whether the boolean value of the singleton variable used |
325 | 325 | //for booting does not reset every time the object variable to be assigned to the kernel variable is true |
@@ -327,8 +327,8 @@ discard block |
||
327 | 327 | |
328 | 328 | //The console share is evaluated as a true variable to be assigned as the 3rd parameter in the classes to be bound. |
329 | 329 | //The work to be done here is to bind the classes to be included in the console share privately. |
330 | - if($container){ |
|
331 | - $this->consoleShared($object,$callback); |
|
330 | + if ($container) { |
|
331 | + $this->consoleShared($object, $callback); |
|
332 | 332 | } |
333 | 333 | |
334 | 334 | //If the third parameter passed to the bind method carries a container value, |
@@ -338,7 +338,7 @@ discard block |
||
338 | 338 | //If the bind method does not have parameters object and callback, the value is directly assigned to the kernel object. |
339 | 339 | //Otherwise, when the bind object and callback are sent, the closure class inherits |
340 | 340 | //the applicationProvider object and the resolve method is called |
341 | - return ($object===null) ? $this->kernel() : $this->{$makeBuild}($object,$callback); |
|
341 | + return ($object===null) ? $this->kernel() : $this->{$makeBuild}($object, $callback); |
|
342 | 342 | } |
343 | 343 | |
344 | 344 | /** |
@@ -358,7 +358,7 @@ discard block |
||
358 | 358 | */ |
359 | 359 | public function offsetGet($offset) { |
360 | 360 | |
361 | - return $this->resolve($this->instances['containerInstanceResolve'],[ |
|
361 | + return $this->resolve($this->instances['containerInstanceResolve'], [ |
|
362 | 362 | 'instances' => $this->instances |
363 | 363 | ])->{$offset}(); |
364 | 364 | } |
@@ -382,7 +382,7 @@ discard block |
||
382 | 382 | * @param null $concrete |
383 | 383 | * @return bool|mixed |
384 | 384 | */ |
385 | - public function register($key,$object,$concrete=null) |
|
385 | + public function register($key, $object, $concrete = null) |
|
386 | 386 | { |
387 | 387 | // we assign the values required |
388 | 388 | // for register to the global value variable. |
@@ -392,7 +392,7 @@ discard block |
||
392 | 392 | |
393 | 393 | // If there is an instance of the application class, |
394 | 394 | // the register method is saved both in this example and in the global. |
395 | - if(defined('appInstance')){ |
|
395 | + if (defined('appInstance')) { |
|
396 | 396 | |
397 | 397 | // where we will assign both the global instance |
398 | 398 | // and the registered application object. |
@@ -411,19 +411,19 @@ discard block |
||
411 | 411 | * @param bool $withConcrete |
412 | 412 | * @return bool |
413 | 413 | */ |
414 | - private function registerProcess($instance,$withConcrete=false) |
|
414 | + private function registerProcess($instance, $withConcrete = false) |
|
415 | 415 | { |
416 | 416 | // values recorded without concrete. |
417 | 417 | // or values deleted |
418 | - if(false===$withConcrete){ |
|
418 | + if (false===$withConcrete) { |
|
419 | 419 | |
420 | 420 | //values registered without concrete |
421 | - $instance->{$this->values['key']}=$this->values['object']; |
|
421 | + $instance->{$this->values['key']} = $this->values['object']; |
|
422 | 422 | return false; |
423 | 423 | } |
424 | 424 | |
425 | 425 | //values registered with concrete |
426 | - $instance->{$this->values['key']}[$this->values['object']]=$this->values['concrete']; |
|
426 | + $instance->{$this->values['key']}[$this->values['object']] = $this->values['concrete']; |
|
427 | 427 | } |
428 | 428 | |
429 | 429 | /** |
@@ -434,22 +434,22 @@ discard block |
||
434 | 434 | * @throws DependencyException |
435 | 435 | * @throws NotFoundException |
436 | 436 | */ |
437 | - public function resolve($class,$bind=array()) |
|
437 | + public function resolve($class, $bind = array()) |
|
438 | 438 | { |
439 | 439 | //the context bind objects are checked again and the bind sequence submitted by |
440 | 440 | //the user is checked and forced to re-instantiate the object. |
441 | - $this->contextualBindCleaner($class,$bind); |
|
441 | + $this->contextualBindCleaner($class, $bind); |
|
442 | 442 | |
443 | 443 | //We do an instance check to get the static instance values of |
444 | 444 | //the classes to be resolved with the make bind method. |
445 | - if(!isset(self::$instance[$class])){ |
|
445 | + if (!isset(self::$instance[$class])) { |
|
446 | 446 | |
447 | 447 | //bind params object |
448 | 448 | self::$bindParams[$class] = $bind; |
449 | 449 | |
450 | 450 | //By singleton checking, we solve the dependency injection of the given class. |
451 | 451 | //Thus, each class can be called together with its dependency. |
452 | - self::$instance[$class] = DIContainerManager::make($class,$this->applicationProviderBinding($this,self::$bindParams[$class])); |
|
452 | + self::$instance[$class] = DIContainerManager::make($class, $this->applicationProviderBinding($this, self::$bindParams[$class])); |
|
453 | 453 | $this->singleton()->resolved[$class] = self::$instance[$class]; |
454 | 454 | |
455 | 455 | //return resolve class |
@@ -467,9 +467,9 @@ discard block |
||
467 | 467 | * @param $class |
468 | 468 | * @return mixed |
469 | 469 | */ |
470 | - public function resolved($class){ |
|
470 | + public function resolved($class) { |
|
471 | 471 | |
472 | - if(isset($this['resolved'][$class])){ |
|
472 | + if (isset($this['resolved'][$class])) { |
|
473 | 473 | return $this['resolved'][$class]; |
474 | 474 | } |
475 | 475 | |
@@ -484,7 +484,7 @@ discard block |
||
484 | 484 | * @throws DependencyException |
485 | 485 | * @throws NotFoundException |
486 | 486 | */ |
487 | - public function share($object=null,$callback=null) |
|
487 | + public function share($object = null, $callback = null) |
|
488 | 488 | { |
489 | 489 | //we check whether the boolean value of the singleton variable used |
490 | 490 | //for booting does not reset every time the object variable to be assigned to the kernel variable is true |
@@ -492,12 +492,12 @@ discard block |
||
492 | 492 | |
493 | 493 | //The console share is evaluated as a true variable to be assigned as the 3rd parameter in the classes to be bound. |
494 | 494 | //The work to be done here is to bind the classes to be included in the console share privately. |
495 | - $this->consoleShared($object,$callback); |
|
495 | + $this->consoleShared($object, $callback); |
|
496 | 496 | |
497 | 497 | //If the bind method does not have parameters object and callback, the value is directly assigned to the kernel object. |
498 | 498 | //Otherwise, when the bind object and callback are sent, the closure class inherits |
499 | 499 | //the applicationProvider object and the resolve method is called |
500 | - return ($object===null) ? $this->kernel() : $this->build($object,$callback); |
|
500 | + return ($object===null) ? $this->kernel() : $this->build($object, $callback); |
|
501 | 501 | |
502 | 502 | } |
503 | 503 | |
@@ -517,7 +517,7 @@ discard block |
||
517 | 517 | */ |
518 | 518 | public function singleton() |
519 | 519 | { |
520 | - if($this->singleton===false){ |
|
520 | + if ($this->singleton===false) { |
|
521 | 521 | |
522 | 522 | //after first initializing, the singleton variable is set to true, |
523 | 523 | //and subsequent incoming classes can inherit the loaded object. |
@@ -538,12 +538,12 @@ discard block |
||
538 | 538 | // for application instance |
539 | 539 | // if the values to be saved are to be saved without the concrete, |
540 | 540 | // if it is an array. |
541 | - if($this->values['concrete']===null) { |
|
541 | + if ($this->values['concrete']===null) { |
|
542 | 542 | |
543 | 543 | // Without concrete, |
544 | 544 | // the saved value will be saved |
545 | 545 | // if the it does not exist in application instance. |
546 | - if(!isset($instance->{$this->values['key']})) { |
|
546 | + if (!isset($instance->{$this->values['key']})) { |
|
547 | 547 | $this->registerProcess($instance); |
548 | 548 | } |
549 | 549 | return false; |
@@ -551,7 +551,7 @@ discard block |
||
551 | 551 | |
552 | 552 | // We send concrete values to be recorded with concrete as true. |
553 | 553 | // these values will be recorded as a array. |
554 | - $this->registerProcess($instance,true); |
|
554 | + $this->registerProcess($instance, true); |
|
555 | 555 | } |
556 | 556 | |
557 | 557 | /** |
@@ -559,11 +559,11 @@ discard block |
||
559 | 559 | * @param null|string $object |
560 | 560 | * @return mixed |
561 | 561 | */ |
562 | - public function terminate($key,$object=null) |
|
562 | + public function terminate($key, $object = null) |
|
563 | 563 | { |
564 | 564 | // object null is |
565 | 565 | // sent to just terminate a key. |
566 | - if($object===null){ |
|
566 | + if ($object===null) { |
|
567 | 567 | unset(core()->{$key}); |
568 | 568 | unset($this->singleton()->{$key}); |
569 | 569 | return false; |
@@ -94,7 +94,9 @@ discard block |
||
94 | 94 | //If the console object returns true, |
95 | 95 | //we do not cancel binding operations |
96 | 96 | //We are getting what applies to console with consoleKernelObject. |
97 | - if($sync===false) return $this->consoleKernelObjectChecker($object,$callback); |
|
97 | + if($sync===false) { |
|
98 | + return $this->consoleKernelObjectChecker($object,$callback); |
|
99 | + } |
|
98 | 100 | |
99 | 101 | //the value corresponding to the bind value for the global object is assigned and |
100 | 102 | //the resolve method is called for the dependency injection. |
@@ -140,7 +142,9 @@ discard block |
||
140 | 142 | //If the console object returns true, |
141 | 143 | //we do not cancel binding operations |
142 | 144 | //We are getting what applies to console with consoleKernelObject. |
143 | - if($this->console() AND $isCallableForCallback) return $this->consoleKernelObject($object,$callback,$container); |
|
145 | + if($this->console() AND $isCallableForCallback) { |
|
146 | + return $this->consoleKernelObject($object,$callback,$container); |
|
147 | + } |
|
144 | 148 | |
145 | 149 | //If the application is not a console operation, we re-bind to existing methods synchronously. |
146 | 150 | return ($container) ? $this->containerBuild($object,$callback,true) : $this->build($object,$callback,true); |
@@ -174,7 +178,9 @@ discard block |
||
174 | 178 | //If the console object returns true, |
175 | 179 | //we do not cancel binding operations |
176 | 180 | //We are getting what applies to console with consoleKernelObject. |
177 | - if($sync===false) return $this->consoleKernelObjectChecker($object,$callback,true); |
|
181 | + if($sync===false) { |
|
182 | + return $this->consoleKernelObjectChecker($object,$callback,true); |
|
183 | + } |
|
178 | 184 | |
179 | 185 | //Since the objects that come to the build method are objects from the container method, |
180 | 186 | //we need to automatically create a kernel object named serviceContainer in this method. |
@@ -222,8 +228,7 @@ discard block |
||
222 | 228 | foreach (explode(".",$abstract) as $item){ |
223 | 229 | if(isset($container[$item])){ |
224 | 230 | $container = $container[$item]; |
225 | - } |
|
226 | - else{ |
|
231 | + } else{ |
|
227 | 232 | $containerClosureResolver[] = $item; |
228 | 233 | $container = ContainerClosureResolver::get(implode('.',$containerClosureResolver)); |
229 | 234 | } |
@@ -258,8 +263,7 @@ discard block |
||
258 | 263 | // the control result is transferred to the bools array. |
259 | 264 | $container = $container[$item]; |
260 | 265 | $bools[] = is_null($container) ? false : true; |
261 | - } |
|
262 | - else{ |
|
266 | + } else{ |
|
263 | 267 | |
264 | 268 | // if the container array corresponds to a string, |
265 | 269 | // the bools array is filled with the isset control directly. |