services:
    _defaults:
        autowire: true
        autoconfigure: true
        public: false

    Pimcore\Analytics\SiteId\SiteIdProvider: ~


    #
    # GOOGLE
    #

    Pimcore\Analytics\Google\Config\ConfigProvider: ~
    Pimcore\Analytics\Google\Config\Config:
        factory: 'Pimcore\Analytics\Google\Config\ConfigProvider:getConfig'

    Pimcore\Analytics\Google\Config\SiteConfigProvider: ~

    Pimcore\Analytics\Google\Tracker: ~

    # fallback locator which is used from the deprecated Pimcore\Google\Analytics class
    pimcore.analytics.google.fallback_service_locator:
        class: Symfony\Component\DependencyInjection\ServiceLocator
        public: true
        tags:
            - { name: container.service_locator }

    #
    # PIWIK
    #

    Pimcore\Analytics\Piwik\Api\ApiClient: ~
    Pimcore\Analytics\Piwik\Api\SitesManager: ~
    Pimcore\Analytics\Piwik\Api\VisitorClient: ~

    Pimcore\Analytics\Piwik\Config\ConfigProvider: ~
    Pimcore\Analytics\Piwik\Config\Config:
        factory: 'Pimcore\Analytics\Piwik\Config\ConfigProvider:getConfig'

    Pimcore\Analytics\Piwik\ReportBroker: ~
    Pimcore\Analytics\Piwik\WidgetBroker: ~

    Pimcore\Analytics\Piwik\Tracker: ~

    Pimcore\Analytics\Piwik\EventListener\CacheListener: ~
    Pimcore\Analytics\Piwik\EventListener\IndexSettingsListener: ~
    Pimcore\Analytics\Piwik\EventListener\TrackingCodeListener: ~
