Composer.php 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. <?php
  2. /*
  3. * This file is part of Composer.
  4. *
  5. * (c) Nils Adermann <naderman@naderman.de>
  6. * Jordi Boggiano <j.boggiano@seld.be>
  7. *
  8. * For the full copyright and license information, please view the LICENSE
  9. * file that was distributed with this source code.
  10. */
  11. namespace Composer;
  12. use Composer\Package\PackageInterface;
  13. use Composer\Package\Locker;
  14. use Composer\Repository\RepositoryManager;
  15. use Composer\Installer\InstallationManager;
  16. use Composer\Downloader\DownloadManager;
  17. /**
  18. * @author Jordi Boggiano <j.boggiano@seld.be>
  19. * @author Konstantin Kudryashiv <ever.zet@gmail.com>
  20. */
  21. class Composer
  22. {
  23. const VERSION = '1.0.0-alpha4';
  24. /**
  25. * @var Package\PackageInterface
  26. */
  27. private $package;
  28. /**
  29. * @var Locker
  30. */
  31. private $locker;
  32. /**
  33. * @var Repository\RepositoryManager
  34. */
  35. private $repositoryManager;
  36. /**
  37. * @var Downloader\DownloadManager
  38. */
  39. private $downloadManager;
  40. /**
  41. * @var Installer\InstallationManager
  42. */
  43. private $installationManager;
  44. /**
  45. * @var Config
  46. */
  47. private $config;
  48. /**
  49. * @param Package\PackageInterface $package
  50. * @return void
  51. */
  52. public function setPackage(PackageInterface $package)
  53. {
  54. $this->package = $package;
  55. }
  56. /**
  57. * @return Package\PackageInterface
  58. */
  59. public function getPackage()
  60. {
  61. return $this->package;
  62. }
  63. /**
  64. * @param Config $config
  65. */
  66. public function setConfig(Config $config)
  67. {
  68. $this->config = $config;
  69. }
  70. /**
  71. * @return Config
  72. */
  73. public function getConfig()
  74. {
  75. return $this->config;
  76. }
  77. /**
  78. * @param Package\Locker $locker
  79. */
  80. public function setLocker(Locker $locker)
  81. {
  82. $this->locker = $locker;
  83. }
  84. /**
  85. * @return Package\Locker
  86. */
  87. public function getLocker()
  88. {
  89. return $this->locker;
  90. }
  91. /**
  92. * @param Repository\RepositoryManager $manager
  93. */
  94. public function setRepositoryManager(RepositoryManager $manager)
  95. {
  96. $this->repositoryManager = $manager;
  97. }
  98. /**
  99. * @return Repository\RepositoryManager
  100. */
  101. public function getRepositoryManager()
  102. {
  103. return $this->repositoryManager;
  104. }
  105. /**
  106. * @param Downloader\DownloadManager $manager
  107. */
  108. public function setDownloadManager(DownloadManager $manager)
  109. {
  110. $this->downloadManager = $manager;
  111. }
  112. /**
  113. * @return Downloader\DownloadManager
  114. */
  115. public function getDownloadManager()
  116. {
  117. return $this->downloadManager;
  118. }
  119. /**
  120. * @param Installer\InstallationManager $manager
  121. */
  122. public function setInstallationManager(InstallationManager $manager)
  123. {
  124. $this->installationManager = $manager;
  125. }
  126. /**
  127. * @return Installer\InstallationManager
  128. */
  129. public function getInstallationManager()
  130. {
  131. return $this->installationManager;
  132. }
  133. }