in kernel/src/main/scala/org/apache/toree/kernel/protocol/v5/handler/KernelInfoRequestHandler.scala [34:66]
def process(kernelMessage: KernelMessage): Future[_] = {
import scala.concurrent.ExecutionContext.Implicits.global
Future {
logger.debug("Sending kernel info reply message")
val kernelInfo = SparkKernelInfo
val kernelInfoReply = KernelInfoReplyOk(
kernelInfo.protocolVersion,
kernelInfo.implementation,
kernelInfo.implementationVersion,
languageInfo,
kernelInfo.banner
)
// TODO could we use HeaderBuilder here?
val replyHeader = Header(
java.util.UUID.randomUUID.toString,
"",
java.util.UUID.randomUUID.toString,
MessageType.Outgoing.KernelInfoReply.toString,
kernelInfo.protocolVersion
)
val kernelResponseMessage = KMBuilder()
.withIds(kernelMessage.ids)
.withSignature("")
.withHeader(replyHeader)
.withParent(kernelMessage)
.withContentString(kernelInfoReply).build
actorLoader.load(SystemActorType.KernelMessageRelay) ! kernelResponseMessage
}
}