From deb9dc585d6bb170f01e98db00ad6ea70f0b4ef7 Mon Sep 17 00:00:00 2001 From: Paul J R Date: Mon, 16 Nov 2009 17:28:14 +1100 Subject: [PATCH] the ugliest code on earth... --- src/benchcontroller.go | 25 ++++++++++++++++++++++++- src/web/index.html | 1 + src/webconnector.go | 31 +++++++++++++++++++++++++++++-- 3 files changed, 54 insertions(+), 3 deletions(-) diff --git a/src/benchcontroller.go b/src/benchcontroller.go index 21150e1..4d68235 100644 --- a/src/benchcontroller.go +++ b/src/benchcontroller.go @@ -28,8 +28,31 @@ func CreateController()(contConfig *BenchControllerConfig) return bcConfig; } -func MainLoop(conf *BenchControllerConfig, commInChan chan string, commOutChan chan string) +func buildStatus(commOutStatus chan string, commInGoro chan string) { + var statusBuffer string; + + statusBuffer = "none:none"; + + for { + select { + case invar := <- commInGoro: + fmt.Printf("received a status update\n"); + statusBuffer = invar; + case commOutStatus <- statusBuffer: + fmt.Printf("send a status buffer\n"); + + } + } +} + +func MainLoop(conf *BenchControllerConfig, commInChan chan string, commOutChan chan string, commOutStatus chan string) +{ + + comInGo := make(chan string); + + go buildStatus(commOutStatus, comInGo); + for { i := <-commInChan; diff --git a/src/web/index.html b/src/web/index.html index b499243..850d74f 100644 --- a/src/web/index.html +++ b/src/web/index.html @@ -1,6 +1,7 @@ + Insert title here diff --git a/src/webconnector.go b/src/webconnector.go index fa814f3..4b7b60b 100644 --- a/src/webconnector.go +++ b/src/webconnector.go @@ -10,11 +10,37 @@ import ( "./benchcontroller"; //"dbconnector"; "fmt"; + "json"; ) +type JSONdata struct { + currentJob int; // 1 = nothing, 2 = have database login, 3 = createing data, 4 = running test, 5 = finished + currentStatus int; // percent complete +} + var comin chan string; +var cominstatus chan string; var comout chan string; +func JSONResponder(c *http.Conn, req *http.Request) +{ + //stat := <- cominstatus; + + j, _, _ := json.StringToJson("{\"somestring\":\"somevalue\"}"); + + io.WriteString(c, fmt.Sprintf("%s\n", json.JsonToString(j))); + + /*if ret { + fmt.Printf("err was true\n"); + } else { + fmt.Printf("err was false\n"); + }*/ + + //fmt.Printf("errto %s\n", errto); + +} + + // hello world, the web server func ServerResponder(c *http.Conn, req *http.Request) { //comout <- 2; @@ -129,14 +155,15 @@ func footer(c *http.Conn) func main() { comin = make(chan string); + cominstatus = make(chan string); comout = make(chan string); bc := benchcontroller.CreateController(); - go benchcontroller.MainLoop(bc, comout, comin); + go benchcontroller.MainLoop(bc, comout, comin, cominstatus); http.Handle("/", http.FileServer("./web", "/web")); - http.Handle("/json", http.HandlerFunc(ServerResponder)); + http.Handle("/json", http.HandlerFunc(JSONResponder)); err := http.ListenAndServe(":22222", nil); if err != nil { panic("ListenAndServe: ", err.String()) -- 1.7.0.4