├── .gitignore ├── README.md ├── composer.json ├── composer.lock ├── data └── .gitignore ├── phpunit.xml.dist ├── public ├── .gitignore └── index.php ├── src ├── Domain │ ├── Aggregate │ │ └── Building.php │ ├── Command │ │ ├── CheckIn.php │ │ ├── Checkout.php │ │ └── RegisterNewBuilding.php │ ├── DomainEvent │ │ ├── NewBuildingWasRegistered.php │ │ ├── PersonCheckedIn.php │ │ └── PersonCheckedOut.php │ └── Repository │ │ └── BuildingRepositoryInterface.php ├── Factory │ ├── CommandHandler │ │ ├── CheckInHandlerFactory.php │ │ ├── CheckOutHandlerFactory.php │ │ └── RegisterNewBuildingHandlerFactory.php │ ├── EventHandler │ │ ├── PersonCheckedInEventHandlersFactory.php │ │ └── PersonCheckedOutEventHandlersFactory.php │ ├── ProjectorHandler │ │ ├── PersonCheckedInProjectorsFactory.php │ │ └── PersonCheckedOutProjectorsFactory.php │ └── Services │ │ ├── CommandBusFactory.php │ │ └── ProjectorService.php └── Infrastructure │ ├── CommandHandler │ ├── CheckInHandler.php │ ├── CheckOutHandler.php │ └── RegisterNewBuildingHandler.php │ ├── EventHandler │ ├── PersonCheckedInEventLog.php │ └── PersonCheckedOutEventLog.php │ ├── Projector │ ├── AddCheckedInUserToCurrentCheckedInUsers.php │ └── RemoveCheckedOutFromCurrentCheckedInUsers.php │ └── Repository │ └── BuildingRepository.php ├── template ├── building.php └── index.php └── tests └── BuildingTest └── Domain ├── Aggregate └── BuildingTest.php ├── Command ├── BaseCommandTest.php ├── CheckInTest.php ├── CheckOutTest.php └── RegisterNewBuildingTest.php └── DomainEvent ├── BaseEventTest.php ├── NewBuildingWasRegisteredTest.php ├── PersonCheckedIOutTest.php └── PersonCheckedInTest.php /.gitignore: -------------------------------------------------------------------------------- 1 | vendor -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/README.md -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/composer.json -------------------------------------------------------------------------------- /composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/composer.lock -------------------------------------------------------------------------------- /data/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore -------------------------------------------------------------------------------- /phpunit.xml.dist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/phpunit.xml.dist -------------------------------------------------------------------------------- /public/.gitignore: -------------------------------------------------------------------------------- 1 | *.json -------------------------------------------------------------------------------- /public/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/public/index.php -------------------------------------------------------------------------------- /src/Domain/Aggregate/Building.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Domain/Aggregate/Building.php -------------------------------------------------------------------------------- /src/Domain/Command/CheckIn.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Domain/Command/CheckIn.php -------------------------------------------------------------------------------- /src/Domain/Command/Checkout.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Domain/Command/Checkout.php -------------------------------------------------------------------------------- /src/Domain/Command/RegisterNewBuilding.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Domain/Command/RegisterNewBuilding.php -------------------------------------------------------------------------------- /src/Domain/DomainEvent/NewBuildingWasRegistered.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Domain/DomainEvent/NewBuildingWasRegistered.php -------------------------------------------------------------------------------- /src/Domain/DomainEvent/PersonCheckedIn.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Domain/DomainEvent/PersonCheckedIn.php -------------------------------------------------------------------------------- /src/Domain/DomainEvent/PersonCheckedOut.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Domain/DomainEvent/PersonCheckedOut.php -------------------------------------------------------------------------------- /src/Domain/Repository/BuildingRepositoryInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Domain/Repository/BuildingRepositoryInterface.php -------------------------------------------------------------------------------- /src/Factory/CommandHandler/CheckInHandlerFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Factory/CommandHandler/CheckInHandlerFactory.php -------------------------------------------------------------------------------- /src/Factory/CommandHandler/CheckOutHandlerFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Factory/CommandHandler/CheckOutHandlerFactory.php -------------------------------------------------------------------------------- /src/Factory/CommandHandler/RegisterNewBuildingHandlerFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Factory/CommandHandler/RegisterNewBuildingHandlerFactory.php -------------------------------------------------------------------------------- /src/Factory/EventHandler/PersonCheckedInEventHandlersFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Factory/EventHandler/PersonCheckedInEventHandlersFactory.php -------------------------------------------------------------------------------- /src/Factory/EventHandler/PersonCheckedOutEventHandlersFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Factory/EventHandler/PersonCheckedOutEventHandlersFactory.php -------------------------------------------------------------------------------- /src/Factory/ProjectorHandler/PersonCheckedInProjectorsFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Factory/ProjectorHandler/PersonCheckedInProjectorsFactory.php -------------------------------------------------------------------------------- /src/Factory/ProjectorHandler/PersonCheckedOutProjectorsFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Factory/ProjectorHandler/PersonCheckedOutProjectorsFactory.php -------------------------------------------------------------------------------- /src/Factory/Services/CommandBusFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Factory/Services/CommandBusFactory.php -------------------------------------------------------------------------------- /src/Factory/Services/ProjectorService.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Factory/Services/ProjectorService.php -------------------------------------------------------------------------------- /src/Infrastructure/CommandHandler/CheckInHandler.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Infrastructure/CommandHandler/CheckInHandler.php -------------------------------------------------------------------------------- /src/Infrastructure/CommandHandler/CheckOutHandler.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Infrastructure/CommandHandler/CheckOutHandler.php -------------------------------------------------------------------------------- /src/Infrastructure/CommandHandler/RegisterNewBuildingHandler.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Infrastructure/CommandHandler/RegisterNewBuildingHandler.php -------------------------------------------------------------------------------- /src/Infrastructure/EventHandler/PersonCheckedInEventLog.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Infrastructure/EventHandler/PersonCheckedInEventLog.php -------------------------------------------------------------------------------- /src/Infrastructure/EventHandler/PersonCheckedOutEventLog.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Infrastructure/EventHandler/PersonCheckedOutEventLog.php -------------------------------------------------------------------------------- /src/Infrastructure/Projector/AddCheckedInUserToCurrentCheckedInUsers.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Infrastructure/Projector/AddCheckedInUserToCurrentCheckedInUsers.php -------------------------------------------------------------------------------- /src/Infrastructure/Projector/RemoveCheckedOutFromCurrentCheckedInUsers.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Infrastructure/Projector/RemoveCheckedOutFromCurrentCheckedInUsers.php -------------------------------------------------------------------------------- /src/Infrastructure/Repository/BuildingRepository.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/src/Infrastructure/Repository/BuildingRepository.php -------------------------------------------------------------------------------- /template/building.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/template/building.php -------------------------------------------------------------------------------- /template/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/template/index.php -------------------------------------------------------------------------------- /tests/BuildingTest/Domain/Aggregate/BuildingTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/tests/BuildingTest/Domain/Aggregate/BuildingTest.php -------------------------------------------------------------------------------- /tests/BuildingTest/Domain/Command/BaseCommandTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/tests/BuildingTest/Domain/Command/BaseCommandTest.php -------------------------------------------------------------------------------- /tests/BuildingTest/Domain/Command/CheckInTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/tests/BuildingTest/Domain/Command/CheckInTest.php -------------------------------------------------------------------------------- /tests/BuildingTest/Domain/Command/CheckOutTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/tests/BuildingTest/Domain/Command/CheckOutTest.php -------------------------------------------------------------------------------- /tests/BuildingTest/Domain/Command/RegisterNewBuildingTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/tests/BuildingTest/Domain/Command/RegisterNewBuildingTest.php -------------------------------------------------------------------------------- /tests/BuildingTest/Domain/DomainEvent/BaseEventTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/tests/BuildingTest/Domain/DomainEvent/BaseEventTest.php -------------------------------------------------------------------------------- /tests/BuildingTest/Domain/DomainEvent/NewBuildingWasRegisteredTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/tests/BuildingTest/Domain/DomainEvent/NewBuildingWasRegisteredTest.php -------------------------------------------------------------------------------- /tests/BuildingTest/Domain/DomainEvent/PersonCheckedIOutTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/tests/BuildingTest/Domain/DomainEvent/PersonCheckedIOutTest.php -------------------------------------------------------------------------------- /tests/BuildingTest/Domain/DomainEvent/PersonCheckedInTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Ocramius/dpc-2016-cqrs-es-tutorial/HEAD/tests/BuildingTest/Domain/DomainEvent/PersonCheckedInTest.php --------------------------------------------------------------------------------