From 353a3b7151ba1f059bc0275fabf11ca049e7cb52 Mon Sep 17 00:00:00 2001 From: David Hurst Date: Sun, 17 Apr 2016 11:57:44 -0600 Subject: Updated structure/readme --- cmd/main.go | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 cmd/main.go (limited to 'cmd') diff --git a/cmd/main.go b/cmd/main.go new file mode 100644 index 0000000..074a4f3 --- /dev/null +++ b/cmd/main.go @@ -0,0 +1,51 @@ +package main + +import ( + "bytes" + "codesaloon.com/torpedo" + "encoding/xml" + "flag" + "fmt" + "net/url" +) + +type subsonicresponse struct { + XMLName xml.Name `xml:"subsonic-response"` + Xmlns string `xml:"xmlns,attr"` + Status string `xml:"status,attr"` + Version string `xml:"version,attr"` +} + +type ping struct { + torpedo.PostNotSupported + torpedo.PutNotSupported + torpedo.DeleteNotSupported +} + +func (ping) Get(values url.Values) (int, string) { + + data := &subsonicresponse{Version: "1.1.1", Status: "ok", Xmlns: "http://subsonic.org/restapi"} + + buf := new(bytes.Buffer) + enc := xml.NewEncoder(buf) + + if err := enc.Encode(data); err != nil { + fmt.Printf("error: %v\n", err) + } else { + fmt.Println(buf.String()) + } + + return 200, buf.String() +} + +func main() { + var port = flag.Int("port", 8000, "Port number to listen on") + flag.Parse() + + ping := new(ping) + + var api = new(torpedo.API) + api.AddResource(ping, "/rest/ping.view") + api.Start(*port) + +} -- cgit v1.2.1 From 17bff1d0204a766d07ab127152fd006bc302138c Mon Sep 17 00:00:00 2001 From: David Hurst Date: Sun, 17 Apr 2016 12:05:46 -0600 Subject: ping in own file --- cmd/ping.go | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 cmd/ping.go (limited to 'cmd') diff --git a/cmd/ping.go b/cmd/ping.go new file mode 100644 index 0000000..a046cb0 --- /dev/null +++ b/cmd/ping.go @@ -0,0 +1,31 @@ +package main + +import ( + "bytes" + "codesaloon.com/torpedo" + "encoding/xml" + "fmt" + "net/url" +) + +type ping struct { + torpedo.PostNotSupported + torpedo.PutNotSupported + torpedo.DeleteNotSupported +} + +func (ping) Get(values url.Values) (int, string) { + + data := &subsonicresponse{Version: "1.1.1", Status: "ok", Xmlns: "http://subsonic.org/restapi"} + + buf := new(bytes.Buffer) + enc := xml.NewEncoder(buf) + + if err := enc.Encode(data); err != nil { + fmt.Printf("error: %v\n", err) + } else { + fmt.Println(buf.String()) + } + + return 200, buf.String() +} -- cgit v1.2.1