├── .gitignore ├── .php_cs.dist ├── .travis.yml ├── CHANGELOG.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── Tests ├── DataCollector │ └── DomainEventDataCollectorTest.php ├── Debug │ ├── TraceableDomainEventDispatcherTest.php │ └── WrappedDelayedListenerTest.php ├── Event │ ├── DelayedListenerTest.php │ ├── DomainEventDispatcherTest.php │ └── DomainEventTest.php ├── Model │ ├── DomainModelTest.php │ └── Instantiator │ │ ├── DoctrineConfig │ │ ├── ClassMetadataFactoryTest.php │ │ ├── ClassMetadataTest.php │ │ └── InstantiatorTest.php │ │ └── InstantiatorTest.php ├── PostPersistListener │ └── DoctrinePostPersistListenerTest.php ├── Symfony │ ├── DependencyInjection │ │ ├── CompilerPass │ │ │ ├── EnableDomainDenormalizerCompilerPassTest.php │ │ │ ├── InsertDispatcherInClassMetadataFactoryCompilerPassTest.php │ │ │ ├── RegisterDomainRulesCompilerPassTest.php │ │ │ └── VerifyDoctrineConfigurationCompilerPassTest.php │ │ ├── DomainExtensionTest.php │ │ └── EntityManagerConfiguratorTest.php │ └── Serializer │ │ └── DomainDenormalizerTest.php ├── bootstrap.php └── fixtures │ ├── FakeModel.php │ ├── config │ └── FakeModel.dcm.yml │ └── dbtest │ └── fake_model.db ├── composer.json ├── docs ├── cookbooks.md ├── domain_event_dispatcher.md ├── injection_in_doctrine_entities.md └── symfony_serializer_integration.md ├── phpunit.xml.dist └── src ├── DataCollector └── DomainEventDataCollector.php ├── Debug ├── TraceableDomainEventDispatcher.php └── WrappedDelayedListener.php ├── Event ├── DelayedListener.php ├── DomainEvent.php ├── DomainEventDispatcher.php └── DomainEventDispatcherInterface.php ├── Exception ├── InvalidArgumentException.php ├── InvalidConfigurationException.php ├── InvalidDomainEvent.php └── InvalidRuleException.php ├── Integration └── Symfony │ ├── DependencyInjection │ ├── CompilerPass │ │ ├── EnableDomainDenormalizerCompilerPass.php │ │ ├── InsertDispatcherInClassMetadataFactoryCompilerPass.php │ │ ├── RegisterDomainRulesCompilerPass.php │ │ └── VerifyDoctrineConfigurationCompilerPass.php │ ├── Configuration.php │ ├── DomainExtension.php │ └── EntityManagerConfigurator.php │ ├── DomainBundle.php │ ├── Resources │ ├── config │ │ ├── services.debug.yaml │ │ └── services.yaml │ └── views │ │ └── Collector │ │ └── domain_event_template.html.twig │ └── Serializer │ └── DomainDenormalizer.php ├── Model ├── DomainModel.php ├── DomainModelTrait.php ├── Instantiator │ ├── DoctrineConfig │ │ ├── ClassMetadata.php │ │ ├── ClassMetadataFactory.php │ │ └── Instantiator.php │ ├── DomainModelInstantiatorInterface.php │ └── Instantiator.php └── ModelInterface.php ├── PostPersistListener ├── AbstractBridgeListener.php └── DoctrinePostPersistListener.php └── Rule ├── DomainRuleInterface.php ├── PostPersistDomainRuleInterface.php └── RuleInterface.php /.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock 3 | .php_cs.cache 4 | -------------------------------------------------------------------------------- /.php_cs.dist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/.php_cs.dist -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/.travis.yml -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/README.md -------------------------------------------------------------------------------- /Tests/DataCollector/DomainEventDataCollectorTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/DataCollector/DomainEventDataCollectorTest.php -------------------------------------------------------------------------------- /Tests/Debug/TraceableDomainEventDispatcherTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Debug/TraceableDomainEventDispatcherTest.php -------------------------------------------------------------------------------- /Tests/Debug/WrappedDelayedListenerTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Debug/WrappedDelayedListenerTest.php -------------------------------------------------------------------------------- /Tests/Event/DelayedListenerTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Event/DelayedListenerTest.php -------------------------------------------------------------------------------- /Tests/Event/DomainEventDispatcherTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Event/DomainEventDispatcherTest.php -------------------------------------------------------------------------------- /Tests/Event/DomainEventTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Event/DomainEventTest.php -------------------------------------------------------------------------------- /Tests/Model/DomainModelTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Model/DomainModelTest.php -------------------------------------------------------------------------------- /Tests/Model/Instantiator/DoctrineConfig/ClassMetadataFactoryTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Model/Instantiator/DoctrineConfig/ClassMetadataFactoryTest.php -------------------------------------------------------------------------------- /Tests/Model/Instantiator/DoctrineConfig/ClassMetadataTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Model/Instantiator/DoctrineConfig/ClassMetadataTest.php -------------------------------------------------------------------------------- /Tests/Model/Instantiator/DoctrineConfig/InstantiatorTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Model/Instantiator/DoctrineConfig/InstantiatorTest.php -------------------------------------------------------------------------------- /Tests/Model/Instantiator/InstantiatorTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Model/Instantiator/InstantiatorTest.php -------------------------------------------------------------------------------- /Tests/PostPersistListener/DoctrinePostPersistListenerTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/PostPersistListener/DoctrinePostPersistListenerTest.php -------------------------------------------------------------------------------- /Tests/Symfony/DependencyInjection/CompilerPass/EnableDomainDenormalizerCompilerPassTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Symfony/DependencyInjection/CompilerPass/EnableDomainDenormalizerCompilerPassTest.php -------------------------------------------------------------------------------- /Tests/Symfony/DependencyInjection/CompilerPass/InsertDispatcherInClassMetadataFactoryCompilerPassTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Symfony/DependencyInjection/CompilerPass/InsertDispatcherInClassMetadataFactoryCompilerPassTest.php -------------------------------------------------------------------------------- /Tests/Symfony/DependencyInjection/CompilerPass/RegisterDomainRulesCompilerPassTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Symfony/DependencyInjection/CompilerPass/RegisterDomainRulesCompilerPassTest.php -------------------------------------------------------------------------------- /Tests/Symfony/DependencyInjection/CompilerPass/VerifyDoctrineConfigurationCompilerPassTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Symfony/DependencyInjection/CompilerPass/VerifyDoctrineConfigurationCompilerPassTest.php -------------------------------------------------------------------------------- /Tests/Symfony/DependencyInjection/DomainExtensionTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Symfony/DependencyInjection/DomainExtensionTest.php -------------------------------------------------------------------------------- /Tests/Symfony/DependencyInjection/EntityManagerConfiguratorTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Symfony/DependencyInjection/EntityManagerConfiguratorTest.php -------------------------------------------------------------------------------- /Tests/Symfony/Serializer/DomainDenormalizerTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/Symfony/Serializer/DomainDenormalizerTest.php -------------------------------------------------------------------------------- /Tests/bootstrap.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/bootstrap.php -------------------------------------------------------------------------------- /Tests/fixtures/FakeModel.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/fixtures/FakeModel.php -------------------------------------------------------------------------------- /Tests/fixtures/config/FakeModel.dcm.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/fixtures/config/FakeModel.dcm.yml -------------------------------------------------------------------------------- /Tests/fixtures/dbtest/fake_model.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/Tests/fixtures/dbtest/fake_model.db -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/composer.json -------------------------------------------------------------------------------- /docs/cookbooks.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/docs/cookbooks.md -------------------------------------------------------------------------------- /docs/domain_event_dispatcher.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/docs/domain_event_dispatcher.md -------------------------------------------------------------------------------- /docs/injection_in_doctrine_entities.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/docs/injection_in_doctrine_entities.md -------------------------------------------------------------------------------- /docs/symfony_serializer_integration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/docs/symfony_serializer_integration.md -------------------------------------------------------------------------------- /phpunit.xml.dist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/phpunit.xml.dist -------------------------------------------------------------------------------- /src/DataCollector/DomainEventDataCollector.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/DataCollector/DomainEventDataCollector.php -------------------------------------------------------------------------------- /src/Debug/TraceableDomainEventDispatcher.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Debug/TraceableDomainEventDispatcher.php -------------------------------------------------------------------------------- /src/Debug/WrappedDelayedListener.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Debug/WrappedDelayedListener.php -------------------------------------------------------------------------------- /src/Event/DelayedListener.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Event/DelayedListener.php -------------------------------------------------------------------------------- /src/Event/DomainEvent.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Event/DomainEvent.php -------------------------------------------------------------------------------- /src/Event/DomainEventDispatcher.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Event/DomainEventDispatcher.php -------------------------------------------------------------------------------- /src/Event/DomainEventDispatcherInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Event/DomainEventDispatcherInterface.php -------------------------------------------------------------------------------- /src/Exception/InvalidArgumentException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Exception/InvalidArgumentException.php -------------------------------------------------------------------------------- /src/Exception/InvalidConfigurationException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Exception/InvalidConfigurationException.php -------------------------------------------------------------------------------- /src/Exception/InvalidDomainEvent.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Exception/InvalidDomainEvent.php -------------------------------------------------------------------------------- /src/Exception/InvalidRuleException.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Exception/InvalidRuleException.php -------------------------------------------------------------------------------- /src/Integration/Symfony/DependencyInjection/CompilerPass/EnableDomainDenormalizerCompilerPass.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Integration/Symfony/DependencyInjection/CompilerPass/EnableDomainDenormalizerCompilerPass.php -------------------------------------------------------------------------------- /src/Integration/Symfony/DependencyInjection/CompilerPass/InsertDispatcherInClassMetadataFactoryCompilerPass.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Integration/Symfony/DependencyInjection/CompilerPass/InsertDispatcherInClassMetadataFactoryCompilerPass.php -------------------------------------------------------------------------------- /src/Integration/Symfony/DependencyInjection/CompilerPass/RegisterDomainRulesCompilerPass.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Integration/Symfony/DependencyInjection/CompilerPass/RegisterDomainRulesCompilerPass.php -------------------------------------------------------------------------------- /src/Integration/Symfony/DependencyInjection/CompilerPass/VerifyDoctrineConfigurationCompilerPass.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Integration/Symfony/DependencyInjection/CompilerPass/VerifyDoctrineConfigurationCompilerPass.php -------------------------------------------------------------------------------- /src/Integration/Symfony/DependencyInjection/Configuration.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Integration/Symfony/DependencyInjection/Configuration.php -------------------------------------------------------------------------------- /src/Integration/Symfony/DependencyInjection/DomainExtension.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Integration/Symfony/DependencyInjection/DomainExtension.php -------------------------------------------------------------------------------- /src/Integration/Symfony/DependencyInjection/EntityManagerConfigurator.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Integration/Symfony/DependencyInjection/EntityManagerConfigurator.php -------------------------------------------------------------------------------- /src/Integration/Symfony/DomainBundle.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Integration/Symfony/DomainBundle.php -------------------------------------------------------------------------------- /src/Integration/Symfony/Resources/config/services.debug.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Integration/Symfony/Resources/config/services.debug.yaml -------------------------------------------------------------------------------- /src/Integration/Symfony/Resources/config/services.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Integration/Symfony/Resources/config/services.yaml -------------------------------------------------------------------------------- /src/Integration/Symfony/Resources/views/Collector/domain_event_template.html.twig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Integration/Symfony/Resources/views/Collector/domain_event_template.html.twig -------------------------------------------------------------------------------- /src/Integration/Symfony/Serializer/DomainDenormalizer.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Integration/Symfony/Serializer/DomainDenormalizer.php -------------------------------------------------------------------------------- /src/Model/DomainModel.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Model/DomainModel.php -------------------------------------------------------------------------------- /src/Model/DomainModelTrait.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Model/DomainModelTrait.php -------------------------------------------------------------------------------- /src/Model/Instantiator/DoctrineConfig/ClassMetadata.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Model/Instantiator/DoctrineConfig/ClassMetadata.php -------------------------------------------------------------------------------- /src/Model/Instantiator/DoctrineConfig/ClassMetadataFactory.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Model/Instantiator/DoctrineConfig/ClassMetadataFactory.php -------------------------------------------------------------------------------- /src/Model/Instantiator/DoctrineConfig/Instantiator.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Model/Instantiator/DoctrineConfig/Instantiator.php -------------------------------------------------------------------------------- /src/Model/Instantiator/DomainModelInstantiatorInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Model/Instantiator/DomainModelInstantiatorInterface.php -------------------------------------------------------------------------------- /src/Model/Instantiator/Instantiator.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Model/Instantiator/Instantiator.php -------------------------------------------------------------------------------- /src/Model/ModelInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Model/ModelInterface.php -------------------------------------------------------------------------------- /src/PostPersistListener/AbstractBridgeListener.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/PostPersistListener/AbstractBridgeListener.php -------------------------------------------------------------------------------- /src/PostPersistListener/DoctrinePostPersistListener.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/PostPersistListener/DoctrinePostPersistListener.php -------------------------------------------------------------------------------- /src/Rule/DomainRuleInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Rule/DomainRuleInterface.php -------------------------------------------------------------------------------- /src/Rule/PostPersistDomainRuleInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Rule/PostPersistDomainRuleInterface.php -------------------------------------------------------------------------------- /src/Rule/RuleInterface.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biig-io/DomainComponent/HEAD/src/Rule/RuleInterface.php --------------------------------------------------------------------------------