the way i'm doing the web itnerface kinda sucks.
authorPaul J R <me@pjr.cc>
Sun, 15 Nov 2009 12:51:54 +0000 (23:51 +1100)
committerPaul J R <me@pjr.cc>
Sun, 15 Nov 2009 12:51:54 +0000 (23:51 +1100)
src/benchcontroller.go
src/webconnector.go

index bb49570..6bd48a3 100644 (file)
@@ -4,7 +4,7 @@ package benchcontroller
 
 import (
        //"./dbconnector";
-       "os";
+       "fmt";
        "time";
 )
 
@@ -25,14 +25,15 @@ func CreateController()(contConfig *BenchControllerConfig)
        return bcConfig;
 }
 
-func MainLoop(conf *BenchControllerConfig, commInChan chan int, commOutChan chan int)
+func MainLoop(conf *BenchControllerConfig, commInChan chan string, commOutChan chan string)
 {
        for {
                time.Sleep(1000000000);
                i := <-commInChan;
-               os.Stdout.WriteString("got a coms\n");
                
-               switch i {
+               fmt.Printf("coms: %s\n", i);
+               
+               /*switch i {
                        case 1:
                                // this means shutdown
                                os.Stdout.WriteString("shutdown\n");
@@ -43,6 +44,6 @@ func MainLoop(conf *BenchControllerConfig, commInChan chan int, commOutChan chan
                        case 3:
                                // start the clients
                                os.Stdout.WriteString("start clients\n");
-               }
+               }*/
        }
 }
\ No newline at end of file
index 9885bbb..80a333f 100644 (file)
@@ -11,8 +11,8 @@ import (
        "fmt";
 )
 
-var comin chan int;
-var comout chan int;
+var comin chan string;
+var comout chan string;
 
 // hello world, the web server
 func ServerResponder(c *http.Conn, req *http.Request) {
@@ -27,12 +27,30 @@ func ServerResponder(c *http.Conn, req *http.Request) {
        if req.RawURL == "/confirm" {
                confirmPage(c, req);
        }
+
+       if req.RawURL == "/begin" {
+               beginPage(c, req);
+       }
        
-       // fucking go, i just wanna consume the incoming data, but it forces me to do something with it... cunt of a language
        //k := <- comin;
        //fmt.Printf("%d\n", k);
 }
 
+func beginPage(c *http.Conn, req *http.Request)
+{
+       header(c);
+       io.WriteString(c, "<h1>Starting hammer</h1>");
+       //dbhost := req.FormValue("dbhost");
+       //dbuser := req.FormValue("dbuser");
+       //dbpass := req.FormValue("dbpass");
+       //dbname := req.FormValue("dbname");
+       //nthreads := req.FormValue("nthreads");
+       //dbmult := req.FormValue("dbmult");
+       
+       footer(c);
+       
+}
+
 func confirmPage(c *http.Conn, req *http.Request)
 {
        header(c);
@@ -64,6 +82,8 @@ func confirmPage(c *http.Conn, req *http.Request)
        io.WriteString(c, "</form>");
        
        footer(c);
+       comout <- fmt.Sprintf("configure:%s:%s:%s:%s:%s:%s", dbhost, dbuser, dbpass, dbname, dbmult, nthreads);
+
 }
 
 func mainPage(c *http.Conn, req *http.Request)
@@ -98,14 +118,14 @@ func footer(c *http.Conn)
 
 func main()
 {
-       comin = make(chan int);
-       comout = make(chan int);
+       comin = make(chan string);
+       comout = make(chan string);
        
        bc := benchcontroller.CreateController();
        go benchcontroller.MainLoop(bc, comout, comin);
        
        http.Handle("/", http.HandlerFunc(ServerResponder));
-       err := http.ListenAndServe(":12345", nil);
+       err := http.ListenAndServe(":22222", nil);
        if err != nil {
                panic("ListenAndServe: ", err.String())
        }