Redesign and taking xapp-framework into use
[ric-plt/vespamgr.git] / cmd / vesmgr / httpserver.go
diff --git a/cmd/vesmgr/httpserver.go b/cmd/vesmgr/httpserver.go
deleted file mode 100644 (file)
index 1ac0999..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- *  Copyright (c) 2019 AT&T Intellectual Property.
- *  Copyright (c) 2018-2019 Nokia.
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- *
- *  This source code is part of the near-RT RIC (RAN Intelligent Controller)
- *  platform project (RICP).
- *
- */
-
-package main
-
-import (
-       "fmt"
-       "io/ioutil"
-       "net"
-       "net/http"
-)
-
-// SupervisionURL is the url where kubernetes posts alive queries
-const SupervisionURL = "/supervision/"
-
-// HTTPServer is the VesMgr HTTP server struct
-type HTTPServer struct {
-       listener net.Listener
-}
-
-func (s *HTTPServer) init(address string) *HTTPServer {
-       var err error
-       s.listener, err = net.Listen("tcp", address)
-       if err != nil {
-               panic("Cannot listen:" + err.Error())
-       }
-       return s
-}
-
-func (s *HTTPServer) start(notifPath string, notifCh chan []byte, supCh chan chan string) {
-       go runHTTPServer(s.listener, notifPath, notifCh, supCh)
-}
-
-func (s *HTTPServer) addr() net.Addr {
-       return s.listener.Addr()
-}
-
-func runHTTPServer(listener net.Listener, xappNotifURL string, notifCh chan []byte, supervisionCh chan chan string) {
-
-       logger.Info("vesmgr http server serving at %s", listener.Addr())
-
-       http.HandleFunc(xappNotifURL, func(w http.ResponseWriter, r *http.Request) {
-
-               switch r.Method {
-               case "POST":
-                       logger.Info("httpServer: POST in %s", xappNotifURL)
-                       body, err := ioutil.ReadAll(r.Body)
-                       defer r.Body.Close()
-                       if err != nil {
-                               logger.Error("httpServer: Invalid body in POST request")
-                               return
-                       }
-                       notifCh <- body
-                       return
-               default:
-                       logger.Error("httpServer: Invalid method %s to %s", r.Method, r.URL.Path)
-                       http.Error(w, "405 method not allowed", http.StatusMethodNotAllowed)
-                       return
-               }
-       })
-
-       http.HandleFunc(SupervisionURL, func(w http.ResponseWriter, r *http.Request) {
-
-               switch r.Method {
-               case "GET":
-                       logger.Info("httpServer: GET supervision")
-                       supervisionAckCh := make(chan string)
-                       // send supervision to the main loop
-                       supervisionCh <- supervisionAckCh
-                       reply := <-supervisionAckCh
-                       logger.Info("httpServer: supervision ack from the main loop: %s", reply)
-                       fmt.Fprintf(w, reply)
-                       return
-               default:
-                       logger.Error("httpServer: invalid method %s to %s", r.Method, r.URL.Path)
-                       http.Error(w, "405 method not allowed", http.StatusMethodNotAllowed)
-                       return
-               }
-
-       })
-
-       http.Serve(listener, nil)
-}