Prometheus Kafka Writer Microservice
[demo.git] / vnfs / DAaaS / microservices / prom-kafka-writer / pkg / api / router.go
1 /*
2  *
3  * Copyright 2019 Intel Corporation.
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  * Unless required by applicable law or agreed to in writing, software
9  * distributed under the License is distributed on an "AS IS" BASIS,
10  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11  * See the License for the specific language governing permissions and
12  * limitations under the License.
13  *
14  */
15
16 package api
17
18 import (
19         "github.com/gorilla/mux"
20         "github.com/prometheus/client_golang/prometheus/promhttp"
21 )
22
23 func NewRouter() *mux.Router {
24         r := mux.NewRouter()
25         r.HandleFunc("/pkw", ListKWHandler).Methods("GET")
26         r.HandleFunc("/pkw", CreateKWHandler).Methods("POST")
27         r.HandleFunc("/pkw/{kwid}", DeleteKWHandler).Methods("DELETE")
28         r.HandleFunc("/pkw/{kwid}/receive", ReceiveKWHandler).Methods("POST")
29
30         // Metrics Handler for prom-kafka-writer
31         r.Handle("/metrics", promhttp.Handler())
32         return r
33 }