+act #18575 Publish MemberJoined
This commit is contained in:
parent
a6279b7b3f
commit
821dc2199b
7 changed files with 113 additions and 90 deletions
|
|
@ -121,6 +121,13 @@ object ClusterEvent {
|
|||
def member: Member
|
||||
}
|
||||
|
||||
/**
|
||||
* Member status changed to Joining.
|
||||
*/
|
||||
final case class MemberJoined(member: Member) extends MemberEvent {
|
||||
if (member.status != Joining) throw new IllegalArgumentException("Expected Joining status, got: " + member)
|
||||
}
|
||||
|
||||
/**
|
||||
* Member status changed to WeaklyUp.
|
||||
* A joining member can be moved to `WeaklyUp` if convergence
|
||||
|
|
@ -138,6 +145,13 @@ object ClusterEvent {
|
|||
if (member.status != Up) throw new IllegalArgumentException("Expected Up status, got: " + member)
|
||||
}
|
||||
|
||||
/**
|
||||
* Member status changed to Leaving.
|
||||
*/
|
||||
final case class MemberLeft(member: Member) extends MemberEvent {
|
||||
if (member.status != Leaving) throw new IllegalArgumentException("Expected Leaving status, got: " + member)
|
||||
}
|
||||
|
||||
/**
|
||||
* Member status changed to `MemberStatus.Exiting` and will be removed
|
||||
* when all members have seen the `Exiting` status.
|
||||
|
|
@ -278,8 +292,10 @@ object ClusterEvent {
|
|||
case (_, newMember :: oldMember :: Nil) if newMember.status != oldMember.status ⇒ newMember
|
||||
}
|
||||
val memberEvents = (newMembers ++ changedMembers) collect {
|
||||
case m if m.status == Joining ⇒ MemberJoined(m)
|
||||
case m if m.status == WeaklyUp ⇒ MemberWeaklyUp(m)
|
||||
case m if m.status == Up ⇒ MemberUp(m)
|
||||
case m if m.status == Leaving ⇒ MemberLeft(m)
|
||||
case m if m.status == Exiting ⇒ MemberExited(m)
|
||||
// no events for other transitions
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue