
os.engine.internal.cluster.Cluster.scala Maven / Gradle / Ivy
The newest version!
// Copyright AGPL3+ 2015 ~ Optersoft SL
package os.engine.internal.cluster
import os.engine.internal.Config
class Cluster(config: Config) {
def start() {
// startup(Seq("2551", "2552"))
}
// def startup(ports: Seq[String]): Unit = {
//
// ports foreach { port =>
// // Override the configuration of the port
// val config = ConfigFactory.parseString("akka.remote.netty.tcp.port=" + port).
// withFallback(ConfigFactory.load())
//
// // Create an Akka system
// val system = ActorSystem("engine", config)
// // Create an actor that handles cluster domain events
// system.actorOf(Props[Cluster.SimpleClusterListener], name = "clusterListener")
// }
// }
}
object Cluster {
// class SimpleClusterListener extends Actor with ActorLogging {
//
// val cluster = akka.cluster.Cluster(context.system)
//
// // subscribe to cluster changes, re-subscribe when restart
// override def preStart(): Unit = {
// //#subscribe
// cluster.subscribe(self, initialStateMode = InitialStateAsEvents,
// classOf[MemberEvent], classOf[UnreachableMember])
// //#subscribe
// }
// override def postStop(): Unit = cluster.unsubscribe(self)
//
// def receive = {
// case MemberUp(member) =>
// log.info("Member is Up: {}", member.address)
// case UnreachableMember(member) =>
// log.info("Member detected as unreachable: {}", member)
// case MemberRemoved(member, previousStatus) =>
// log.info("Member is Removed: {} after {}",
// member.address, previousStatus)
// case _: MemberEvent => // ignore
// }
// }
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy