parameters:
thesportsdb.api_key: '1'
services:
thesportsdb.client.http:
class: GuzzleHttp\Client
thesportsdb.factory.container:
class: TheSportsDb\Entity\Factory\FactoryContainer
calls:
- [setDefaultFactory, ['@thesportsdb.default.factory']]
thesportsdb.repository.container:
class: TheSportsDb\Entity\Repository\RepositoryContainer
tags:
- { name: repository_container }
thesportsdb.property.mapper:
class: FastNorth\PropertyMapper\Mapper
thesportsdb.entity.manager:
class: TheSportsDb\Entity\EntityManager
tags:
- { name: entity_manager, tag: entity_manager_consumer }
arguments: ['@thesportsdb.property.mapper']
calls:
- [setFactoryContainer, ['@thesportsdb.factory.container']]
- [setRepositoryContainer, ['@thesportsdb.repository.container']]
- [registerClass, [league]]
- [registerClass, [sport]]
- [registerClass, [team]]
- [registerClass, [event]]
- [registerClass, [player]]
- [registerClass, [season]]
thesportsdb.repository.sport:
class: TheSportsDb\Entity\Repository\SportRepository
tags:
- { name: entity_repository, tag: repository_container }
- { name: entity_manager_consumer }
thesportsdb.repository.league:
class: TheSportsDb\Entity\Repository\LeagueRepository
tags:
- { name: entity_repository, tag: repository_container }
- { name: entity_manager_consumer }
thesportsdb.repository.season:
class: TheSportsDb\Entity\Repository\SeasonRepository
tags:
- { name: entity_repository, tag: repository_container }
- { name: entity_manager_consumer }
thesportsdb.repository.event:
class: TheSportsDb\Entity\Repository\EventRepository
tags:
- { name: entity_repository, tag: repository_container }
- { name: entity_manager_consumer }
thesportsdb.repository.player:
class: TheSportsDb\Entity\Repository\PlayerRepository
tags:
- { name: entity_repository, tag: repository_container }
- { name: entity_manager_consumer }
thesportsdb.repository.team:
class: TheSportsDb\Entity\Repository\TeamRepository
tags:
- { name: entity_repository, tag: repository_container }
- { name: entity_manager_consumer }
thesportsdb.client.thesportsdb:
class: TheSportsDb\Http\TheSportsDbClient
arguments: ['%thesportsdb.api_key%', '@thesportsdb.client.http']
thesportsdb.default.factory:
class: TheSportsDb\Entity\Factory\Factory
tags:
- { name: entity_manager_consumer }
arguments: ['@thesportsdb.client.thesportsdb']
thesportsdb:
class: TheSportsDb\TheSportsDb
tags:
- { name: entity_manager_consumer }
|