blob: f87bc9398377fe47b4268932a97d985520031a8a [file] [log] [blame]
package ittest.io.pivotal.gemfire.spark.connector.testkit
import java.util.Properties
trait GemFireCluster {
def startGemFireCluster(settings: Properties): Int = {
println("=== GemFireCluster start()")
GemFireCluster.start(settings)
}
}
object GemFireCluster {
private var gemfire: Option[GemFireRunner] = None
def start(settings: Properties): Int = {
gemfire.map(_.stopGemFireCluster()) // Clean up any old running GemFire instances
val runner = new GemFireRunner(settings)
gemfire = Some(runner)
runner.getLocatorPort
}
def stop(): Unit = {
println("=== GemFireCluster shutdown: " + gemfire.toString)
gemfire match {
case None => println("Nothing to shutdown.")
case Some(runner) => runner.stopGemFireCluster()
}
gemfire = None
println("=== GemFireCluster shutdown finished.")
}
}