-
Notifications
You must be signed in to change notification settings - Fork 0
/
plantuml.puml
140 lines (126 loc) · 4.05 KB
/
plantuml.puml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
@startuml
class KafkaMessageListenerContainer$ListenerConsumer {
{method} pollConsumer()
}
class DefaultKafkaConsumer$ExtendedKafkaConsumer {
{method} poll()
}
class KafkaConsumer {
{field} delegate
{method} poll()
}
class LegacyKafkaConsumer {
{method} poll()
{method}
{method} updateAssignmentMetadataIfNeeded()
}
class ConsumerCoordinator {
{method} poll()
{method}
{method} coordinatorUnknownAndUnreadySync()
{method}
{method} onJoinPrepare()
{method}
{method} onLeaderElected()
{method}
{method} onJoinComplete()
}
'
abstract class AbstractCoordinator {
{method} ensureCoordinatorReady()
{method}
{method} lookupCoordinator()
{method}
{method} sendFindCoordinatorRequest()
{method}
{method} ensureActiveGroup()
{method}
{method} onJoinPrepare()
{method}
{method} joinGroupIfNeeded()
{method}
{method} onLeaderElected()
{method}
{method} onJoinComplete()
}
class ConsumerNetworkClient {
{method} poll()
}
class NetworkClient {
{method} poll()
}
class AbstractCoordinator$FindCoordinatorResponseHandler {
{method} onSuccess()
}
class AbstractCoordinator$JoinGroupResponseHandler {
{method} handle()
}
class AbstractCoordinator$SyncGroupResponseHandler {
{method} handle()
}
'Hide options
hide empty fields
'Extends and Implements
KafkaConsumer <|-- DefaultKafkaConsumer$ExtendedKafkaConsumer
AbstractCoordinator <|-- ConsumerCoordinator
'Call Directions
KafkaMessageListenerContainer$ListenerConsumer::pollConsumer --> DefaultKafkaConsumer$ExtendedKafkaConsumer::poll
DefaultKafkaConsumer$ExtendedKafkaConsumer::poll --> KafkaConsumer::poll
KafkaConsumer::poll -> KafkaConsumer::delegate
note on link: self invocation
KafkaConsumer::delegate -> LegacyKafkaConsumer::poll
LegacyKafkaConsumer::poll -> LegacyKafkaConsumer::updateAssignmentMetadataIfNeeded
note on link: self invocation
LegacyKafkaConsumer::updateAssignmentMetadataIfNeeded -> ConsumerCoordinator::poll
ConsumerCoordinator::poll -> ConsumerCoordinator::coordinatorUnknownAndUnreadySync
note right on link: self invocation
ConsumerCoordinator::coordinatorUnknownAndUnreadySync -> AbstractCoordinator::ensureCoordinatorReady
AbstractCoordinator::ensureCoordinatorReady -> AbstractCoordinator::lookupCoordinator
note on link: self invocation
AbstractCoordinator::lookupCoordinator -> AbstractCoordinator::sendFindCoordinatorRequest
AbstractCoordinator::sendFindCoordinatorRequest -> ConsumerNetworkClient::poll
ConsumerNetworkClient::poll -> NetworkClient::poll
ConsumerCoordinator::poll -> AbstractCoordinator::ensureActiveGroup
AbstractCoordinator::ensureActiveGroup -> AbstractCoordinator::joinGroupIfNeeded
AbstractCoordinator::joinGroupIfNeeded -> ConsumerCoordinator::onJoinPrepare
AbstractCoordinator$JoinGroupResponseHandler::handle -> AbstractCoordinator::onLeaderElected
AbstractCoordinator::onLeaderElected -> ConsumerCoordinator::onLeaderElected
'Setting Layout
together {
class KafkaMessageListenerContainer$ListenerConsumer
}
together {
class KafkaConsumer
}
together {
class DefaultKafkaConsumer$ExtendedKafkaConsumer
class LegacyKafkaConsumer
}
together {
abstract class AbstractCoordinator
}
together {
class ConsumerCoordinator
}
together {
class ConsumerNetworkClient
}
together {
class NetworkClient
}
together {
class AbstractCoordinator$FindCoordinatorResponseHandler
class AbstractCoordinator$JoinGroupResponseHandler
class AbstractCoordinator$SyncGroupResponseHandler
}
KafkaMessageListenerContainer$ListenerConsumer -[hidden]> KafkaConsumer
KafkaConsumer -[hidden]--> DefaultKafkaConsumer$ExtendedKafkaConsumer
DefaultKafkaConsumer$ExtendedKafkaConsumer -[hidden] LegacyKafkaConsumer
LegacyKafkaConsumer -[hidden]--> AbstractCoordinator
AbstractCoordinator -[hidden]--> ConsumerCoordinator
ConsumerCoordinator -[hidden]--> ConsumerNetworkClient
ConsumerNetworkClient -[hidden]--> NetworkClient
NetworkClient -[hidden]--> AbstractCoordinator$FindCoordinatorResponseHandler
AbstractCoordinator$FindCoordinatorResponseHandler -[hidden] AbstractCoordinator$JoinGroupResponseHandler
AbstractCoordinator$JoinGroupResponseHandler -[hidden] AbstractCoordinator$SyncGroupResponseHandler
@enduml