src/Pure/PIDE/session.scala
changeset 56864 0446c7ac2e32
parent 56799 00b13fb87b3a
child 57651 10df45dd14da
--- a/src/Pure/PIDE/session.scala	Mon May 05 11:53:07 2014 +0200
+++ b/src/Pure/PIDE/session.scala	Mon May 05 15:17:07 2014 +0200
@@ -98,6 +98,7 @@
 
   abstract class Protocol_Handler
   {
+    def start(prover: Prover): Unit = {}
     def stop(prover: Prover): Unit = {}
     val functions: Map[String, (Prover, Prover.Protocol_Output) => Boolean]
   }
@@ -122,6 +123,8 @@
       val (handlers2, functions2) =
         try {
           val new_handler = Class.forName(name).newInstance.asInstanceOf[Protocol_Handler]
+          new_handler.start(prover)
+
           val new_functions =
             for ((a, f) <- new_handler.functions.toList) yield
               (a, (msg: Prover.Protocol_Output) => f(prover, msg))