services:
    _defaults:
        autowire: false
        autoconfigure: false

    # Dev
    Claroline\CoreBundle\Command\Maintenance\DisableMaintenanceCommand:
        tags:
            - { name: 'console.command', command: 'claroline:maintenance:disable' }

    Claroline\CoreBundle\Command\Maintenance\EnableMaintenanceCommand:
        tags:
            - { name: 'console.command', command: 'claroline:maintenance:enable' }

    # GeoIp
    Claroline\CoreBundle\Command\GeoIp\DownloadGeoIpDatabaseCommand:
        arguments:
            - '@Claroline\CoreBundle\Library\Configuration\PlatformConfigurationHandler'
            - '@Claroline\CoreBundle\Library\GeoIp\Database\MaxMindGeoIpDatabaseDownloader'
            - '%claroline.param.geoip_db_path%'
        tags:
            - { name: 'console.command', command: 'claroline:geoip:download' }

    # Logs
    Claroline\CoreBundle\Command\Logs\LogConnectionComputeCommand:
        arguments:
            - '@Claroline\CoreBundle\Manager\LogConnectManager'
        tags:
            - { name: 'console.command', command: 'claroline:connection:duration' }

    # Resources
    Claroline\CoreBundle\Command\Resource\DeleteInactiveCommand:
        arguments:
            - '@Claroline\AppBundle\Persistence\ObjectManager'
            - '@Claroline\AppBundle\API\FinderProvider'
            - '@Claroline\AppBundle\API\Crud'
        tags:
            - { name: 'console.command', command: 'claroline:resource:delete-inactive' }

    # Workspace
    Claroline\CoreBundle\Command\Workspace\ArchiveCommand:
        arguments:
            - '@doctrine.orm.entity_manager'
            - '@Claroline\AppBundle\Persistence\ObjectManager'
            - '@Claroline\CoreBundle\Manager\Workspace\WorkspaceManager'
        tags:
            - { name: 'console.command', command: 'claroline:workspace:archive' }

    Claroline\CoreBundle\Command\Workspace\BuildDefaultsCommand:
        arguments:
            - '@Claroline\CoreBundle\Manager\Workspace\WorkspaceManager'
        tags:
            - { name: 'console.command', command: 'claroline:workspace:build-default' }

    Claroline\CoreBundle\Command\Workspace\ExportCommand:
        arguments:
            - '@doctrine.orm.entity_manager'
            - '@Claroline\CoreBundle\Manager\Workspace\WorkspaceManager'
        tags:
            - { name: 'console.command', command: 'claroline:workspace:export' }

    Claroline\CoreBundle\Command\Workspace\ImportCommand:
        arguments:
            - '@Claroline\CoreBundle\Manager\Workspace\WorkspaceManager'
        tags:
            - { name: 'console.command', command: 'claroline:workspace:import' }

    Claroline\CoreBundle\Command\Workspace\DeleteArchivedCommand:
        arguments:
            - '@Claroline\AppBundle\Persistence\ObjectManager'
            - '@Claroline\AppBundle\API\FinderProvider'
            - '@Claroline\AppBundle\API\Crud'
        tags:
            - { name: 'console.command', command: 'claroline:workspace:delete-archived' }

    # Common
    Claroline\CoreBundle\Command\ComputeStorageCommand:
        arguments:
            - '@Claroline\CoreBundle\Manager\FileManager'
        tags:
            - { name: 'console.command', command: 'claroline:storage:compute' }

    Claroline\CoreBundle\Command\UpdateRichTextCommand:
        arguments:
            - '@doctrine.orm.entity_manager'
        tags:
            - { name: 'console.command', command: 'claroline:rich_texts:update' }
