403Webshell
Server IP : 77.68.25.176  /  Your IP : 216.73.216.25
Web Server : Apache
System : Linux plesk 4.15.0-159-generic #167-Ubuntu SMP Tue Sep 21 08:55:05 UTC 2021 x86_64
User : dwp ( 10001)
PHP Version : 7.4.33
Disable Function : opcache_get_status
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /var/www/vhosts/dazzlingwebplanet.co.uk/.composer/vendor/plesk/composer-command-info/src/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/vhosts/dazzlingwebplanet.co.uk/.composer/vendor/plesk/composer-command-info/src/Plugin.php
<?php
// Copyright 1999-2019. Plesk International GmbH. All rights reserved.

namespace Plesk\ComposerCommandInfo;

use Composer\Composer;
use Composer\DependencyResolver\Operation\InstallOperation;
use Composer\DependencyResolver\Operation\OperationInterface;
use Composer\DependencyResolver\Operation\UninstallOperation;
use Composer\DependencyResolver\Operation\UpdateOperation;
use Composer\EventDispatcher\EventSubscriberInterface;
use Composer\Installer\InstallerEvent;
use Composer\Installer\InstallerEvents;
use Composer\Installer\PackageEvent;
use Composer\IO\IOInterface;
use Composer\Plugin\PluginInterface;
use Composer\Plugin\CommandEvent;
use Composer\Plugin\PluginEvents;
use Plesk\ComposerCommandInfo\Command\CommandInfoInterface;
use Plesk\ComposerCommandInfo\Command\CommandInfoFactory;
use Plesk\ComposerCommandInfo\Operation\BaseOperation;
use Plesk\ComposerCommandInfo\Operation\DependenciesSolvingOperation;

/**
 * Class Plugin
 */
class Plugin implements PluginInterface, EventSubscriberInterface
{
    /**
     * @var CommandInfoFactory
     */
    private $commandInfoFactory;

    /**
     * @var CommandInfoInterface|null
     */
    private $commandInfo;

    /**
     * {@inheritDoc}
     */
    public function activate(Composer $composer, IOInterface $io)
    {
        $this->commandInfoFactory = new CommandInfoFactory($composer);
        $this->commandInfo = $this->commandInfoFactory->getNullCommandInfo();
    }

    public function deactivate(Composer $composer, IOInterface $io)
    {
    }

    public function uninstall(Composer $composer, IOInterface $io)
    {
    }

    /**
     * {@inheritDoc}
     */
    public static function getSubscribedEvents()
    {
        return [
            PluginEvents::COMMAND => [
                ['onCommand']
            ],
            InstallerEvents::PRE_OPERATIONS_EXEC => [
                ['onPostDependenciesSolving'],
            ],
            'pre-package-install' => [
                ['onPrePackageInstall'],
            ],
            'post-package-install' => [
                ['onPostPackageInstall'],
            ],
            'pre-package-update' => [
                ['onPrePackageUpdate'],
            ],
            'post-package-update' => [
                ['onPostPackageUpdate'],
            ],
            'pre-package-uninstall' => [
                ['onPrePackageUninstall'],
            ],
            'post-package-uninstall' => [
                ['onPostPackageUninstall'],
            ],
        ];
    }

    /**
     * @param CommandEvent $event
     */
    public function onCommand(CommandEvent $event)
    {
        $this->commandInfo = $this->commandInfoFactory->getCommandInfo($event);
        $this->initDependencySolvingTask();
    }

    private function initDependencySolvingTask()
    {
        $operation = new DependenciesSolvingOperation();
        $this->commandInfo
            ->setOperations([$operation])
            ->setCurrentOperation($operation)
            ->save();
    }

    /**
     * @param InstallerEvent $event
     */
    public function onPostDependenciesSolving(InstallerEvent $event)
    {
        /**
         * @var OperationInterface[] $operations
         */
        $operations = $event->getTransaction()->getOperations();
        $operations = array_filter($operations, function ($operation) {
            return $operation instanceof InstallOperation
                || $operation instanceof UpdateOperation
                || $operation instanceof UninstallOperation;
        });
        $operations = array_map(function ($operation) {
            return new BaseOperation($operation);
        }, $operations);

        $this->commandInfo
            ->onPostDependenciesSolving()
            ->setOperations($operations)
            ->setOperationsInitialized()
            ->completeOperation(new DependenciesSolvingOperation())
            ->save();
    }

    /**
     * @param PackageEvent $event
     */
    public function onPrePackageInstall(PackageEvent $event)
    {
        /**
         * @var InstallOperation $operation
         */
        $operation = $event->getOperation();
        $this->commandInfo
            ->setCurrentOperation(new BaseOperation($operation))
            ->save();
    }

    /**
     * @param PackageEvent $event
     */
    public function onPostPackageInstall(PackageEvent $event)
    {
        /**
         * @var InstallOperation $operation
         */
        $operation = $event->getOperation();
        $this->commandInfo
            ->completeOperation(new BaseOperation($operation))
            ->save();
    }

    /**
     * @param PackageEvent $event
     */
    public function onPrePackageUpdate(PackageEvent $event)
    {
        /**
         * @var UpdateOperation $operation
         */
        $operation = $event->getOperation();
        $this->commandInfo
            ->setCurrentOperation(new BaseOperation($operation))
            ->save();
    }

    /**
     * @param PackageEvent $event
     */
    public function onPostPackageUpdate(PackageEvent $event)
    {
        /**
         * @var UpdateOperation $operation
         */
        $operation = $event->getOperation();
        $this->commandInfo
            ->completeOperation(new BaseOperation($operation))
            ->save();
    }

    /**
     * @param PackageEvent $event
     */
    public function onPrePackageUninstall(PackageEvent $event)
    {
        /**
         * @var UninstallOperation $operation
         */
        $operation = $event->getOperation();
        $this->commandInfo
            ->setCurrentOperation(new BaseOperation($operation))
            ->save();
    }

    /**
     * @param PackageEvent $event
     */
    public function onPostPackageUninstall(PackageEvent $event)
    {
        /**
         * @var UninstallOperation $operation
         */
        $operation = $event->getOperation();
        $this->commandInfo
            ->completeOperation(new BaseOperation($operation))
            ->save();
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit