Code refactoring
This commit is contained in:
@@ -76,13 +76,8 @@ func HandleFunc(pattern string, handler http.HandlerFunc) {
|
||||
http.HandleFunc(pattern, handler)
|
||||
}
|
||||
|
||||
func HandleWS(msgType string, handler WSHandler) {
|
||||
wsHandlers[msgType] = handler
|
||||
}
|
||||
|
||||
var basePath string
|
||||
var log zerolog.Logger
|
||||
var wsHandlers = make(map[string]WSHandler)
|
||||
|
||||
func middlewareLog(next http.Handler) http.Handler {
|
||||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
+16
-7
@@ -1,7 +1,6 @@
|
||||
package api
|
||||
|
||||
import (
|
||||
"github.com/AlexxIT/go2rtc/pkg/streamer"
|
||||
"github.com/gorilla/websocket"
|
||||
"net/http"
|
||||
"net/url"
|
||||
@@ -9,6 +8,20 @@ import (
|
||||
"sync"
|
||||
)
|
||||
|
||||
// Message - struct for data exchange in Web API
|
||||
type Message struct {
|
||||
Type string `json:"type"`
|
||||
Value interface{} `json:"value,omitempty"`
|
||||
}
|
||||
|
||||
type WSHandler func(tr *Transport, msg *Message)
|
||||
|
||||
func HandleWS(msgType string, handler WSHandler) {
|
||||
wsHandlers[msgType] = handler
|
||||
}
|
||||
|
||||
var wsHandlers = make(map[string]WSHandler)
|
||||
|
||||
func initWS(origin string) {
|
||||
wsUp = &websocket.Upgrader{
|
||||
ReadBufferSize: 1024,
|
||||
@@ -63,7 +76,7 @@ func apiWS(w http.ResponseWriter, r *http.Request) {
|
||||
})
|
||||
|
||||
for {
|
||||
msg := new(streamer.Message)
|
||||
msg := new(Message)
|
||||
if err = ws.ReadJSON(msg); err != nil {
|
||||
log.Trace().Err(err).Caller().Send()
|
||||
_ = ws.Close()
|
||||
@@ -80,8 +93,6 @@ func apiWS(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
var wsUp *websocket.Upgrader
|
||||
|
||||
type WSHandler func(tr *Transport, msg *streamer.Message)
|
||||
|
||||
type Transport struct {
|
||||
Request *http.Request
|
||||
Consumer interface{} // TODO: rewrite
|
||||
@@ -115,9 +126,7 @@ func (t *Transport) Close() {
|
||||
}
|
||||
|
||||
func (t *Transport) Error(err error) {
|
||||
t.Write(&streamer.Message{
|
||||
Type: "error", Value: err.Error(),
|
||||
})
|
||||
t.Write(&Message{Type: "error", Value: err.Error()})
|
||||
}
|
||||
|
||||
func (t *Transport) OnChange(f func()) {
|
||||
|
||||
Reference in New Issue
Block a user