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\HttpKernel\DependencyInjection;
|
Chris@0
|
13
|
Chris@0
|
14 use Symfony\Component\DependencyInjection\Extension\Extension as BaseExtension;
|
Chris@0
|
15
|
Chris@0
|
16 /**
|
Chris@0
|
17 * Allow adding classes to the class cache.
|
Chris@0
|
18 *
|
Chris@0
|
19 * @author Fabien Potencier <fabien@symfony.com>
|
Chris@0
|
20 */
|
Chris@0
|
21 abstract class Extension extends BaseExtension
|
Chris@0
|
22 {
|
Chris@17
|
23 private $classes = [];
|
Chris@17
|
24 private $annotatedClasses = [];
|
Chris@0
|
25
|
Chris@0
|
26 /**
|
Chris@0
|
27 * Gets the classes to cache.
|
Chris@0
|
28 *
|
Chris@0
|
29 * @return array An array of classes
|
Chris@14
|
30 *
|
Chris@14
|
31 * @deprecated since version 3.3, to be removed in 4.0.
|
Chris@0
|
32 */
|
Chris@0
|
33 public function getClassesToCompile()
|
Chris@0
|
34 {
|
Chris@14
|
35 if (\PHP_VERSION_ID >= 70000) {
|
Chris@14
|
36 @trigger_error(__METHOD__.'() is deprecated since Symfony 3.3, to be removed in 4.0.', E_USER_DEPRECATED);
|
Chris@14
|
37 }
|
Chris@14
|
38
|
Chris@0
|
39 return $this->classes;
|
Chris@0
|
40 }
|
Chris@0
|
41
|
Chris@0
|
42 /**
|
Chris@0
|
43 * Gets the annotated classes to cache.
|
Chris@0
|
44 *
|
Chris@0
|
45 * @return array An array of classes
|
Chris@0
|
46 */
|
Chris@0
|
47 public function getAnnotatedClassesToCompile()
|
Chris@0
|
48 {
|
Chris@0
|
49 return $this->annotatedClasses;
|
Chris@0
|
50 }
|
Chris@0
|
51
|
Chris@0
|
52 /**
|
Chris@0
|
53 * Adds classes to the class cache.
|
Chris@0
|
54 *
|
Chris@0
|
55 * @param array $classes An array of class patterns
|
Chris@14
|
56 *
|
Chris@14
|
57 * @deprecated since version 3.3, to be removed in 4.0.
|
Chris@0
|
58 */
|
Chris@0
|
59 public function addClassesToCompile(array $classes)
|
Chris@0
|
60 {
|
Chris@14
|
61 if (\PHP_VERSION_ID >= 70000) {
|
Chris@14
|
62 @trigger_error(__METHOD__.'() is deprecated since Symfony 3.3, to be removed in 4.0.', E_USER_DEPRECATED);
|
Chris@14
|
63 }
|
Chris@14
|
64
|
Chris@0
|
65 $this->classes = array_merge($this->classes, $classes);
|
Chris@0
|
66 }
|
Chris@0
|
67
|
Chris@0
|
68 /**
|
Chris@0
|
69 * Adds annotated classes to the class cache.
|
Chris@0
|
70 *
|
Chris@0
|
71 * @param array $annotatedClasses An array of class patterns
|
Chris@0
|
72 */
|
Chris@0
|
73 public function addAnnotatedClassesToCompile(array $annotatedClasses)
|
Chris@0
|
74 {
|
Chris@0
|
75 $this->annotatedClasses = array_merge($this->annotatedClasses, $annotatedClasses);
|
Chris@0
|
76 }
|
Chris@0
|
77 }
|