diff --git a/build/deploy/atlas/docker-compose.yml b/build/deploy/atlas/docker-compose.yml index b72e2791..4ef116c7 100644 --- a/build/deploy/atlas/docker-compose.yml +++ b/build/deploy/atlas/docker-compose.yml @@ -1,7 +1,7 @@ version: "3" services: atlas-api: - image: ghcr.io/thingspect/atlas:04a64ffd + image: ghcr.io/thingspect/atlas:fdec545f command: atlas-api restart: on-failure ports: @@ -23,7 +23,7 @@ services: - API_LORA_DEV_PROF_ID=00000000-0000-0000-0000-000000000000 atlas-mqtt-ingestor: - image: ghcr.io/thingspect/atlas:04a64ffd + image: ghcr.io/thingspect/atlas:fdec545f command: atlas-mqtt-ingestor restart: on-failure depends_on: @@ -35,7 +35,7 @@ services: - MQTT_INGEST_NSQ_PUB_ADDR=nsqd:4150 atlas-lora-ingestor: - image: ghcr.io/thingspect/atlas:04a64ffd + image: ghcr.io/thingspect/atlas:fdec545f command: atlas-lora-ingestor restart: on-failure depends_on: @@ -48,7 +48,7 @@ services: - LORA_INGEST_NSQ_PUB_ADDR=nsqd:4150 atlas-decoder: - image: ghcr.io/thingspect/atlas:04a64ffd + image: ghcr.io/thingspect/atlas:fdec545f command: atlas-decoder restart: on-failure depends_on: @@ -62,7 +62,7 @@ services: - DECODER_NSQ_LOOKUP_ADDRS=nsqlookupd:4161 atlas-validator: - image: ghcr.io/thingspect/atlas:04a64ffd + image: ghcr.io/thingspect/atlas:fdec545f command: atlas-validator restart: on-failure depends_on: @@ -77,7 +77,7 @@ services: - VALIDATOR_NSQ_LOOKUP_ADDRS=nsqlookupd:4161 atlas-accumulator: - image: ghcr.io/thingspect/atlas:04a64ffd + image: ghcr.io/thingspect/atlas:fdec545f command: atlas-accumulator restart: on-failure environment: @@ -88,7 +88,7 @@ services: - ACCUMULATOR_NSQ_LOOKUP_ADDRS=nsqlookupd:4161 atlas-eventer: - image: ghcr.io/thingspect/atlas:04a64ffd + image: ghcr.io/thingspect/atlas:fdec545f command: atlas-eventer restart: on-failure depends_on: @@ -101,7 +101,7 @@ services: - EVENTER_NSQ_LOOKUP_ADDRS=nsqlookupd:4161 atlas-alerter: - image: ghcr.io/thingspect/atlas:04a64ffd + image: ghcr.io/thingspect/atlas:fdec545f command: atlas-alerter restart: on-failure environment: diff --git a/go.mod b/go.mod index 56e30a3d..dd6af91b 100644 --- a/go.mod +++ b/go.mod @@ -9,7 +9,7 @@ require ( github.com/expr-lang/expr v1.15.7 github.com/google/uuid v1.5.0 github.com/gregdel/pushover v1.3.0 - github.com/grpc-ecosystem/grpc-gateway/v2 v2.18.1 + github.com/grpc-ecosystem/grpc-gateway/v2 v2.19.0 github.com/jackc/pgx/v5 v5.5.1 github.com/jellydator/ttlcache/v3 v3.1.1 github.com/mennanov/fmutils v0.2.1 @@ -17,7 +17,7 @@ require ( github.com/redis/go-redis/v9 v9.3.1 github.com/smira/go-statsd v1.3.3 github.com/stretchr/testify v1.8.4 - github.com/thingspect/proto/go v1.1.0 + github.com/thingspect/proto/go v1.1.1 go.uber.org/mock v0.4.0 golang.org/x/crypto v0.17.0 google.golang.org/grpc v1.60.1 @@ -41,8 +41,8 @@ require ( golang.org/x/sync v0.5.0 // indirect golang.org/x/sys v0.15.0 // indirect golang.org/x/text v0.14.0 // indirect - google.golang.org/genproto v0.0.0-20231212172506-995d672761c0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20231212172506-995d672761c0 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20231212172506-995d672761c0 // indirect + google.golang.org/genproto v0.0.0-20240102182953-50ed04b92917 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20240102182953-50ed04b92917 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240102182953-50ed04b92917 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go.sum b/go.sum index d8ec8131..06408522 100644 --- a/go.sum +++ b/go.sum @@ -530,8 +530,8 @@ github.com/gorilla/websocket v1.5.1/go.mod h1:x3kM2JMyaluk02fnUJpQuwD2dCS5NDG2ZH github.com/gregdel/pushover v1.3.0 h1:CewbxqsThoN/1imgwkDKFkRkltaQMoyBV0K9IquQLtw= github.com/gregdel/pushover v1.3.0/go.mod h1:EcaO66Nn1StkpEm1iKtBTV3d2A16SoMsVER1PthX7to= github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.18.1 h1:6UKoz5ujsI55KNpsJH3UwCq3T8kKbZwNZBNPuTTje8U= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.18.1/go.mod h1:YvJ2f6MplWDhfxiUC3KpyTy76kYUZA4W3pTv/wdKQ9Y= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.19.0 h1:Wqo399gCIufwto+VfwCSvsnfGpF/w5E9CNxSwbpD6No= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.19.0/go.mod h1:qmOFXW2epJhM0qSnUUYpldc7gVz2KMQwJ/QYCDIa7XU= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= @@ -585,8 +585,8 @@ github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= -github.com/thingspect/proto/go v1.1.0 h1:KipLQkuchDNBPAkrznlZ7ksYOgyXB68bFcQVi7IQO4I= -github.com/thingspect/proto/go v1.1.0/go.mod h1:/VFRx1LKDAI4HCLYB6u4vpIuJa5i1RKllaxzAB6Ng5Y= +github.com/thingspect/proto/go v1.1.1 h1:v1C9dK7i0VPf0ZCO5TRmL1LV4wPS5ouGXjBKpvMto0c= +github.com/thingspect/proto/go v1.1.1/go.mod h1:6AGf7laq7xTrkNGxTvblyGiq+ip3BqkYYosXjhh7uIY= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= @@ -1051,12 +1051,12 @@ google.golang.org/genproto v0.0.0-20221117204609-8f9c96812029/go.mod h1:rZS5c/ZV google.golang.org/genproto v0.0.0-20221118155620-16455021b5e6/go.mod h1:rZS5c/ZVYMaOGBfO68GWtjOw/eLaZM1X6iVtgjZ+EWg= google.golang.org/genproto v0.0.0-20221201164419-0e50fba7f41c/go.mod h1:rZS5c/ZVYMaOGBfO68GWtjOw/eLaZM1X6iVtgjZ+EWg= google.golang.org/genproto v0.0.0-20230202175211-008b39050e57/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM= -google.golang.org/genproto v0.0.0-20231212172506-995d672761c0 h1:YJ5pD9rF8o9Qtta0Cmy9rdBwkSjrTCT6XTiUQVOtIos= -google.golang.org/genproto v0.0.0-20231212172506-995d672761c0/go.mod h1:l/k7rMz0vFTBPy+tFSGvXEd3z+BcoG1k7EHbqm+YBsY= -google.golang.org/genproto/googleapis/api v0.0.0-20231212172506-995d672761c0 h1:s1w3X6gQxwrLEpxnLd/qXTVLgQE2yXwaOaoa6IlY/+o= -google.golang.org/genproto/googleapis/api v0.0.0-20231212172506-995d672761c0/go.mod h1:CAny0tYF+0/9rmDB9fahA9YLzX3+AEVl1qXbv5hhj6c= -google.golang.org/genproto/googleapis/rpc v0.0.0-20231212172506-995d672761c0 h1:/jFB8jK5R3Sq3i/lmeZO0cATSzFfZaJq1J2Euan3XKU= -google.golang.org/genproto/googleapis/rpc v0.0.0-20231212172506-995d672761c0/go.mod h1:FUoWkonphQm3RhTS+kOEhF8h0iDpm4tdXolVCeZ9KKA= +google.golang.org/genproto v0.0.0-20240102182953-50ed04b92917 h1:nz5NESFLZbJGPFxDT/HCn+V1mZ8JGNoY4nUpmW/Y2eg= +google.golang.org/genproto v0.0.0-20240102182953-50ed04b92917/go.mod h1:pZqR+glSb11aJ+JQcczCvgf47+duRuzNSKqE8YAQnV0= +google.golang.org/genproto/googleapis/api v0.0.0-20240102182953-50ed04b92917 h1:rcS6EyEaoCO52hQDupoSfrxI3R6C2Tq741is7X8OvnM= +google.golang.org/genproto/googleapis/api v0.0.0-20240102182953-50ed04b92917/go.mod h1:CmlNWB9lSezaYELKS5Ym1r44VrrbPUa7JTvw+6MbpJ0= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240102182953-50ed04b92917 h1:6G8oQ016D88m1xAKljMlBOOGWDZkes4kMhgGFlf8WcQ= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240102182953-50ed04b92917/go.mod h1:xtjpI3tXFPP051KaWnhvxkiubL/6dJ18vLVf7q2pTOU= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= diff --git a/proto/go/message/thingspect_decoder_in.pb.go b/proto/go/message/thingspect_decoder_in.pb.go index 57cb0da3..9ea944ec 100644 --- a/proto/go/message/thingspect_decoder_in.pb.go +++ b/proto/go/message/thingspect_decoder_in.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: message/thingspect_decoder_in.proto diff --git a/proto/go/message/thingspect_eventer_out.pb.go b/proto/go/message/thingspect_eventer_out.pb.go index e10ea8d7..4f18a225 100644 --- a/proto/go/message/thingspect_eventer_out.pb.go +++ b/proto/go/message/thingspect_eventer_out.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: message/thingspect_eventer_out.proto diff --git a/proto/go/message/thingspect_validator_in.pb.go b/proto/go/message/thingspect_validator_in.pb.go index bd5e6ff0..59154d44 100644 --- a/proto/go/message/thingspect_validator_in.pb.go +++ b/proto/go/message/thingspect_validator_in.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: message/thingspect_validator_in.proto diff --git a/proto/go/message/thingspect_validator_out.pb.go b/proto/go/message/thingspect_validator_out.pb.go index 009b4ae2..ab43a8f9 100644 --- a/proto/go/message/thingspect_validator_out.pb.go +++ b/proto/go/message/thingspect_validator_out.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: message/thingspect_validator_out.proto diff --git a/proto/go/token/thingspect_page.pb.go b/proto/go/token/thingspect_page.pb.go index f1ac427c..71327749 100644 --- a/proto/go/token/thingspect_page.pb.go +++ b/proto/go/token/thingspect_page.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: token/thingspect_page.proto diff --git a/proto/go/token/thingspect_web.pb.go b/proto/go/token/thingspect_web.pb.go index 4aff933d..4f3240cd 100644 --- a/proto/go/token/thingspect_web.pb.go +++ b/proto/go/token/thingspect_web.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: token/thingspect_web.proto diff --git a/vendor/github.com/grpc-ecosystem/grpc-gateway/v2/runtime/errors.go b/vendor/github.com/grpc-ecosystem/grpc-gateway/v2/runtime/errors.go index d2bcbb7d..230cac7b 100644 --- a/vendor/github.com/grpc-ecosystem/grpc-gateway/v2/runtime/errors.go +++ b/vendor/github.com/grpc-ecosystem/grpc-gateway/v2/runtime/errors.go @@ -137,7 +137,7 @@ func DefaultHTTPErrorHandler(ctx context.Context, mux *ServeMux, marshaler Marsh doForwardTrailers := requestAcceptsTrailers(r) if doForwardTrailers { - handleForwardResponseTrailerHeader(w, md) + handleForwardResponseTrailerHeader(w, mux, md) w.Header().Set("Transfer-Encoding", "chunked") } @@ -152,7 +152,7 @@ func DefaultHTTPErrorHandler(ctx context.Context, mux *ServeMux, marshaler Marsh } if doForwardTrailers { - handleForwardResponseTrailer(w, md) + handleForwardResponseTrailer(w, mux, md) } } diff --git a/vendor/github.com/grpc-ecosystem/grpc-gateway/v2/runtime/handler.go b/vendor/github.com/grpc-ecosystem/grpc-gateway/v2/runtime/handler.go index 305b1458..5e14cf8b 100644 --- a/vendor/github.com/grpc-ecosystem/grpc-gateway/v2/runtime/handler.go +++ b/vendor/github.com/grpc-ecosystem/grpc-gateway/v2/runtime/handler.go @@ -3,7 +3,6 @@ package runtime import ( "context" "errors" - "fmt" "io" "net/http" "net/textproto" @@ -109,18 +108,20 @@ func handleForwardResponseServerMetadata(w http.ResponseWriter, mux *ServeMux, m } } -func handleForwardResponseTrailerHeader(w http.ResponseWriter, md ServerMetadata) { +func handleForwardResponseTrailerHeader(w http.ResponseWriter, mux *ServeMux, md ServerMetadata) { for k := range md.TrailerMD { - tKey := textproto.CanonicalMIMEHeaderKey(fmt.Sprintf("%s%s", MetadataTrailerPrefix, k)) - w.Header().Add("Trailer", tKey) + if h, ok := mux.outgoingTrailerMatcher(k); ok { + w.Header().Add("Trailer", textproto.CanonicalMIMEHeaderKey(h)) + } } } -func handleForwardResponseTrailer(w http.ResponseWriter, md ServerMetadata) { +func handleForwardResponseTrailer(w http.ResponseWriter, mux *ServeMux, md ServerMetadata) { for k, vs := range md.TrailerMD { - tKey := fmt.Sprintf("%s%s", MetadataTrailerPrefix, k) - for _, v := range vs { - w.Header().Add(tKey, v) + if h, ok := mux.outgoingTrailerMatcher(k); ok { + for _, v := range vs { + w.Header().Add(h, v) + } } } } @@ -148,12 +149,10 @@ func ForwardResponseMessage(ctx context.Context, mux *ServeMux, marshaler Marsha doForwardTrailers := requestAcceptsTrailers(req) if doForwardTrailers { - handleForwardResponseTrailerHeader(w, md) + handleForwardResponseTrailerHeader(w, mux, md) w.Header().Set("Transfer-Encoding", "chunked") } - handleForwardResponseTrailerHeader(w, md) - contentType := marshaler.ContentType(resp) w.Header().Set("Content-Type", contentType) @@ -179,7 +178,7 @@ func ForwardResponseMessage(ctx context.Context, mux *ServeMux, marshaler Marsha } if doForwardTrailers { - handleForwardResponseTrailer(w, md) + handleForwardResponseTrailer(w, mux, md) } } diff --git a/vendor/github.com/grpc-ecosystem/grpc-gateway/v2/runtime/mux.go b/vendor/github.com/grpc-ecosystem/grpc-gateway/v2/runtime/mux.go index f451cb44..628e1fde 100644 --- a/vendor/github.com/grpc-ecosystem/grpc-gateway/v2/runtime/mux.go +++ b/vendor/github.com/grpc-ecosystem/grpc-gateway/v2/runtime/mux.go @@ -57,6 +57,7 @@ type ServeMux struct { marshalers marshalerRegistry incomingHeaderMatcher HeaderMatcherFunc outgoingHeaderMatcher HeaderMatcherFunc + outgoingTrailerMatcher HeaderMatcherFunc metadataAnnotators []func(context.Context, *http.Request) metadata.MD errorHandler ErrorHandlerFunc streamErrorHandler StreamErrorHandlerFunc @@ -114,10 +115,18 @@ func DefaultHeaderMatcher(key string) (string, bool) { return "", false } +func defaultOutgoingHeaderMatcher(key string) (string, bool) { + return fmt.Sprintf("%s%s", MetadataHeaderPrefix, key), true +} + +func defaultOutgoingTrailerMatcher(key string) (string, bool) { + return fmt.Sprintf("%s%s", MetadataTrailerPrefix, key), true +} + // WithIncomingHeaderMatcher returns a ServeMuxOption representing a headerMatcher for incoming request to gateway. // // This matcher will be called with each header in http.Request. If matcher returns true, that header will be -// passed to gRPC context. To transform the header before passing to gRPC context, matcher should return modified header. +// passed to gRPC context. To transform the header before passing to gRPC context, matcher should return the modified header. func WithIncomingHeaderMatcher(fn HeaderMatcherFunc) ServeMuxOption { for _, header := range fn.matchedMalformedHeaders() { grpclog.Warningf("The configured forwarding filter would allow %q to be sent to the gRPC server, which will likely cause errors. See https://github.com/grpc/grpc-go/pull/4803#issuecomment-986093310 for more information.", header) @@ -147,13 +156,24 @@ func (fn HeaderMatcherFunc) matchedMalformedHeaders() []string { // // This matcher will be called with each header in response header metadata. If matcher returns true, that header will be // passed to http response returned from gateway. To transform the header before passing to response, -// matcher should return modified header. +// matcher should return the modified header. func WithOutgoingHeaderMatcher(fn HeaderMatcherFunc) ServeMuxOption { return func(mux *ServeMux) { mux.outgoingHeaderMatcher = fn } } +// WithOutgoingTrailerMatcher returns a ServeMuxOption representing a headerMatcher for outgoing response from gateway. +// +// This matcher will be called with each header in response trailer metadata. If matcher returns true, that header will be +// passed to http response returned from gateway. To transform the header before passing to response, +// matcher should return the modified header. +func WithOutgoingTrailerMatcher(fn HeaderMatcherFunc) ServeMuxOption { + return func(mux *ServeMux) { + mux.outgoingTrailerMatcher = fn + } +} + // WithMetadata returns a ServeMuxOption for passing metadata to a gRPC context. // // This can be used by services that need to read from http.Request and modify gRPC context. A common use case @@ -273,11 +293,11 @@ func NewServeMux(opts ...ServeMuxOption) *ServeMux { if serveMux.incomingHeaderMatcher == nil { serveMux.incomingHeaderMatcher = DefaultHeaderMatcher } - if serveMux.outgoingHeaderMatcher == nil { - serveMux.outgoingHeaderMatcher = func(key string) (string, bool) { - return fmt.Sprintf("%s%s", MetadataHeaderPrefix, key), true - } + serveMux.outgoingHeaderMatcher = defaultOutgoingHeaderMatcher + } + if serveMux.outgoingTrailerMatcher == nil { + serveMux.outgoingTrailerMatcher = defaultOutgoingTrailerMatcher } return serveMux diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_alert.pb.go b/vendor/github.com/thingspect/proto/go/api/thingspect_alert.pb.go index a2e8bd7f..40e4e51f 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_alert.pb.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_alert.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: api/thingspect_alert.proto diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_datapoint.pb.go b/vendor/github.com/thingspect/proto/go/api/thingspect_datapoint.pb.go index 948ccbae..a397ccd2 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_datapoint.pb.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_datapoint.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: api/thingspect_datapoint.proto diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_datapoint.pb.gw.go b/vendor/github.com/thingspect/proto/go/api/thingspect_datapoint.pb.gw.go index ff429fbe..2aa20157 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_datapoint.pb.gw.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_datapoint.pb.gw.go @@ -35,11 +35,7 @@ func request_DataPointService_PublishDataPoints_0(ctx context.Context, marshaler var protoReq PublishDataPointsRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -52,11 +48,7 @@ func local_request_DataPointService_PublishDataPoints_0(ctx context.Context, mar var protoReq PublishDataPointsRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_device.pb.go b/vendor/github.com/thingspect/proto/go/api/thingspect_device.pb.go index 3cba167d..3d5bc157 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_device.pb.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_device.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: api/thingspect_device.proto diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_device.pb.gw.go b/vendor/github.com/thingspect/proto/go/api/thingspect_device.pb.gw.go index ad449b09..376a8f9d 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_device.pb.gw.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_device.pb.gw.go @@ -35,11 +35,7 @@ func request_DeviceService_CreateDevice_0(ctx context.Context, marshaler runtime var protoReq CreateDeviceRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Device); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Device); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -52,11 +48,7 @@ func local_request_DeviceService_CreateDevice_0(ctx context.Context, marshaler r var protoReq CreateDeviceRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Device); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Device); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -69,11 +61,7 @@ func request_DeviceService_CreateDeviceLoRaWAN_0(ctx context.Context, marshaler var protoReq CreateDeviceLoRaWANRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -103,11 +91,7 @@ func local_request_DeviceService_CreateDeviceLoRaWAN_0(ctx context.Context, mars var protoReq CreateDeviceLoRaWANRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -186,18 +170,14 @@ func local_request_DeviceService_GetDevice_0(ctx context.Context, marshaler runt } var ( - filter_DeviceService_UpdateDevice_0 = &utilities.DoubleArray{Encoding: map[string]int{"device": 0, "id": 1}, Base: []int{1, 4, 5, 2, 0, 0, 0, 0}, Check: []int{0, 1, 1, 2, 4, 2, 2, 3}} + filter_DeviceService_UpdateDevice_0 = &utilities.DoubleArray{Encoding: map[string]int{"device": 0, "id": 1}, Base: []int{1, 2, 1, 0, 0}, Check: []int{0, 1, 2, 3, 2}} ) func request_DeviceService_UpdateDevice_0(ctx context.Context, marshaler runtime.Marshaler, client DeviceServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq UpdateDeviceRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Device); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Device); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -234,11 +214,7 @@ func local_request_DeviceService_UpdateDevice_0(ctx context.Context, marshaler r var protoReq UpdateDeviceRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Device); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Device); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -272,7 +248,7 @@ func local_request_DeviceService_UpdateDevice_0(ctx context.Context, marshaler r } var ( - filter_DeviceService_UpdateDevice_1 = &utilities.DoubleArray{Encoding: map[string]int{"device": 0, "id": 1}, Base: []int{1, 4, 5, 2, 0, 0, 0, 0}, Check: []int{0, 1, 1, 2, 4, 2, 2, 3}} + filter_DeviceService_UpdateDevice_1 = &utilities.DoubleArray{Encoding: map[string]int{"device": 0, "id": 1}, Base: []int{1, 2, 1, 0, 0}, Check: []int{0, 1, 2, 3, 2}} ) func request_DeviceService_UpdateDevice_1(ctx context.Context, marshaler runtime.Marshaler, client DeviceServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_event.pb.go b/vendor/github.com/thingspect/proto/go/api/thingspect_event.pb.go index 6324638c..8977e2a4 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_event.pb.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_event.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: api/thingspect_event.proto diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_org.pb.go b/vendor/github.com/thingspect/proto/go/api/thingspect_org.pb.go index bd13ad65..0a22dd9e 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_org.pb.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_org.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: api/thingspect_org.proto diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_org.pb.gw.go b/vendor/github.com/thingspect/proto/go/api/thingspect_org.pb.gw.go index 4db21fa2..e33c8542 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_org.pb.gw.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_org.pb.gw.go @@ -35,11 +35,7 @@ func request_OrgService_CreateOrg_0(ctx context.Context, marshaler runtime.Marsh var protoReq CreateOrgRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Org); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Org); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -52,11 +48,7 @@ func local_request_OrgService_CreateOrg_0(ctx context.Context, marshaler runtime var protoReq CreateOrgRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Org); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Org); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -118,18 +110,14 @@ func local_request_OrgService_GetOrg_0(ctx context.Context, marshaler runtime.Ma } var ( - filter_OrgService_UpdateOrg_0 = &utilities.DoubleArray{Encoding: map[string]int{"org": 0, "id": 1}, Base: []int{1, 4, 5, 2, 0, 0, 0, 0}, Check: []int{0, 1, 1, 2, 4, 2, 2, 3}} + filter_OrgService_UpdateOrg_0 = &utilities.DoubleArray{Encoding: map[string]int{"org": 0, "id": 1}, Base: []int{1, 2, 1, 0, 0}, Check: []int{0, 1, 2, 3, 2}} ) func request_OrgService_UpdateOrg_0(ctx context.Context, marshaler runtime.Marshaler, client OrgServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq UpdateOrgRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Org); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Org); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -166,11 +154,7 @@ func local_request_OrgService_UpdateOrg_0(ctx context.Context, marshaler runtime var protoReq UpdateOrgRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Org); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Org); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -204,7 +188,7 @@ func local_request_OrgService_UpdateOrg_0(ctx context.Context, marshaler runtime } var ( - filter_OrgService_UpdateOrg_1 = &utilities.DoubleArray{Encoding: map[string]int{"org": 0, "id": 1}, Base: []int{1, 4, 5, 2, 0, 0, 0, 0}, Check: []int{0, 1, 1, 2, 4, 2, 2, 3}} + filter_OrgService_UpdateOrg_1 = &utilities.DoubleArray{Encoding: map[string]int{"org": 0, "id": 1}, Base: []int{1, 2, 1, 0, 0}, Check: []int{0, 1, 2, 3, 2}} ) func request_OrgService_UpdateOrg_1(ctx context.Context, marshaler runtime.Marshaler, client OrgServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_role.pb.go b/vendor/github.com/thingspect/proto/go/api/thingspect_role.pb.go index b7bd1869..71e05c9d 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_role.pb.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_role.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: api/thingspect_role.proto diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_rule_alarm.pb.go b/vendor/github.com/thingspect/proto/go/api/thingspect_rule_alarm.pb.go index 0579ff73..ee8f28a4 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_rule_alarm.pb.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_rule_alarm.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: api/thingspect_rule_alarm.proto diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_rule_alarm.pb.gw.go b/vendor/github.com/thingspect/proto/go/api/thingspect_rule_alarm.pb.gw.go index 3ee78dcf..fc128633 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_rule_alarm.pb.gw.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_rule_alarm.pb.gw.go @@ -35,11 +35,7 @@ func request_RuleAlarmService_CreateRule_0(ctx context.Context, marshaler runtim var protoReq CreateRuleRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Rule); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Rule); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -52,11 +48,7 @@ func local_request_RuleAlarmService_CreateRule_0(ctx context.Context, marshaler var protoReq CreateRuleRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Rule); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Rule); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -69,11 +61,7 @@ func request_RuleAlarmService_CreateAlarm_0(ctx context.Context, marshaler runti var protoReq CreateAlarmRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Alarm); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Alarm); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -103,11 +91,7 @@ func local_request_RuleAlarmService_CreateAlarm_0(ctx context.Context, marshaler var protoReq CreateAlarmRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Alarm); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Alarm); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -258,18 +242,14 @@ func local_request_RuleAlarmService_GetAlarm_0(ctx context.Context, marshaler ru } var ( - filter_RuleAlarmService_UpdateRule_0 = &utilities.DoubleArray{Encoding: map[string]int{"rule": 0, "id": 1}, Base: []int{1, 4, 5, 2, 0, 0, 0, 0}, Check: []int{0, 1, 1, 2, 4, 2, 2, 3}} + filter_RuleAlarmService_UpdateRule_0 = &utilities.DoubleArray{Encoding: map[string]int{"rule": 0, "id": 1}, Base: []int{1, 2, 1, 0, 0}, Check: []int{0, 1, 2, 3, 2}} ) func request_RuleAlarmService_UpdateRule_0(ctx context.Context, marshaler runtime.Marshaler, client RuleAlarmServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq UpdateRuleRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Rule); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Rule); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -306,11 +286,7 @@ func local_request_RuleAlarmService_UpdateRule_0(ctx context.Context, marshaler var protoReq UpdateRuleRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Rule); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Rule); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -344,7 +320,7 @@ func local_request_RuleAlarmService_UpdateRule_0(ctx context.Context, marshaler } var ( - filter_RuleAlarmService_UpdateRule_1 = &utilities.DoubleArray{Encoding: map[string]int{"rule": 0, "id": 1}, Base: []int{1, 4, 5, 2, 0, 0, 0, 0}, Check: []int{0, 1, 1, 2, 4, 2, 2, 3}} + filter_RuleAlarmService_UpdateRule_1 = &utilities.DoubleArray{Encoding: map[string]int{"rule": 0, "id": 1}, Base: []int{1, 2, 1, 0, 0}, Check: []int{0, 1, 2, 3, 2}} ) func request_RuleAlarmService_UpdateRule_1(ctx context.Context, marshaler runtime.Marshaler, client RuleAlarmServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { @@ -444,18 +420,14 @@ func local_request_RuleAlarmService_UpdateRule_1(ctx context.Context, marshaler } var ( - filter_RuleAlarmService_UpdateAlarm_0 = &utilities.DoubleArray{Encoding: map[string]int{"alarm": 0, "rule_id": 1, "ruleID": 2, "id": 3}, Base: []int{1, 5, 1, 6, 7, 0, 3, 0, 0, 0, 0, 0}, Check: []int{0, 1, 2, 1, 1, 3, 2, 7, 2, 2, 4, 5}} + filter_RuleAlarmService_UpdateAlarm_0 = &utilities.DoubleArray{Encoding: map[string]int{"alarm": 0, "rule_id": 1, "id": 2}, Base: []int{1, 3, 1, 2, 0, 0, 0}, Check: []int{0, 1, 2, 2, 3, 4, 2}} ) func request_RuleAlarmService_UpdateAlarm_0(ctx context.Context, marshaler runtime.Marshaler, client RuleAlarmServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq UpdateAlarmRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Alarm); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Alarm); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -502,11 +474,7 @@ func local_request_RuleAlarmService_UpdateAlarm_0(ctx context.Context, marshaler var protoReq UpdateAlarmRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Alarm); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Alarm); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -550,7 +518,7 @@ func local_request_RuleAlarmService_UpdateAlarm_0(ctx context.Context, marshaler } var ( - filter_RuleAlarmService_UpdateAlarm_1 = &utilities.DoubleArray{Encoding: map[string]int{"alarm": 0, "rule_id": 1, "ruleID": 2, "id": 3}, Base: []int{1, 5, 1, 6, 7, 0, 3, 0, 0, 0, 0, 0}, Check: []int{0, 1, 2, 1, 1, 3, 2, 7, 2, 2, 4, 5}} + filter_RuleAlarmService_UpdateAlarm_1 = &utilities.DoubleArray{Encoding: map[string]int{"alarm": 0, "rule_id": 1, "id": 2}, Base: []int{1, 3, 1, 2, 0, 0, 0}, Check: []int{0, 1, 2, 2, 3, 4, 2}} ) func request_RuleAlarmService_UpdateAlarm_1(ctx context.Context, marshaler runtime.Marshaler, client RuleAlarmServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { @@ -830,7 +798,7 @@ func local_request_RuleAlarmService_ListRules_0(ctx context.Context, marshaler r } var ( - filter_RuleAlarmService_ListAlarms_0 = &utilities.DoubleArray{Encoding: map[string]int{"rule_id": 0, "ruleID": 1}, Base: []int{1, 1, 2, 0, 0}, Check: []int{0, 1, 1, 2, 3}} + filter_RuleAlarmService_ListAlarms_0 = &utilities.DoubleArray{Encoding: map[string]int{"rule_id": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} ) func request_RuleAlarmService_ListAlarms_0(ctx context.Context, marshaler runtime.Marshaler, client RuleAlarmServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { @@ -939,11 +907,7 @@ func request_RuleAlarmService_TestRule_0(ctx context.Context, marshaler runtime. var protoReq TestRuleRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -956,11 +920,7 @@ func local_request_RuleAlarmService_TestRule_0(ctx context.Context, marshaler ru var protoReq TestRuleRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -973,11 +933,7 @@ func request_RuleAlarmService_TestAlarm_0(ctx context.Context, marshaler runtime var protoReq TestAlarmRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -990,11 +946,7 @@ func local_request_RuleAlarmService_TestAlarm_0(ctx context.Context, marshaler r var protoReq TestAlarmRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_session.pb.go b/vendor/github.com/thingspect/proto/go/api/thingspect_session.pb.go index 9db1258e..2de53347 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_session.pb.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_session.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: api/thingspect_session.proto diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_session.pb.gw.go b/vendor/github.com/thingspect/proto/go/api/thingspect_session.pb.gw.go index 907abbb2..d23b1416 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_session.pb.gw.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_session.pb.gw.go @@ -35,11 +35,7 @@ func request_SessionService_Login_0(ctx context.Context, marshaler runtime.Marsh var protoReq LoginRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -52,11 +48,7 @@ func local_request_SessionService_Login_0(ctx context.Context, marshaler runtime var protoReq LoginRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -69,11 +61,7 @@ func request_SessionService_CreateKey_0(ctx context.Context, marshaler runtime.M var protoReq CreateKeyRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Key); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Key); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -86,11 +74,7 @@ func local_request_SessionService_CreateKey_0(ctx context.Context, marshaler run var protoReq CreateKeyRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.Key); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Key); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_status.pb.go b/vendor/github.com/thingspect/proto/go/api/thingspect_status.pb.go index 48d1f267..7a8ab284 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_status.pb.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_status.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: api/thingspect_status.proto diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_tag.pb.go b/vendor/github.com/thingspect/proto/go/api/thingspect_tag.pb.go index 1d4403bd..8bc1b2ad 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_tag.pb.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_tag.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: api/thingspect_tag.proto diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_user.pb.go b/vendor/github.com/thingspect/proto/go/api/thingspect_user.pb.go index 2f7d8b89..0d2b5acc 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_user.pb.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_user.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: api/thingspect_user.proto diff --git a/vendor/github.com/thingspect/proto/go/api/thingspect_user.pb.gw.go b/vendor/github.com/thingspect/proto/go/api/thingspect_user.pb.gw.go index aa86c06d..693e60b5 100644 --- a/vendor/github.com/thingspect/proto/go/api/thingspect_user.pb.gw.go +++ b/vendor/github.com/thingspect/proto/go/api/thingspect_user.pb.gw.go @@ -35,11 +35,7 @@ func request_UserService_CreateUser_0(ctx context.Context, marshaler runtime.Mar var protoReq CreateUserRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.User); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.User); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -52,11 +48,7 @@ func local_request_UserService_CreateUser_0(ctx context.Context, marshaler runti var protoReq CreateUserRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.User); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.User); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -118,18 +110,14 @@ func local_request_UserService_GetUser_0(ctx context.Context, marshaler runtime. } var ( - filter_UserService_UpdateUser_0 = &utilities.DoubleArray{Encoding: map[string]int{"user": 0, "id": 1}, Base: []int{1, 4, 5, 2, 0, 0, 0, 0}, Check: []int{0, 1, 1, 2, 4, 2, 2, 3}} + filter_UserService_UpdateUser_0 = &utilities.DoubleArray{Encoding: map[string]int{"user": 0, "id": 1}, Base: []int{1, 2, 1, 0, 0}, Check: []int{0, 1, 2, 3, 2}} ) func request_UserService_UpdateUser_0(ctx context.Context, marshaler runtime.Marshaler, client UserServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq UpdateUserRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.User); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.User); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -166,11 +154,7 @@ func local_request_UserService_UpdateUser_0(ctx context.Context, marshaler runti var protoReq UpdateUserRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq.User); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.User); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -204,7 +188,7 @@ func local_request_UserService_UpdateUser_0(ctx context.Context, marshaler runti } var ( - filter_UserService_UpdateUser_1 = &utilities.DoubleArray{Encoding: map[string]int{"user": 0, "id": 1}, Base: []int{1, 4, 5, 2, 0, 0, 0, 0}, Check: []int{0, 1, 1, 2, 4, 2, 2, 3}} + filter_UserService_UpdateUser_1 = &utilities.DoubleArray{Encoding: map[string]int{"user": 0, "id": 1}, Base: []int{1, 2, 1, 0, 0}, Check: []int{0, 1, 2, 3, 2}} ) func request_UserService_UpdateUser_1(ctx context.Context, marshaler runtime.Marshaler, client UserServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { @@ -307,11 +291,7 @@ func request_UserService_UpdateUserPassword_0(ctx context.Context, marshaler run var protoReq UpdateUserPasswordRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } @@ -341,11 +321,7 @@ func local_request_UserService_UpdateUserPassword_0(ctx context.Context, marshal var protoReq UpdateUserPasswordRequest var metadata runtime.ServerMetadata - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } diff --git a/vendor/github.com/thingspect/proto/go/common/thingspect_datapoint.pb.go b/vendor/github.com/thingspect/proto/go/common/thingspect_datapoint.pb.go index 554d8045..f5ee9523 100644 --- a/vendor/github.com/thingspect/proto/go/common/thingspect_datapoint.pb.go +++ b/vendor/github.com/thingspect/proto/go/common/thingspect_datapoint.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: common/thingspect_datapoint.proto diff --git a/vendor/github.com/thingspect/proto/go/mqtt/thingspect_payload.pb.go b/vendor/github.com/thingspect/proto/go/mqtt/thingspect_payload.pb.go index ed5fb133..933589ee 100644 --- a/vendor/github.com/thingspect/proto/go/mqtt/thingspect_payload.pb.go +++ b/vendor/github.com/thingspect/proto/go/mqtt/thingspect_payload.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0 +// protoc-gen-go v1.32.0 // protoc v4.24.4 // source: mqtt/thingspect_payload.proto diff --git a/vendor/modules.txt b/vendor/modules.txt index 05c90bab..31356215 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -60,7 +60,7 @@ github.com/gorilla/websocket # github.com/gregdel/pushover v1.3.0 ## explicit; go 1.14 github.com/gregdel/pushover -# github.com/grpc-ecosystem/grpc-gateway/v2 v2.18.1 +# github.com/grpc-ecosystem/grpc-gateway/v2 v2.19.0 ## explicit; go 1.19 github.com/grpc-ecosystem/grpc-gateway/v2/internal/httprule github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options @@ -122,7 +122,7 @@ github.com/smira/go-statsd ## explicit; go 1.20 github.com/stretchr/testify/assert github.com/stretchr/testify/require -# github.com/thingspect/proto/go v1.1.0 +# github.com/thingspect/proto/go v1.1.1 ## explicit; go 1.21.5 github.com/thingspect/proto/go/api github.com/thingspect/proto/go/common @@ -167,15 +167,15 @@ golang.org/x/text/transform golang.org/x/text/unicode/bidi golang.org/x/text/unicode/norm golang.org/x/text/width -# google.golang.org/genproto v0.0.0-20231212172506-995d672761c0 +# google.golang.org/genproto v0.0.0-20240102182953-50ed04b92917 ## explicit; go 1.19 google.golang.org/genproto/internal -# google.golang.org/genproto/googleapis/api v0.0.0-20231212172506-995d672761c0 +# google.golang.org/genproto/googleapis/api v0.0.0-20240102182953-50ed04b92917 ## explicit; go 1.19 google.golang.org/genproto/googleapis/api google.golang.org/genproto/googleapis/api/annotations google.golang.org/genproto/googleapis/api/httpbody -# google.golang.org/genproto/googleapis/rpc v0.0.0-20231212172506-995d672761c0 +# google.golang.org/genproto/googleapis/rpc v0.0.0-20240102182953-50ed04b92917 ## explicit; go 1.19 google.golang.org/genproto/googleapis/rpc/status # google.golang.org/grpc v1.60.1 diff --git a/web/atlas.swagger.json b/web/atlas.swagger.json index ddd87d39..1c1cea62 100644 --- a/web/atlas.swagger.json +++ b/web/atlas.swagger.json @@ -3,7 +3,7 @@ "info": { "title": "Atlas", "description": "Getting started with the Atlas API:\n- Log in with `/v1/sessions/login` using your provided credentials. Click `Authorize` below and enter the returned token.\n- (Optional) Create an `BUILDER` role API key with `/v1/sessions/keys`. Re-authorize using the returned token.\n\nPublish and verify data points:\n- Create a device with `/v1/devices`. Include a notable `tag` for future use.\n- Publish data with `/v1/datapoints`. The `attr` and `val` fields can be arbitrarily chosen.\n- Inspect the received data with `/v1/datapoints/latest` using the device's `uniqID`.\n\nPublish data points and receive alerts:\n- Update your user with `/v1/users/{user.id}` to include a notable `tag`.\n- Create a rule with `/v1/rules`. The `deviceTag` field should match a tag of the device. The `expr` field can be simply `true`.\n- Create an alarm with `/v1/rules/{alarm.ruleID}/alarms`. The `type` field should match data that is available in the user's fields, such as `EMAIL`. The `userTags` field should include a tag of the user.\n- Publish data for the device, as done in the previous section. The `attr` field should match the `attr` of the rule.\n- Verify the alert is received by the user on the configured `type` method.\n- Inspect the created event with `/v1/events` using the device's `uniqID`.\n- Inspect the created alert with `/v1/alerts` using the device's `uniqID`.", - "version": "1.1.0", + "version": "1.1.1", "contact": { "name": "Thingspect", "url": "http://www.thingspect.com/", @@ -672,18 +672,7 @@ "in": "body", "required": true, "schema": { - "type": "object", - "properties": { - "gatewayLoRaWANType": { - "$ref": "#/definitions/GatewayLoRaWANType", - "description": "Gateway LoRaWAN configuration type." - }, - "deviceLoRaWANType": { - "$ref": "#/definitions/DeviceLoRaWANType", - "description": "Device LoRaWAN configuration type." - } - }, - "description": "CreateDeviceLoRaWANRequest is sent to add LoRaWAN configuration to a device." + "$ref": "#/definitions/CreateDeviceLoRaWANBody" } } ], @@ -2305,17 +2294,7 @@ "in": "body", "required": true, "schema": { - "type": "object", - "properties": { - "password": { - "type": "string", - "description": "User password to update." - } - }, - "description": "UpdateUserPasswordRequest is sent to update a user's password.", - "required": [ - "password" - ] + "$ref": "#/definitions/UpdateUserPasswordBody" } } ], @@ -2649,6 +2628,20 @@ }, "additionalProperties": {} }, + "CreateDeviceLoRaWANBody": { + "type": "object", + "properties": { + "gatewayLoRaWANType": { + "$ref": "#/definitions/GatewayLoRaWANType", + "description": "Gateway LoRaWAN configuration type." + }, + "deviceLoRaWANType": { + "$ref": "#/definitions/DeviceLoRaWANType", + "description": "Device LoRaWAN configuration type." + } + }, + "description": "CreateDeviceLoRaWANRequest is sent to add LoRaWAN configuration to a device." + }, "CreateKeyResponse": { "type": "object", "properties": { @@ -3305,6 +3298,19 @@ }, "description": "TestRuleResponse is sent in response to a rule test." }, + "UpdateUserPasswordBody": { + "type": "object", + "properties": { + "password": { + "type": "string", + "description": "User password to update." + } + }, + "description": "UpdateUserPasswordRequest is sent to update a user's password.", + "required": [ + "password" + ] + }, "User": { "type": "object", "properties": {