<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Checkout\Model;
/**
* Composite checkout configuration provider.
*
* @see \Magento\Checkout\Model\ConfigProviderInterface
* @api
* @since 100.0.2
*/
class CompositeConfigProvider implements ConfigProviderInterface
{
/**
* @var ConfigProviderInterface[]
*/
private $configProviders;
/**
* @param ConfigProviderInterface[] $configProviders
* @codeCoverageIgnore
*/
public function __construct(
array $configProviders
) {
$this->configProviders = $configProviders;
}
/**
* {@inheritdoc}
*/
public function getConfig()
{
$config = [];
foreach ($this->configProviders as $configProvider) {
$config = array_merge_recursive($config, $configProvider->getConfig());
}
return $config;
}
}
|