|
- package apiclient
-
- import (
- "encoding/json"
- "fmt"
- "net/http"
-
- "github.com/AFASystems/presence/internal/pkg/model"
- )
-
- func GetTrackers(token string, client *http.Client) ([]model.Tracker, error) {
- res, err := getRequest(token, "getTrackers", client)
- if err != nil {
- return []model.Tracker{}, err
- }
-
- var i []model.Tracker
- err = json.NewDecoder(res.Body).Decode(&i)
- if err != nil {
- return []model.Tracker{}, err
- }
-
- return i, nil
- }
-
- func GetGateways(token string, client *http.Client) ([]model.Gateway, error) {
- res, err := getRequest(token, "getGateways", client)
- if err != nil {
- return []model.Gateway{}, err
- }
-
- var i []model.Gateway
- err = json.NewDecoder(res.Body).Decode(&i)
- if err != nil {
- return []model.Gateway{}, err
- }
-
- return i, nil
- }
-
- func GetTrackerZones(token string, client *http.Client) ([]model.TrackerZones, error) {
- res, err := getRequest(token, "getTrackerZones", client)
- if err != nil {
- return []model.TrackerZones{}, err
- }
-
- var i []model.TrackerZones
- err = json.NewDecoder(res.Body).Decode(&i)
- if err != nil {
- return []model.TrackerZones{}, err
- }
-
- return i, nil
- }
-
- func GetZones(token string, client *http.Client) ([]model.Zone, error) {
- res, err := getRequest(token, "getZones", client)
- if err != nil {
- return []model.Zone{}, err
- }
-
- var i []model.Zone
- err = json.NewDecoder(res.Body).Decode(&i)
- if err != nil {
- return []model.Zone{}, err
- }
-
- return i, nil
- }
-
- func GetTracks(token string, client *http.Client) ([]model.Tracks, error) {
- res, err := getRequest(token, "getTracks", client)
- if err != nil {
- return []model.Tracks{}, err
- }
-
- var i []model.Tracks
- err = json.NewDecoder(res.Body).Decode(&i)
- if err != nil {
- return []model.Tracks{}, err
- }
-
- return i, nil
- }
-
- func getRequest(token, route string, client *http.Client) (*http.Response, error) {
- url := fmt.Sprintf("https://10.251.0.30:5050/reslevis/%s", route)
- req, err := http.NewRequest("GET", url, nil)
- if err != nil {
- return nil, err
- }
-
- header := fmt.Sprintf("Bearer %s", token)
-
- req.Header.Add("Authorization", header)
- res, err := client.Do(req)
- if err != nil {
- return nil, err
- }
-
- return res, nil
- }
|