暫無描述

Extension.php 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <?php
  2. /*
  3. * This file is part of the Symfony package.
  4. *
  5. * (c) Fabien Potencier <fabien@symfony.com>
  6. *
  7. * For the full copyright and license information, please view the LICENSE
  8. * file that was distributed with this source code.
  9. */
  10. namespace Symfony\Component\HttpKernel\DependencyInjection;
  11. use Symfony\Component\DependencyInjection\Extension\Extension as BaseExtension;
  12. /**
  13. * Allow adding classes to the class cache.
  14. *
  15. * @author Fabien Potencier <fabien@symfony.com>
  16. */
  17. abstract class Extension extends BaseExtension
  18. {
  19. private $classes = array();
  20. private $annotatedClasses = array();
  21. /**
  22. * Gets the classes to cache.
  23. *
  24. * @return array An array of classes
  25. */
  26. public function getClassesToCompile()
  27. {
  28. return $this->classes;
  29. }
  30. /**
  31. * Gets the annotated classes to cache.
  32. *
  33. * @return array An array of classes
  34. */
  35. public function getAnnotatedClassesToCompile()
  36. {
  37. return $this->annotatedClasses;
  38. }
  39. /**
  40. * Adds classes to the class cache.
  41. *
  42. * @param array $classes An array of class patterns
  43. */
  44. public function addClassesToCompile(array $classes)
  45. {
  46. $this->classes = array_merge($this->classes, $classes);
  47. }
  48. /**
  49. * Adds annotated classes to the class cache.
  50. *
  51. * @param array $annotatedClasses An array of class patterns
  52. */
  53. public function addAnnotatedClassesToCompile(array $annotatedClasses)
  54. {
  55. $this->annotatedClasses = array_merge($this->annotatedClasses, $annotatedClasses);
  56. }
  57. }