Index: docs/code/module-hierarchy.dot ================================================================== --- docs/code/module-hierarchy.dot +++ docs/code/module-hierarchy.dot @@ -23,143 +23,45 @@ subgraph cluster_megatest { label="megatest"; rmtmod [label="rmt mod"]; -// servermod.scm -"sqlite3" -> "servermod"; -"commonmod" -> "servermod"; -"dbmod" -> "servermod"; -"tasksmod" -> "servermod"; -"mtargs" -> "servermod"; -"mtconfigf" -> "servermod"; -// vgmod.scm -"sqlite3" -> "vgmod"; -// rmtmod.scm -"sqlite3" -> "rmtmod"; -"ulex" -> "rmtmod"; -"commonmod" -> "rmtmod"; -"itemsmod" -> "rmtmod"; -"apimod" -> "rmtmod"; -"dbmod" -> "rmtmod"; -// dcommonmod.scm -"sqlite3" -> "dcommonmod"; -"mtconfigf" -> "dcommonmod"; -"gutilsmod" -> "dcommonmod"; -"commonmod" -> "dcommonmod"; -"servermod" -> "dcommonmod"; -"testsmod" -> "dcommonmod"; -"megamod" -> "dcommonmod"; -"subrunmod" -> "dcommonmod"; -"runsmod" -> "dcommonmod"; -"rmtmod" -> "dcommonmod"; -"dbmod" -> "dcommonmod"; -"canvas-draw" -> "dcommonmod"; -"canvas-draw-iup" -> "dcommonmod"; -"iup" -> "dcommonmod"; -"mtargs" -> "dcommonmod"; -// commonmod.scm -"sqlite3" -> "commonmod"; -"pkts" -> "commonmod"; -"mtconfigf" -> "commonmod"; -"mtargs" -> "commonmod"; -// dbmod.scm -"sqlite3" -> "dbmod"; -"commonmod" -> "dbmod"; -"keysmod" -> "dbmod"; -"files" -> "dbmod"; -"tasksmod" -> "dbmod"; -"odsmod" -> "dbmod"; -"mtargs" -> "dbmod"; -"mtconfigf" -> "dbmod"; -// pgdbmod.scm -"mtconfigf" -> "pgdbmod"; -"mtargs" -> "pgdbmod"; -"commonmod" -> "pgdbmod"; +// template-mod.scm +"sqlite3" -> "template-mod"; +"commonmod" -> "template-mod"; +// http-transportmod.scm +"commonmod" -> "http-transportmod"; +"stml2" -> "http-transportmod"; +"apimod" -> "http-transportmod"; +"dbmod" -> "http-transportmod"; +"testsmod" -> "http-transportmod"; +"mtargs" -> "http-transportmod"; +"mtconfigf" -> "http-transportmod"; +// apimod.scm +"sqlite3" -> "apimod"; +"commonmod" -> "apimod"; +"dbmod" -> "apimod"; +"servermod" -> "apimod"; // launchmod.scm "sqlite3" -> "launchmod"; "commonmod" -> "launchmod"; -// archivemod.scm -"sqlite3" -> "archivemod"; -"commonmod" -> "archivemod"; -// processmod.scm -"sqlite3" -> "processmod"; -// runsmod.scm -"base64" -> "runsmod"; -"commonmod" -> "runsmod"; -"dbmod" -> "runsmod"; -"itemsmod" -> "runsmod"; -"mtmod" -> "runsmod"; -"pgdbmod" -> "runsmod"; -"mtargs" -> "runsmod"; -"mtconfigf" -> "runsmod"; -"rmtmod" -> "runsmod"; -"servermod" -> "runsmod"; -"stml2" -> "runsmod"; -"subrunmod" -> "runsmod"; -"tasksmod" -> "runsmod"; -"testsmod" -> "runsmod"; +// keysmod.scm +"sqlite3" -> "keysmod"; +"srfi-13" -> "keysmod"; // testsmod.scm "sqlite3" -> "testsmod"; "commonmod" -> "testsmod"; "servermod" -> "testsmod"; "itemsmod" -> "testsmod"; "dbmod" -> "testsmod"; "mtconfigf" -> "testsmod"; "mtargs" -> "testsmod"; +// vgmod.scm +"sqlite3" -> "vgmod"; // clientmod.scm "sqlite3" -> "clientmod"; "commonmod" -> "clientmod"; -// ezstepsmod.scm -"sqlite3" -> "ezstepsmod"; -"commonmod" -> "ezstepsmod"; -// gutilsmod.scm -"iup" -> "gutilsmod"; -"canvas-draw" -> "gutilsmod"; -// envmod.scm -"sqlite3" -> "envmod"; -"commonmod" -> "envmod"; -// http-transportmod.scm -"commonmod" -> "http-transportmod"; -"stml2" -> "http-transportmod"; -"apimod" -> "http-transportmod"; -"dbmod" -> "http-transportmod"; -"testsmod" -> "http-transportmod"; -"mtargs" -> "http-transportmod"; -"mtconfigf" -> "http-transportmod"; -// subrunmod.scm -"sqlite3" -> "subrunmod"; -"commonmod" -> "subrunmod"; -"mtconfigf" -> "subrunmod"; -// template-mod.scm -"sqlite3" -> "template-mod"; -"commonmod" -> "template-mod"; -// tasksmod.scm -"sqlite3" -> "tasksmod"; -"commonmod" -> "tasksmod"; -"mtconfigf" -> "tasksmod"; -"pgdbmod" -> "tasksmod"; -// configfmod.scm -"sqlite3" -> "configfmod"; -// treemod.scm -"iup" -> "treemod"; -// mtmod.scm -"sqlite3" -> "mtmod"; -"mtargs" -> "mtmod"; -"mtconfigf" -> "mtmod"; -"commonmod" -> "mtmod"; -"dbmod" -> "mtmod"; -"pgdbmod" -> "mtmod"; -"rmtmod" -> "mtmod"; -"servermod" -> "mtmod"; -"stml2" -> "mtmod"; -"subrunmod" -> "mtmod"; -"tasksmod" -> "mtmod"; -"testsmod" -> "mtmod"; -// odsmod.scm -"sqlite3" -> "odsmod"; -"commonmod" -> "odsmod"; // megamod.scm "mtconfigf" -> "megamod"; "spiffy" -> "megamod"; "stml2" -> "megamod"; "mtargs" -> "megamod"; @@ -177,24 +79,122 @@ "testsmod" -> "megamod"; "servermod" -> "megamod"; "subrunmod" -> "megamod"; "itemsmod" -> "megamod"; "runsmod" -> "megamod"; +// subrunmod.scm +"sqlite3" -> "subrunmod"; +"commonmod" -> "subrunmod"; +"mtconfigf" -> "subrunmod"; +// tasksmod.scm +"sqlite3" -> "tasksmod"; +"commonmod" -> "tasksmod"; +"mtconfigf" -> "tasksmod"; +"pgdbmod" -> "tasksmod"; +// dbmod.scm +"sqlite3" -> "dbmod"; +"commonmod" -> "dbmod"; +"keysmod" -> "dbmod"; +"files" -> "dbmod"; +"tasksmod" -> "dbmod"; +"odsmod" -> "dbmod"; +"mtargs" -> "dbmod"; +"mtconfigf" -> "dbmod"; +// servermod.scm +"sqlite3" -> "servermod"; +"commonmod" -> "servermod"; +"dbmod" -> "servermod"; +"tasksmod" -> "servermod"; +"mtargs" -> "servermod"; +"mtconfigf" -> "servermod"; +// ezstepsmod.scm +"sqlite3" -> "ezstepsmod"; +"commonmod" -> "ezstepsmod"; +// odsmod.scm +"sqlite3" -> "odsmod"; +"commonmod" -> "odsmod"; +// mtmod.scm +"sqlite3" -> "mtmod"; +"mtargs" -> "mtmod"; +"mtconfigf" -> "mtmod"; +"commonmod" -> "mtmod"; +"dbmod" -> "mtmod"; +"pgdbmod" -> "mtmod"; +"rmtmod" -> "mtmod"; +"servermod" -> "mtmod"; +"stml2" -> "mtmod"; +"subrunmod" -> "mtmod"; +"tasksmod" -> "mtmod"; +"testsmod" -> "mtmod"; +// treemod.scm +"iup" -> "treemod"; // itemsmod.scm "sqlite3" -> "itemsmod"; "commonmod" -> "itemsmod"; -// apimod.scm -"sqlite3" -> "apimod"; -"commonmod" -> "apimod"; -"dbmod" -> "apimod"; -"servermod" -> "apimod"; +// runsmod.scm +"base64" -> "runsmod"; +"commonmod" -> "runsmod"; +"dbmod" -> "runsmod"; +"itemsmod" -> "runsmod"; +"mtmod" -> "runsmod"; +"pgdbmod" -> "runsmod"; +"mtargs" -> "runsmod"; +"mtconfigf" -> "runsmod"; +"rmtmod" -> "runsmod"; +"servermod" -> "runsmod"; +"stml2" -> "runsmod"; +"subrunmod" -> "runsmod"; +"tasksmod" -> "runsmod"; +"testsmod" -> "runsmod"; +// processmod.scm +"sqlite3" -> "processmod"; +// rmtmod.scm +"sqlite3" -> "rmtmod"; +"ulex" -> "rmtmod"; +"commonmod" -> "rmtmod"; +"itemsmod" -> "rmtmod"; +"apimod" -> "rmtmod"; +"dbmod" -> "rmtmod"; +// commonmod.scm +"sqlite3" -> "commonmod"; +"pkts" -> "commonmod"; +"mtconfigf" -> "commonmod"; +"mtargs" -> "commonmod"; +// pgdbmod.scm +"mtconfigf" -> "pgdbmod"; +"mtargs" -> "pgdbmod"; +"commonmod" -> "pgdbmod"; +// envmod.scm +"sqlite3" -> "envmod"; +"commonmod" -> "envmod"; +// configfmod.scm +"sqlite3" -> "configfmod"; +// dcommonmod.scm +"sqlite3" -> "dcommonmod"; +"mtconfigf" -> "dcommonmod"; +"gutilsmod" -> "dcommonmod"; +"commonmod" -> "dcommonmod"; +"servermod" -> "dcommonmod"; +"testsmod" -> "dcommonmod"; +"megamod" -> "dcommonmod"; +"subrunmod" -> "dcommonmod"; +"runsmod" -> "dcommonmod"; +"rmtmod" -> "dcommonmod"; +"dbmod" -> "dcommonmod"; +"canvas-draw" -> "dcommonmod"; +"canvas-draw-iup" -> "dcommonmod"; +"iup" -> "dcommonmod"; +"mtargs" -> "dcommonmod"; +// gutilsmod.scm +"iup" -> "gutilsmod"; +"canvas-draw" -> "gutilsmod"; // runconfigmod.scm "sqlite3" -> "runconfigmod"; "commonmod" -> "runconfigmod"; -// keysmod.scm -"sqlite3" -> "keysmod"; -"srfi-13" -> "keysmod"; +// archivemod.scm +"sqlite3" -> "archivemod"; +"commonmod" -> "archivemod"; } } Index: rmtmod.scm ================================================================== --- rmtmod.scm +++ rmtmod.scm @@ -75,14 +75,14 @@ ;; return the handle struct for sending queries to a specific database ;; - initializes the connection object if this is the first access ;; - finds the "captain" and asks who to talk to for the given dbfname ;; - establishes the connection to the current dbowner ;; -(define (rmt:connect alldat dbfname) +(define (rmt:connect alldat dbfname dbtype) (let* ((ulexdat (or (alldat-ulexdat alldat) (rmt:setup-ulex alldat)))) - (ulex:connect ulexdat dbfname))) + (ulex:connect ulexdat dbfname dbtype))) ;; setup the remote calls (define (rmt:setup-ulex alldat) (let* ((new-ulexdat (ulex:setup))) ;; establish connection to ulex (alldat-ulexdat-set! alldat new-ulexdat) Index: ulex/ulex.scm ================================================================== --- ulex/ulex.scm +++ ulex/ulex.scm @@ -73,11 +73,11 @@ (setup)))) (setup-as-captain udata)) ;; this saves the thread to captain-thread and starts the thread )) ;; connect to a specific dbfile -(define (connect udata dbfname) +(define (connect udata dbfname dbtype) udata) (define (ping udata host-port) (let ((cookie (make-cookie udata))) (send udata host-port 'ping "just pinging" (current-seconds))