66 lines
2.6 KiB
YAML
66 lines
2.6 KiB
YAML
parameters:
|
|
ps_cache_dir: !php/const _PS_CACHE_DIR_
|
|
|
|
services:
|
|
distributionapiclient.cache.filesystem.adapter:
|
|
class: Symfony\Component\Cache\Adapter\FilesystemAdapter
|
|
arguments:
|
|
- ''
|
|
- !php/const PrestaShop\Module\DistributionApiClient\DistributionApi::CACHE_LIFETIME_SECONDS
|
|
- '%ps_cache_dir%/distribution-api'
|
|
|
|
distributionapiclient.cache.provider:
|
|
class: Doctrine\Common\Cache\Psr6\DoctrineProvider
|
|
factory: [ Doctrine\Common\Cache\Psr6\DoctrineProvider, wrap ]
|
|
arguments:
|
|
- '@distributionapiclient.cache.filesystem.adapter'
|
|
|
|
distributionapiclient.middleware.cachedhttpclient:
|
|
class: PrestaShop\Module\DistributionApiClient\Middleware\CachedHttpClient
|
|
arguments:
|
|
$cache: '@distributionapiclient.cache.provider'
|
|
|
|
distributionapiclient.symfony.client:
|
|
class: PrestaShop\CircuitBreaker\Client\SymfonyHttpClient
|
|
arguments:
|
|
$client: '@distributionapiclient.middleware.cachedhttpclient'
|
|
|
|
distributionapiclient.circuit_breaker.factory:
|
|
class: PrestaShop\CircuitBreaker\AdvancedCircuitBreakerFactory
|
|
|
|
distributionapiclient.circuit_breaker.settings:
|
|
class: PrestaShop\CircuitBreaker\FactorySettings
|
|
arguments:
|
|
- !php/const PrestaShop\Module\DistributionApiClient\DistributionApi::ALLOWED_FAILURES
|
|
- !php/const PrestaShop\Module\DistributionApiClient\DistributionApi::TIMEOUT_IN_SECONDS
|
|
- !php/const PrestaShop\Module\DistributionApiClient\DistributionApi::THRESHOLD_SECONDS
|
|
calls:
|
|
- setStorage: [ '@prestashop.core.circuit_breaker.storage' ]
|
|
- setClient: [ '@distributionapiclient.symfony.client' ]
|
|
|
|
distributionapiclient.circuit_breaker:
|
|
class: PrestaShop\CircuitBreaker\Contract\CircuitBreakerInterface
|
|
factory: [ '@distributionapiclient.circuit_breaker.factory', 'create' ]
|
|
arguments: [ '@distributionapiclient.circuit_breaker.settings' ]
|
|
|
|
PrestaShop\Module\DistributionApiClient\ShopDataProvider:
|
|
class: PrestaShop\Module\DistributionApiClient\ShopDataProvider
|
|
|
|
distributionapiclient.distribution_api:
|
|
class: PrestaShop\Module\DistributionApiClient\DistributionApi
|
|
arguments:
|
|
- '@distributionapiclient.circuit_breaker'
|
|
- '@prestashop.module.factory.sourcehandler'
|
|
- '@prestashop.adapter.data_provider.module'
|
|
- '@PrestaShop\Module\DistributionApiClient\ShopDataProvider'
|
|
- "@=service('prestashop.core.foundation.version').getSemVersion()"
|
|
- '%ps_cache_dir%/downloads'
|
|
- '%kernel.project_dir%'
|
|
public: true
|
|
|
|
PrestaShop\Module\DistributionApiClient\Controller\Admin\TopContributorsController:
|
|
autowire: true
|
|
autoconfigure: true
|
|
public: true
|
|
tags: ['controller.service_arguments']
|