123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626 |
- <?php
- /*
- * This file is part of Composer.
- *
- * (c) Nils Adermann <naderman@naderman.de>
- * Jordi Boggiano <j.boggiano@seld.be>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
- namespace Composer\Package;
- use Composer\Package\Version\VersionParser;
- /**
- * A package with setters for all members to create it dynamically in memory
- *
- * @author Nils Adermann <naderman@naderman.de>
- */
- class MemoryPackage extends BasePackage
- {
- protected $type;
- protected $targetDir;
- protected $installationSource;
- protected $sourceType;
- protected $sourceUrl;
- protected $sourceReference;
- protected $distType;
- protected $distUrl;
- protected $distReference;
- protected $distSha1Checksum;
- protected $version;
- protected $prettyVersion;
- protected $repositories;
- protected $license = array();
- protected $releaseDate;
- protected $keywords;
- protected $authors;
- protected $description;
- protected $homepage;
- protected $extra = array();
- protected $binaries = array();
- protected $scripts = array();
- protected $aliases = array();
- protected $alias;
- protected $prettyAlias;
- protected $installedAsAlias;
- protected $dev;
- protected $requires = array();
- protected $conflicts = array();
- protected $provides = array();
- protected $replaces = array();
- protected $recommends = array();
- protected $suggests = array();
- protected $autoload = array();
- /**
- * Creates a new in memory package.
- *
- * @param string $name The package's name
- * @param string $version The package's version
- * @param string $prettyVersion The package's non-normalized version
- */
- public function __construct($name, $version, $prettyVersion)
- {
- parent::__construct($name);
- $this->version = $version;
- $this->prettyVersion = $prettyVersion;
- $this->dev = VersionParser::isDev($version);
- }
- /**
- * {@inheritDoc}
- */
- public function isDev()
- {
- return $this->dev;
- }
- /**
- * @param string $type
- */
- public function setType($type)
- {
- $this->type = $type;
- }
- /**
- * {@inheritDoc}
- */
- public function getType()
- {
- return $this->type ?: 'library';
- }
- /**
- * @param string $targetDir
- */
- public function setTargetDir($targetDir)
- {
- $this->targetDir = $targetDir;
- }
- /**
- * {@inheritDoc}
- */
- public function getTargetDir()
- {
- return $this->targetDir;
- }
- /**
- * @param array $extra
- */
- public function setExtra(array $extra)
- {
- $this->extra = $extra;
- }
- /**
- * {@inheritDoc}
- */
- public function getExtra()
- {
- return $this->extra;
- }
- /**
- * @param array $binaries
- */
- public function setBinaries(array $binaries)
- {
- $this->binaries = $binaries;
- }
- /**
- * {@inheritDoc}
- */
- public function getBinaries()
- {
- return $this->binaries;
- }
- /**
- * @param array $scripts
- */
- public function setScripts(array $scripts)
- {
- $this->scripts = $scripts;
- }
- /**
- * {@inheritDoc}
- */
- public function getScripts()
- {
- return $this->scripts;
- }
- /**
- * @param array $aliases
- */
- public function setAliases(array $aliases)
- {
- $this->aliases = $aliases;
- }
- /**
- * {@inheritDoc}
- */
- public function getAliases()
- {
- return $this->aliases;
- }
- /**
- * @param string $alias
- */
- public function setAlias($alias)
- {
- $this->alias = $alias;
- }
- /**
- * {@inheritDoc}
- */
- public function getAlias()
- {
- return $this->alias;
- }
- /**
- * @param string $prettyAlias
- */
- public function setPrettyAlias($prettyAlias)
- {
- $this->prettyAlias = $prettyAlias;
- }
- /**
- * {@inheritDoc}
- */
- public function getPrettyAlias()
- {
- return $this->prettyAlias;
- }
- /**
- * Enabled if the package is installed from its alias package
- *
- * @param string $installedAsAlias
- */
- public function setInstalledAsAlias($installedAsAlias)
- {
- $this->installedAsAlias = $installedAsAlias;
- }
- /**
- * @return string
- */
- public function isInstalledAsAlias()
- {
- return $this->installedAsAlias;
- }
- /**
- * {@inheritDoc}
- */
- public function setInstallationSource($type)
- {
- $this->installationSource = $type;
- }
- /**
- * {@inheritDoc}
- */
- public function getInstallationSource()
- {
- return $this->installationSource;
- }
- /**
- * @param string $type
- */
- public function setSourceType($type)
- {
- $this->sourceType = $type;
- }
- /**
- * {@inheritDoc}
- */
- public function getSourceType()
- {
- return $this->sourceType;
- }
- /**
- * @param string $url
- */
- public function setSourceUrl($url)
- {
- $this->sourceUrl = $url;
- }
- /**
- * {@inheritDoc}
- */
- public function getSourceUrl()
- {
- return $this->sourceUrl;
- }
- /**
- * @param string $reference
- */
- public function setSourceReference($reference)
- {
- $this->sourceReference = $reference;
- }
- /**
- * {@inheritDoc}
- */
- public function getSourceReference()
- {
- return $this->sourceReference;
- }
- /**
- * @param string $type
- */
- public function setDistType($type)
- {
- $this->distType = $type;
- }
- /**
- * {@inheritDoc}
- */
- public function getDistType()
- {
- return $this->distType;
- }
- /**
- * @param string $url
- */
- public function setDistUrl($url)
- {
- $this->distUrl = $url;
- }
- /**
- * {@inheritDoc}
- */
- public function getDistUrl()
- {
- return $this->distUrl;
- }
- /**
- * @param string $reference
- */
- public function setDistReference($reference)
- {
- $this->distReference = $reference;
- }
- /**
- * {@inheritDoc}
- */
- public function getDistReference()
- {
- return $this->distReference;
- }
- /**
- * @param string $sha1checksum
- */
- public function setDistSha1Checksum($sha1checksum)
- {
- $this->distSha1Checksum = $sha1checksum;
- }
- /**
- * {@inheritDoc}
- */
- public function getDistSha1Checksum()
- {
- return $this->distSha1Checksum;
- }
- /**
- * Set the repositories
- *
- * @param string $repositories
- */
- public function setRepositories($repositories)
- {
- $this->repositories = $repositories;
- }
- /**
- * {@inheritDoc}
- */
- public function getRepositories()
- {
- return $this->repositories;
- }
- /**
- * {@inheritDoc}
- */
- public function getVersion()
- {
- return $this->version;
- }
- /**
- * {@inheritDoc}
- */
- public function getPrettyVersion()
- {
- return $this->prettyVersion;
- }
- /**
- * Set the license
- *
- * @param array $license
- */
- public function setLicense(array $license)
- {
- $this->license = $license;
- }
- /**
- * {@inheritDoc}
- */
- public function getLicense()
- {
- return $this->license;
- }
- /**
- * Set the required packages
- *
- * @param array $requires A set of package links
- */
- public function setRequires(array $requires)
- {
- $this->requires = $requires;
- }
- /**
- * {@inheritDoc}
- */
- public function getRequires()
- {
- return $this->requires;
- }
- /**
- * Set the conflicting packages
- *
- * @param array $conflicts A set of package links
- */
- public function setConflicts(array $conflicts)
- {
- $this->conflicts = $conflicts;
- }
- /**
- * {@inheritDoc}
- */
- public function getConflicts()
- {
- return $this->conflicts;
- }
- /**
- * Set the provided virtual packages
- *
- * @param array $provides A set of package links
- */
- public function setProvides(array $provides)
- {
- $this->provides = $provides;
- }
- /**
- * {@inheritDoc}
- */
- public function getProvides()
- {
- return $this->provides;
- }
- /**
- * Set the packages this one replaces
- *
- * @param array $replaces A set of package links
- */
- public function setReplaces(array $replaces)
- {
- $this->replaces = $replaces;
- }
- /**
- * {@inheritDoc}
- */
- public function getReplaces()
- {
- return $this->replaces;
- }
- /**
- * Set the recommended packages
- *
- * @param array $recommends A set of package links
- */
- public function setRecommends(array $recommends)
- {
- $this->recommends = $recommends;
- }
- /**
- * {@inheritDoc}
- */
- public function getRecommends()
- {
- return $this->recommends;
- }
- /**
- * Set the suggested packages
- *
- * @param array $suggests A set of package links
- */
- public function setSuggests(array $suggests)
- {
- $this->suggests = $suggests;
- }
- /**
- * {@inheritDoc}
- */
- public function getSuggests()
- {
- return $this->suggests;
- }
- /**
- * Set the releaseDate
- *
- * @param DateTime $releaseDate
- */
- public function setReleaseDate(\DateTime $releaseDate)
- {
- $this->releaseDate = $releaseDate;
- }
- /**
- * {@inheritDoc}
- */
- public function getReleaseDate()
- {
- return $this->releaseDate;
- }
- /**
- * Set the keywords
- *
- * @param array $keywords
- */
- public function setKeywords(array $keywords)
- {
- $this->keywords = $keywords;
- }
- /**
- * {@inheritDoc}
- */
- public function getKeywords()
- {
- return $this->keywords;
- }
- /**
- * Set the authors
- *
- * @param array $authors
- */
- public function setAuthors(array $authors)
- {
- $this->authors = $authors;
- }
- /**
- * {@inheritDoc}
- */
- public function getAuthors()
- {
- return $this->authors;
- }
- /**
- * Set the description
- *
- * @param string $description
- */
- public function setDescription($description)
- {
- $this->description = $description;
- }
- /**
- * {@inheritDoc}
- */
- public function getDescription()
- {
- return $this->description;
- }
- /**
- * Set the homepage
- *
- * @param string $homepage
- */
- public function setHomepage($homepage)
- {
- $this->homepage = $homepage;
- }
- /**
- * {@inheritDoc}
- */
- public function getHomepage()
- {
- return $this->homepage;
- }
- /**
- * Set the autoload mapping
- *
- * @param array $autoload Mapping of autoloading rules
- */
- public function setAutoload(array $autoload)
- {
- $this->autoload = $autoload;
- }
- /**
- * {@inheritDoc}
- */
- public function getAutoload()
- {
- return $this->autoload;
- }
- }
|