67 lines
1.3 KiB
Go
67 lines
1.3 KiB
Go
package localserver
|
|
|
|
// import (
|
|
// "context"
|
|
// "encoding/json"
|
|
// "io"
|
|
// "net/http"
|
|
// )
|
|
|
|
// type (
|
|
// WebRTCHttpMiddleware struct {
|
|
// //menuItem *systray.MenuItem
|
|
// }
|
|
// )
|
|
|
|
// const (
|
|
// CREATE_HOSTED_SQUAD = "create_hosted_squad"
|
|
// )
|
|
|
|
// // func NewWebRTCHttpMiddleware(menuItem *systray.MenuItem) (webRTCHttpMiddleware *WebRTCHttpMiddleware) {
|
|
// // webRTCHttpMiddleware = &WebRTCHttpMiddleware{
|
|
// // menuItem: menuItem,
|
|
// // }
|
|
// // return
|
|
// // }
|
|
|
|
// func (wm *WebRTCHttpMiddleware) Process(ctx context.Context, req *http.Request) (err error) {
|
|
// done, errCh := make(chan struct{}), make(chan error)
|
|
// go func() {
|
|
// localServerReq, err := wm.unmarshallBody(req)
|
|
// if err != nil {
|
|
// errCh <- err
|
|
// return
|
|
// }
|
|
// switch localServerReq.ReqType {
|
|
// case CREATE_HOSTED_SQUAD:
|
|
|
|
// default:
|
|
// }
|
|
// }()
|
|
// select {
|
|
// case <-done:
|
|
// return
|
|
// case err = <-errCh:
|
|
// return
|
|
// case <-ctx.Done():
|
|
// err = ctx.Err()
|
|
// return
|
|
// }
|
|
// }
|
|
|
|
// func (wm *WebRTCHttpMiddleware) unmarshallBody(req *http.Request) (localServerReq *LocalServerRequest, err error) {
|
|
// reqBody, err := req.GetBody()
|
|
// if err != nil {
|
|
// return
|
|
// }
|
|
// bs, err := io.ReadAll(reqBody)
|
|
// if err != nil {
|
|
// return
|
|
// }
|
|
// err = json.Unmarshal(bs, &localServerReq)
|
|
// if err != nil {
|
|
// return
|
|
// }
|
|
// return
|
|
// }
|