Neos\Flow\Package\PackageManager::activatePackage PHP Метод

activatePackage() публичный Метод

Activates a package
public activatePackage ( string $packageKey ) : void
$packageKey string The package to activate
Результат void
    public function activatePackage($packageKey)
    {
        if ($this->isPackageActive($packageKey)) {
            return;
        }
        $package = $this->getPackage($packageKey);
        $composerName = $package->getComposerName();
        $this->movePackageToActivatedPackages($package->getPackagePath());
        $this->packageStatesConfiguration['packages'][$composerName]['state'] = self::PACKAGE_STATE_ACTIVE;
        $this->packageStatesConfiguration['packages'][$composerName]['packagePath'] = $this->buildActivePackageRelativePath($package->getPackagePath());
        $this->registerPackageFromStateConfiguration($composerName, $this->packageStatesConfiguration['packages'][$composerName]);
        $this->savePackageStates($this->packageStatesConfiguration);
    }

Usage Example

 /**
  * @test
  */
 public function activatePackageEmitsPackageStatesUpdatedSignal()
 {
     $this->packageManager->createPackage('Some.Package');
     $this->packageManager->deactivatePackage('Some.Package');
     $this->mockDispatcher->expects($this->once())->method('dispatch')->with(PackageManager::class, 'packageStatesUpdated');
     $this->packageManager->activatePackage('Some.Package');
 }