* add composite entity pattern * add composite entity pattern * Update ReactorTest.java * resolve some code quality problems * modified a lot * remove some extra codes * modified README * removed the author name and adjusted the spacing Co-authored-by: zwebrain <11811721@mail.sustech.edu.cn> Co-authored-by: Subhrodip Mohanta <hello@subho.xyz>
46 lines
1.1 KiB
Plaintext
46 lines
1.1 KiB
Plaintext
@startuml
|
|
package com.iluwatar.compositeentity {
|
|
class App {
|
|
+ App(message: String, signal: String)
|
|
+ main(args : String[]) {static}
|
|
}
|
|
class CompositeEntity{
|
|
- console : ConsoleCoarseGrainedObject
|
|
+ CompositeEntity()
|
|
+ setData(message: String, signal: String)
|
|
+ getData()
|
|
+ init()
|
|
}
|
|
abstract CoarseGrainedObject{
|
|
- dependentObjects : DependentObject[]
|
|
+ CoarseGrainedObject()
|
|
+ setData(data: T[])
|
|
+ getData()
|
|
}
|
|
abstract DependentObject{
|
|
- data : T
|
|
+ DependentObject()
|
|
+ setData(data: T)
|
|
+ getData()
|
|
}
|
|
class ConsoleCoarseGrainedObject{
|
|
+ ConsoleCoarseGrainedObject()
|
|
+ getData()
|
|
+ init()
|
|
}
|
|
class MessageDependentObject{
|
|
+ MessageDependentObject()
|
|
}
|
|
class SignalDependentObject{
|
|
+ SignalDependentObject()
|
|
}
|
|
|
|
MessageDependentObject --|> DependentObject
|
|
SignalDependentObject --|> DependentObject
|
|
ConsoleCoarseGrainedObject --|> CoarseGrainedObject
|
|
CompositeEntity -right-> ConsoleCoarseGrainedObject
|
|
CoarseGrainedObject "1" o--> "0.." DependentObject
|
|
App .right.> CompositeEntity
|
|
}
|
|
@enduml
|