src/Pure/Thy/thy_resources.scala
changeset 67925 74dce5658d4c
parent 67923 3e072441c96a
child 67936 141a93b93aa6
equal deleted inserted replaced
67924:b2cdd24e83b6 67925:74dce5658d4c
     3 
     3 
     4 PIDE resources for theory files: load/unload theories via PIDE document updates.
     4 PIDE resources for theory files: load/unload theories via PIDE document updates.
     5 */
     5 */
     6 
     6 
     7 package isabelle
     7 package isabelle
       
     8 
       
     9 
       
    10 import java.io.{File => JFile}
     8 
    11 
     9 
    12 
    10 object Thy_Resources
    13 object Thy_Resources
    11 {
    14 {
    12   /* PIDE session */
    15   /* PIDE session */
    72   class Session private[Thy_Resources](
    75   class Session private[Thy_Resources](
    73     session_options: Options,
    76     session_options: Options,
    74     override val resources: Thy_Resources) extends isabelle.Session(session_options, resources)
    77     override val resources: Thy_Resources) extends isabelle.Session(session_options, resources)
    75   {
    78   {
    76     session =>
    79     session =>
       
    80 
       
    81     val tmp_dir: JFile = Isabelle_System.tmp_dir("server_session")
       
    82 
       
    83     override def stop(): Process_Result =
       
    84     {
       
    85       try { super.stop() }
       
    86       finally { Isabelle_System.rm_tree(tmp_dir) }
       
    87     }
    77 
    88 
    78     def use_theories(
    89     def use_theories(
    79       theories: List[(String, Position.T)],
    90       theories: List[(String, Position.T)],
    80       qualifier: String = Sessions.DRAFT,
    91       qualifier: String = Sessions.DRAFT,
    81       master_dir: String = "",
    92       master_dir: String = "",