@@ -80,16 +80,16 @@ The example demonstrates:
8080The framework uses a builder pattern to create bounded contexts:
8181
8282``` java
83- BoundedContext . newBuilder(MyContext . class) // MyContext extends EventTypes <D,I,O>
83+ BoundedContext . newBuilder(MyContext . class) // MyContext extends BoundedContext <D,I,O>
8484 .name(" context-name" )
8585 .eventStorage(eventStorage)
8686 .instance(instance)
8787 .rootPackage(RootClass . class. getPackage())
88- .build(BoundedContextInterface . class)
88+ .build(MyContext . class)
8989```
9090
9191Key concepts:
92- - ** BoundedContext** : Main entry point providing ` execute() ` and ` read() ` capabilities
92+ - ** BoundedContext** : Main entry point providing ` execute() ` and ` read() ` capabilities. Context interfaces extend ` BoundedContext<D,I,O> ` directly (e.g., ` Banking extends BoundedContext<BankingEvent, BankingInboundEvent, BankingOutboundEvent> ` )
9393- ** ServiceLoader pattern** : Implementation discovery uses Java ServiceLoader (see ` BoundedContext.newBuilder() ` )
9494- ** Three event types** : Domain events (internal), Inbound events (received), Outbound events (published)
9595- ** Instance** : Deployment/tenant identifier created via ` InstanceFactory.determine() `
@@ -99,7 +99,7 @@ Key concepts:
9999Features are organized as vertical slices:
100100
1011011 . ** @FeatureSlice annotation** : Classes annotated with ` @FeatureSlice ` are discovered via package scanning
102- 2 . ** FeatureSliceConfiguration interface** : Slices implement this to configure themselves
102+ 2 . ** Slice interface** : Feature slices implement ` Slice<C> ` where ` C ` is the bounded context type (e.g., ` Slice<Banking> ` )
1031033 . ** Types of feature slices** :
104104 - ` STATE_CHANGE ` : Commands that change state
105105 - ` STATE_READ ` : Read models that project state
@@ -161,8 +161,8 @@ The framework supports the 4 Event Modeling patterns:
161161- Commands: ` *Command ` (e.g., ` OpenAccountCommand ` )
162162- ReadModels: ` *ReadModel ` (e.g., ` AccountDetailsReadModel ` )
163163- Automations: ` *Automation ` (e.g., ` ProcessPaymentAutomation ` )
164- - Feature slices: ` *FeatureSlice ` (e.g., ` OpenAccountFeatureSlice ` )
165- - Bounded context interfaces: ` * BoundedContext` (e.g., ` BankingBoundedContext ` )
164+ - Feature slices: ` *FeatureSlice ` (e.g., ` OpenAccountFeatureSlice ` ), implementing ` Slice<Context> ` directly
165+ - Bounded context interfaces: Short names extending ` BoundedContext<D,I,O> ` (e.g., ` Banking ` , ` OrderProcessing ` )
166166- Domain model: Often named ` *Domain ` (e.g., ` BankingDomain ` )
167167
168168** Events:**
0 commit comments