summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Pointner <equinox@helsinki.at>2015-12-03 18:59:01 (GMT)
committerChristian Pointner <equinox@helsinki.at>2015-12-03 18:59:01 (GMT)
commite8f972b29d3cb2854de91b46d04f2a3c1d51b413 (patch)
tree25dbb919ef6a71b6af6df63b83456c80b58c6a2d
parente22f278ed72b8dbbe4174264d25c7eac54b077d1 (diff)
moved control interface back to main package
added importer at rhimport package
-rw-r--r--importer.go99
-rw-r--r--srvWeb.go41
2 files changed, 99 insertions, 41 deletions
diff --git a/importer.go b/importer.go
new file mode 100644
index 0000000..5da6075
--- /dev/null
+++ b/importer.go
@@ -0,0 +1,99 @@
+//
+// rhimportd
+//
+// The Radio Helsinki Rivendell Import Daemon
+//
+//
+// Copyright (C) 2015 Christian Pointner <equinox@helsinki.at>
+//
+// This file is part of rhimportd.
+//
+// rhimportd is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// any later version.
+//
+// rhimportd is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with rhimportd. If not, see <http://www.gnu.org/licenses/>.
+//
+
+package rhimport
+
+import (
+ // "bytes"
+ "fmt"
+ // "io"
+ // "mime/multipart"
+ // "net/http"
+ // "os"
+)
+
+type ImportContext struct {
+ username string
+ groupname string
+ // TODO: password channel
+ cart int
+ channels int
+ normalization_level int
+ autotrim_level int
+ use_meta_data bool
+ source_file string
+ delete_source_file bool
+}
+
+// func import_audio(url, file string) (err error) {
+
+// var b bytes.Buffer
+// w := multipart.NewWriter(&b)
+
+// if err = w.WriteField("COMMAND", "2"); err != nil {
+// return
+// }
+// if err = w.WriteField("LOGIN_NAME", "<username>"); err != nil {
+// return
+// }
+// if err = w.WriteField("PASSWORD", "<password>"); err != nil {
+// return
+// }
+
+// f, err := os.Open(file)
+// if err != nil {
+// return
+// }
+// fw, err := w.CreateFormFile("FILENAME", file)
+// if err != nil {
+// return
+// }
+// if _, err = io.Copy(fw, f); err != nil {
+// return
+// }
+// f.Close()
+
+// w.Close()
+
+// req, err := http.NewRequest("POST", url, &b)
+// if err != nil {
+// return
+// }
+// req.Header.Set("Content-Type", w.FormDataContentType())
+
+// client := &http.Client{}
+// res, err := client.Do(req)
+// if err != nil {
+// return
+// }
+// if res.StatusCode != http.StatusOK {
+// err = fmt.Errorf("bad status: %s", res.Status)
+// }
+// return
+// }
+
+func ImportFile(ctx *ImportContext) (err error) {
+ err = fmt.Errorf("not yet implemented")
+ return
+}
diff --git a/srvWeb.go b/srvWeb.go
deleted file mode 100644
index f51c8e8..0000000
--- a/srvWeb.go
+++ /dev/null
@@ -1,41 +0,0 @@
-//
-// rhimportd
-//
-// The Radio Helsinki Rivendell Import Daemon
-//
-//
-// Copyright (C) 2015 Christian Pointner <equinox@helsinki.at>
-//
-// This file is part of rhimportd.
-//
-// rhimportd is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// any later version.
-//
-// rhimportd is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with rhimportd. If not, see <http://www.gnu.org/licenses/>.
-//
-
-package rhimport
-
-import (
- "fmt"
- "html"
- "net/http"
- _ "net/http/pprof"
-)
-
-func ServeWeb(addr_s string) {
- http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
- fmt.Fprintf(w, "Hello, %q", html.EscapeString(r.URL.Path))
- })
-
- rhl.Println("listening on", addr_s)
- http.ListenAndServe(addr_s, nil)
-}