# HG changeset patch # User wenzelm # Date 1482952621 -3600 # Node ID ccf017e2f2b4124d64ac2026400e40d9653f9afc # Parent db2b21a52f202358fb87d5de9c62cb3d954fcb4b support for syslog messages; clarified shutdown; diff -r db2b21a52f20 -r ccf017e2f2b4 src/Tools/VSCode/src/server.scala --- a/src/Tools/VSCode/src/server.scala Wed Dec 28 19:58:55 2016 +0100 +++ b/src/Tools/VSCode/src/server.scala Wed Dec 28 20:17:01 2016 +0100 @@ -183,6 +183,16 @@ } + /* syslog */ + + private val all_messages = + Session.Consumer[Prover.Message](getClass.getName) { + case output: Prover.Output if output.is_syslog => + channel.log_writeln(XML.content(output.message)) + case _ => + } + + /* init and exit */ def init(id: Protocol.Id) @@ -226,6 +236,7 @@ session.phase_changed += session_phase session.commands_changed += commands_changed + session.all_messages += all_messages session.start(receiver => Isabelle_Process(options = options, logic = session_name, dirs = session_dirs, @@ -248,11 +259,12 @@ Session.Consumer(getClass.getName) { case Session.Inactive => session.phase_changed -= session_phase + session.commands_changed -= commands_changed + session.all_messages -= all_messages reply("") case _ => } session.phase_changed += session_phase - session.commands_changed -= commands_changed session.stop() delay_input.revoke() delay_output.revoke()