ShopwareCli\Application\DependencyInjection::createContainer PHP Method

createContainer() public static method

public static createContainer ( $rootDir ) : ContainerBuilder
return Symfony\Component\DependencyInjection\ContainerBuilder
    public static function createContainer($rootDir)
    {
        $container = new ContainerBuilder(new ParameterBag(array('kernel.root_dir' => $rootDir)));
        // synthetic services
        $container->setDefinition('autoloader', new Definition('Composer\\Autoload\\ClassLoader'))->setSynthetic(true);
        $container->setDefinition('input_interface', new Definition('Symfony\\Component\\Console\\Input\\InputInterface'))->setSynthetic(true);
        $container->setDefinition('output_interface', new Definition('Symfony\\Component\\Console\\Input\\InputInterface'))->setSynthetic(true);
        $container->setDefinition('question_helper', new Definition('Symfony\\Component\\Console\\Helper\\QuestionHelper'))->setSynthetic(true);
        $container->register('io_service', 'ShopwareCli\\Services\\IoService')->addArgument(new Reference('input_interface'))->addArgument(new Reference('output_interface'))->addArgument(new Reference('question_helper'));
        $container->register('process_executor', 'ShopwareCli\\Services\\ProcessExecutor')->addArgument(new Reference('output_interface'))->addArgument(getenv('SW_TIMEOUT') ?: self::DEFAULT_PROCESS_TIMEOUT);
        $container->register('git_identity_environment', 'ShopwareCli\\Services\\GitIdentityEnvironment')->addArgument(new Reference('path_provider'))->addArgument(new Reference('config'));
        $container->register('git_util', 'ShopwareCli\\Services\\GitUtil')->addArgument(new Reference('output_interface'))->addArgument(new Reference('git_identity_environment'))->addArgument(getenv('SW_TIMEOUT') ?: self::DEFAULT_PROCESS_TIMEOUT);
        $container->register('utilities', 'ShopwareCli\\Utilities')->addArgument(new Reference('io_service'));
        $container->register('xdg', '\\XdgBaseDir\\Xdg');
        $container->register('plugin_info', '\\Shopware\\PluginInfo\\PluginInfo');
        $container->register('directory_gateway', 'ShopwareCli\\Services\\PathProvider\\DirectoryGateway\\XdgGateway')->addArgument(new Reference('xdg'));
        $container->register('file_downloader', 'ShopwareCli\\Services\\StreamFileDownloader')->addArgument(new Reference('io_service'));
        $container->register('path_provider', 'ShopwareCli\\Services\\PathProvider\\PathProvider')->addArgument(new Reference('directory_gateway'));
        $container->register('cache', 'ShopwareCli\\Cache\\File')->addArgument($container->get('path_provider'));
        $container->register('rest_service_factory', 'ShopwareCli\\Services\\Rest\\RestServiceFactory')->addArgument(new Reference('service_container'));
        $container->register('config_file_collector', 'ShopwareCli\\ConfigFileCollector')->addArgument(new Reference('path_provider'));
        $container->register('config', 'ShopwareCli\\Config')->addArgument(new Reference('config_file_collector'));
        $container->register('extension_manager', 'ShopwareCli\\Application\\ExtensionManager')->addArgument(new Reference('autoloader'));
        $container->register('command_manager', 'ShopwareCli\\Application\\CommandManager')->addArgument(new Reference('extension_manager'))->addArgument(new Reference('service_container'));
        $container->register('openssl_verifier', 'ShopwareCli\\Services\\OpenSSLVerifier')->addArgument('%kernel.root_dir%/Resources/public.key');
        $container->register('shopware_info', 'ShopwareCli\\Services\\ShopwareInfo');
        return $container;
    }

Usage Example

Exemplo n.º 1
0
 /**
  * Creates the container and sets some services which are only synthetic in the container
  *
  * @param  InputInterface   $input
  * @param  OutputInterface  $output
  * @return ContainerBuilder
  */
 protected function createContainer(InputInterface $input, OutputInterface $output)
 {
     $container = DependencyInjection::createContainer();
     $questionHelper = $this->getHelperSet()->get('question');
     $container->set('output_interface', $output);
     $container->set('input_interface', $input);
     $container->set('question_helper', $questionHelper);
     $container->set('helper_set', $this->getHelperSet());
     $container->set('autoloader', $this->loader);
     return $this->container = $container;
 }
All Usage Examples Of ShopwareCli\Application\DependencyInjection::createContainer
DependencyInjection