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

  WerkraumMedia\Events\:
    resource: '../Classes/*'

  WerkraumMedia\Events\Command\ImportDestinationDataViaConfigruationCommand:
    tags:
      - name: 'console.command'
        command: 'events:destinationdataimportviaconfiguration'
        description: 'Import Destination Data Events'

  WerkraumMedia\Events\Command\ImportDestinationDataViaAllConfigruationsCommand:
    tags:
      - name: 'console.command'
        command: 'events:destinationdataimportviaallconfigurations'
        description: 'Import Destination Data Events from all configurations'

  WerkraumMedia\Events\Command\RemoveAllCommand:
    tags:
      - name: 'console.command'
        command: 'events:removeAll'
        description: 'Remove all event data'

  WerkraumMedia\Events\Command\RemovePastCommand:
    tags:
      - name: 'console.command'
        command: 'events:removePast'
        description: 'Remove past events'

  WerkraumMedia\Events\Extbase\AddSpecialProperties:
    tags:
      - name: event.listener
        identifier: 'WerkraumMediaEventsAddSpecialPropertiesToDate'
        event: TYPO3\CMS\Extbase\Event\Persistence\AfterObjectThawedEvent

  WerkraumMedia\Events\Caching\PageCacheTimeout:
    arguments:
      '$runtimeCache': '@cache.runtime'
    tags:
      - name: event.listener
        event: WerkraumMedia\Events\Events\Controller\DateListVariables
        method: 'trackDates'
      - name: event.listener
        event: TYPO3\CMS\Frontend\Event\ModifyCacheLifetimeForPageEvent
        method: 'modifyCacheLifetimeForPage'