/** * Returns the package meta data object of this package. * * @return \TYPO3\Flow\Package\MetaData */ public function getPackageMetaData() { if ($this->packageMetaData === NULL) { $this->packageMetaData = new MetaData($this->getPackageKey()); $this->packageMetaData->setDescription($this->getComposerManifest('description')); $this->packageMetaData->setVersion($this->getComposerManifest('version')); $requirements = $this->getComposerManifest('require'); if ($requirements !== NULL) { foreach ($requirements as $requirement => $version) { if ($this->packageRequirementIsComposerPackage($requirement) === FALSE) { // Skip non-package requirements continue; } $packageKey = $this->packageManager->getPackageKeyFromComposerName($requirement); $constraint = new MetaData\PackageConstraint(MetaDataInterface::CONSTRAINT_TYPE_DEPENDS, $packageKey); $this->packageMetaData->addConstraint($constraint); } } } return $this->packageMetaData; }
/** * Returns the package meta data object of this package. * * @return \TYPO3\Flow\Package\MetaData */ public function getPackageMetaData() { if ($this->packageMetaData === null) { $this->packageMetaData = new MetaData($this->getPackageKey()); $this->packageMetaData->setDescription($this->getComposerManifest('description')); $this->packageMetaData->setVersion($this->getComposerManifest('version')); $this->packageMetaData->setPackageType($this->getComposerManifest('type')); $requirements = $this->getComposerManifest('require'); if ($requirements !== null) { foreach ($requirements as $requirement => $version) { if ($this->packageRequirementIsComposerPackage($requirement) === false) { // Skip non-package requirements continue; } try { $packageKey = $this->packageManager->getPackageKeyFromComposerName($requirement); } catch (Exception\InvalidPackageStateException $exception) { continue; } $constraint = new MetaData\PackageConstraint(MetaDataInterface::CONSTRAINT_TYPE_DEPENDS, $packageKey); $this->packageMetaData->addConstraint($constraint); } } } return $this->packageMetaData; }
/** * Resolves a Flow package key from a composer package name. * * @param string $composerName * @return string * @throws \TYPO3\Flow\Package\Exception\InvalidPackageStateException */ public function getPackageKeyFromComposerName($composerName) { if (isset($this->packageAliasMap[$composerName])) { return $this->packageAliasMap[$composerName]; } try { return parent::getPackageKeyFromComposerName($composerName); } catch (\TYPO3\Flow\Package\Exception\InvalidPackageStateException $exception) { return $composerName; } }