123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- package main
- import (
- "encoding/json"
- "fmt"
- "github.com/edgexfoundry/go-mod-core-contracts/clients"
- "github.com/edgexfoundry/go-mod-core-contracts/models"
- "log"
- "net/http"
- )
- const (
- desc1 = "Temperature descriptor1"
- desc2 = "Humidity descriptor2"
- desc3 = "Boolean descriptor"
- desc4 = "Int descriptor"
- desc5 = "Float descriptor"
- desc6 = "String descriptor"
- desc7 = "UInt64 descriptor"
- desc8 = "Bool array descriptor"
- desc9 = "Int array descriptor"
- desc10 = "Float array descriptor"
- )
- var vd1 = models.ValueDescriptor{Id: "Temperature", Created: 123, Modified: 123, Origin: 123, Name: "Temperature",
- Description: "test description", Min: -70, Max: 140, DefaultValue: 32, Formatting: "%f", Type: "Float32",
- Labels: []string{"temp", "room temp"}, UomLabel: "F", MediaType: clients.ContentTypeJSON, FloatEncoding: "eNotation"}
- var vd2 = models.ValueDescriptor{Id: "Humidity", Created: 123, Modified: 123, Origin: 123, Name: "Humidity",
- Description: "test description", Min: -70, Max: 140, DefaultValue: 32, Formatting: "%d", Type: "Uint64",
- Labels: []string{"humi", "room humidity"}, UomLabel: "F", MediaType: clients.ContentTypeJSON, FloatEncoding: "eNotation"}
- var vd3 = models.ValueDescriptor{Id: "b1", Name: "b1", Formatting: "%t", Type: "Bool", MediaType: clients.ContentTypeJSON}
- var vd4 = models.ValueDescriptor{Id: "i1", Name: "i1", Formatting: "%d", Type: "UINT8", MediaType: clients.ContentTypeJSON}
- var vd5 = models.ValueDescriptor{Id: "f1", Name: "f1", Formatting: "%f", Type: "FLOAT64", MediaType: clients.ContentTypeJSON}
- var vd6 = models.ValueDescriptor{Id: "s1", Name: "s1", Formatting: "%s", Type: "String", MediaType: clients.ContentTypeJSON}
- var vd7 = models.ValueDescriptor{Id: "ui64", Name: "ui64", Formatting: "%d", Type: "UINT64", MediaType: clients.ContentTypeJSON}
- var vd8 = models.ValueDescriptor{Id: "ba", Name: "ba", Formatting: "%s", Type: "BOOLARRAY", MediaType: clients.ContentTypeJSON}
- var vd9 = models.ValueDescriptor{Id: "ia", Name: "ia", Formatting: "%s", Type: "INT32ARRAY", MediaType: clients.ContentTypeJSON}
- var vd10 = models.ValueDescriptor{Id: "fa", Name: "fa", Formatting: "%s", Type: "FLOAT64ARRAY", MediaType: clients.ContentTypeJSON}
- func main() {
- http.HandleFunc(clients.ApiValueDescriptorRoute, Hello)
- if e := http.ListenAndServe(":48080", nil); e != nil {
- log.Fatal(e)
- }
- }
- func Hello(w http.ResponseWriter, req *http.Request) {
- descriptor1 := vd1
- descriptor1.Description = desc1
- descriptor2 := vd2
- descriptor2.Description = desc2
- descriptor3 := vd3
- descriptor3.Description = desc3
- descriptor4 := vd4
- descriptor4.Description = desc4
- descriptor5 := vd5
- descriptor5.Description = desc5
- descriptor6 := vd6
- descriptor6.Description = desc6
- descriptor7 := vd7
- descriptor7.Description = desc7
- descriptor8 := vd8
- descriptor8.Description = desc8
- descriptor9 := vd9
- descriptor9.Description = desc9
- descriptor10 := vd10
- descriptor10.Description = desc10
- descriptors := []models.ValueDescriptor{descriptor1, descriptor2, descriptor3, descriptor4, descriptor5, descriptor6, descriptor7, descriptor8, descriptor9, descriptor10}
- data, err := json.Marshal(descriptors)
- if err != nil {
- fmt.Errorf("marshaling error: %s", err.Error())
- }
- if _, err := fmt.Fprintf(w, "%s", data); err != nil {
- log.Fatal(err)
- }
- //_, _ = w.Write(data)
- }
|