remove stuff
[svn42.git] / go / door_client_zmq / main.go
diff --git a/go/door_client_zmq/main.go b/go/door_client_zmq/main.go
deleted file mode 100644 (file)
index 7ce4fb8..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-// (c) Bernhard Tittelbach, 2013
-
-package main
-
-import (
-    "fmt"
-    "os"
-    "flag"
-    "log"
-    "bufio"
-    "bytes"
-)
-
-
-// ---------- Main Code -------------
-
-var (
-    cmd_port_ string
-    sub_port_ string
-    cmd_method_ string
-    cmd_user_ string
-)
-
-func init() {
-    flag.StringVar(&cmd_port_, "cmdport", "ipc:///run/tuer/door_cmd.ipc", "zmq command socket path")
-    flag.StringVar(&sub_port_, "pubport", "tcp://torwaechter.realraum.at:4242", "zmq subscribe/listen socket path")
-    flag.StringVar(&cmd_method_, "method", "", "zmq cmd method")
-    flag.StringVar(&cmd_user_, "usernick", "", "zmq cmd user identity")
-    flag.Parse()
-}
-
-func LineReader(out chan <- [][]byte, stdin * os.File) {
-    linescanner := bufio.NewScanner(stdin)
-    linescanner.Split(bufio.ScanLines)
-    defer close(out)
-    for linescanner.Scan() {
-        if err := linescanner.Err(); err != nil {
-            log.Print(err)
-            return
-        }
-        //text := bytes.Fields(linescanner.Bytes()) //this returns a slice (aka pointer, no array deep-copy here)
-        text := bytes.Fields([]byte(linescanner.Text())) //this allocates a string and slices it -> no race-condition with overwriting any data
-        if len(text) == 0 {
-            continue
-        }
-        out <- text
-    }
-}
-
-func ByteArrayToString(bb [][]byte) string {
-    b := bytes.Join(bb, []byte(" "))
-    return string(b)
-}
-
-func main() {
-    zmqctx, cmd_chans, sub_chans := ZmqsInit(cmd_port_, sub_port_)
-    defer cmd_chans.Close()
-    defer sub_chans.Close()
-    defer zmqctx.Close()
-    var listen bool
-    var ignore_next uint = 0
-
-    user_input_chan := make(chan [][]byte, 1)
-    go LineReader(user_input_chan, os.Stdin)
-    defer os.Stdin.Close()
-
-    for {
-        select {
-        case input, input_open := (<- user_input_chan):
-            if input_open {
-                if len(input) == 0 { continue }
-                 switch string(input[0]) {
-                    case "help", "?":
-                        fmt.Println("Available Commands: help, listen, quit. Everything else is passed through to door daemon")
-                    case "listen":
-                        listen = true
-                        fmt.Println("Now listening, @ are broadcasts")
-                    case "quit":
-                        os.Exit(0)
-                    default:
-                        ignore_next = 2
-                        cmd_chans.Out() <- input
-                        reply := <- cmd_chans.In()
-                        fmt.Println(">",ByteArrayToString(reply))
-                }
-            } else {
-                os.Exit(0)
-            }
-        case pubsubstuff := <- sub_chans.In():
-            if len(pubsubstuff) == 0 { continue}
-            if ignore_next > 0 {
-                ignore_next--
-                continue
-            }
-            if listen {
-                fmt.Println("@",ByteArrayToString(pubsubstuff))
-            }
-        }
-    }
-}