Support cross team in ClusterSingletonProxy, #23230
This commit is contained in:
parent
ccea5a0eac
commit
2044c1712b
3 changed files with 54 additions and 23 deletions
|
|
@ -30,6 +30,7 @@ import akka.Done
|
|||
import akka.actor.CoordinatedShutdown
|
||||
import akka.pattern.ask
|
||||
import akka.util.Timeout
|
||||
import akka.cluster.ClusterSettings
|
||||
|
||||
object ClusterSingletonManagerSettings {
|
||||
|
||||
|
|
@ -256,12 +257,10 @@ object ClusterSingletonManager {
|
|||
}
|
||||
override def postStop(): Unit = cluster.unsubscribe(self)
|
||||
|
||||
private val selfTeam = "team-" + cluster.settings.Team
|
||||
private val selfTeam = ClusterSettings.TeamRolePrefix + cluster.settings.Team
|
||||
|
||||
def matchingRole(member: Member): Boolean = member.hasRole(selfTeam) && (role match {
|
||||
case None ⇒ true
|
||||
case Some(r) ⇒ member.hasRole(r)
|
||||
})
|
||||
def matchingRole(member: Member): Boolean =
|
||||
member.hasRole(selfTeam) && role.forall(member.hasRole)
|
||||
|
||||
def trackChange(block: () ⇒ Unit): Unit = {
|
||||
val before = membersByAge.headOption
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue