1 ["plantuml", "01_doubleCandidateSimpleSequence", "svg"]
6 autonumber "<font color=red><b>[00]"
8 participant "OSGi Container" as osgi
9 participant "Application" as app
10 participant "Application Body" as body
11 participant "EntitiOwnerhsipService" as eos
14 osgi -> app : <<init>>
17 app -> eos : registerListener()
22 app -> eos : registerCandidate(MainEntity)
31 else "Try to take Leadership"
32 eos -> app : ownershipChanged(isOwner=true) [MainEntity]
35 app -> eos : registerCandidate(CloseGuardEntity)
41 else "Take Leadership"
42 eos -> app : ownershipChanged(isOwner=true) [CloseGuardEntity]
45 app -> body : <<init>>
54 else "Lost Leadership"
55 alt "CloseGuardEntity is not registered (initial phase)"
56 eos -> app : ownershipChanged(isOwner=false, wasOwner=false) [MainEntity]
63 else "CloseGuardEntity is registered (realy lost leadership)"
64 eos -> app : ownershipChanged(isOwner=false, wasOwner=true) [MainEntity]
74 app -> eos :closeGuardCandidateRegistration.close