@@ -5,15 +5,13 @@ import (
5
5
"sort"
6
6
"unsafe"
7
7
8
- jsoniter "github.com/json-iterator/go"
9
-
10
8
"github.com/grafana/grafana-plugin-sdk-go/data"
11
- sdkjsoniter "github.com/grafana/grafana-plugin-sdk-go/data/utils/jsoniter "
9
+ jsoniter "github.com/json-iterator/go "
12
10
)
13
11
14
12
func init () { //nolint:gochecknoinits
15
- sdkjsoniter .RegisterTypeEncoder ("backend.DataResponse" , & dataResponseCodec {})
16
- sdkjsoniter .RegisterTypeEncoder ("backend.QueryDataResponse" , & queryDataResponseCodec {})
13
+ jsoniter .RegisterTypeEncoder ("backend.DataResponse" , & dataResponseCodec {})
14
+ jsoniter .RegisterTypeEncoder ("backend.QueryDataResponse" , & queryDataResponseCodec {})
17
15
}
18
16
19
17
type dataResponseCodec struct {}
@@ -23,7 +21,7 @@ func (codec *dataResponseCodec) IsEmpty(ptr unsafe.Pointer) bool {
23
21
return dr .Error == nil && dr .Frames == nil
24
22
}
25
23
26
- func (codec * dataResponseCodec ) Encode (ptr unsafe.Pointer , stream * sdkjsoniter .Stream ) {
24
+ func (codec * dataResponseCodec ) Encode (ptr unsafe.Pointer , stream * jsoniter .Stream ) {
27
25
dr := (* DataResponse )(ptr )
28
26
writeDataResponseJSON (dr , stream )
29
27
}
@@ -35,22 +33,22 @@ func (codec *queryDataResponseCodec) IsEmpty(ptr unsafe.Pointer) bool {
35
33
return qdr .Responses == nil
36
34
}
37
35
38
- func (codec * queryDataResponseCodec ) Encode (ptr unsafe.Pointer , stream * sdkjsoniter .Stream ) {
36
+ func (codec * queryDataResponseCodec ) Encode (ptr unsafe.Pointer , stream * jsoniter .Stream ) {
39
37
qdr := (* QueryDataResponse )(ptr )
40
38
writeQueryDataResponseJSON (qdr , stream )
41
39
}
42
40
43
41
func (codec * queryDataResponseCodec ) Decode (ptr unsafe.Pointer , iter * jsoniter.Iterator ) {
44
42
qdr := QueryDataResponse {}
45
- readQueryDataResultsJSON (& qdr , sdkjsoniter . NewIterator ( iter ) )
43
+ readQueryDataResultsJSON (& qdr , iter )
46
44
* ((* QueryDataResponse )(ptr )) = qdr
47
45
}
48
46
49
- // -----------------------------------------------------------------
47
+ //-----------------------------------------------------------------
50
48
// Private stream readers
51
- // -----------------------------------------------------------------
49
+ //-----------------------------------------------------------------
52
50
53
- func writeDataResponseJSON (dr * DataResponse , stream * sdkjsoniter .Stream ) {
51
+ func writeDataResponseJSON (dr * DataResponse , stream * jsoniter .Stream ) {
54
52
stream .WriteObjectStart ()
55
53
started := false
56
54
@@ -104,7 +102,7 @@ func writeDataResponseJSON(dr *DataResponse, stream *sdkjsoniter.Stream) {
104
102
stream .WriteObjectEnd ()
105
103
}
106
104
107
- func writeQueryDataResponseJSON (qdr * QueryDataResponse , stream * sdkjsoniter .Stream ) {
105
+ func writeQueryDataResponseJSON (qdr * QueryDataResponse , stream * jsoniter .Stream ) {
108
106
stream .WriteObjectStart ()
109
107
stream .WriteObjectField ("results" )
110
108
stream .WriteObjectStart ()
@@ -133,63 +131,61 @@ func writeQueryDataResponseJSON(qdr *QueryDataResponse, stream *sdkjsoniter.Stre
133
131
stream .WriteObjectEnd ()
134
132
}
135
133
136
- // -----------------------------------------------------------------
134
+ //-----------------------------------------------------------------
137
135
// Private stream readers
138
- // -----------------------------------------------------------------
136
+ //-----------------------------------------------------------------
139
137
140
- func readQueryDataResultsJSON (qdr * QueryDataResponse , iter * sdkjsoniter .Iterator ) {
138
+ func readQueryDataResultsJSON (qdr * QueryDataResponse , iter * jsoniter .Iterator ) {
141
139
found := false
142
140
143
- for l1Field , _ := iter .ReadObject (); l1Field != "" ; l1Field , _ = iter .ReadObject () {
141
+ for l1Field := iter .ReadObject (); l1Field != "" ; l1Field = iter .ReadObject () {
144
142
switch l1Field {
145
143
case "results" :
146
144
if found {
147
- _ = iter .ReportError ("read results" , "already found results" )
145
+ iter .ReportError ("read results" , "already found results" )
148
146
return
149
147
}
150
148
found = true
151
149
152
150
qdr .Responses = make (Responses )
153
151
154
- for l2Field , _ := iter .ReadObject (); l2Field != "" ; l2Field , _ = iter .ReadObject () {
152
+ for l2Field := iter .ReadObject (); l2Field != "" ; l2Field = iter .ReadObject () {
155
153
dr := DataResponse {}
156
154
readDataResponseJSON (& dr , iter )
157
155
qdr .Responses [l2Field ] = dr
158
156
}
159
157
160
158
default :
161
- _ = iter .ReportError ("bind l1" , "unexpected field: " + l1Field )
159
+ iter .ReportError ("bind l1" , "unexpected field: " + l1Field )
162
160
return
163
161
}
164
162
}
165
163
}
166
164
167
- func readDataResponseJSON (rsp * DataResponse , iter * sdkjsoniter .Iterator ) {
168
- for l2Field , _ := iter .ReadObject (); l2Field != "" ; l2Field , _ = iter .ReadObject () {
165
+ func readDataResponseJSON (rsp * DataResponse , iter * jsoniter .Iterator ) {
166
+ for l2Field := iter .ReadObject (); l2Field != "" ; l2Field = iter .ReadObject () {
169
167
switch l2Field {
170
168
case "error" :
171
169
rsp .Error = fmt .Errorf (iter .ReadString ())
172
170
173
171
case "status" :
174
- s , _ := iter .ReadInt32 ()
175
- rsp .Status = Status (s )
172
+ rsp .Status = Status (iter .ReadInt32 ())
176
173
177
174
case "errorSource" :
178
- src , _ := iter .ReadString ()
179
- rsp .ErrorSource = ErrorSource (src )
175
+ rsp .ErrorSource = ErrorSource (iter .ReadString ())
180
176
181
177
case "frames" :
182
- for iter .CanReadArray () {
178
+ for iter .ReadArray () {
183
179
frame := & data.Frame {}
184
- err := iter .ReadVal (frame )
185
- if err != nil {
180
+ iter .ReadVal (frame )
181
+ if iter . Error != nil {
186
182
return
187
183
}
188
184
rsp .Frames = append (rsp .Frames , frame )
189
185
}
190
186
191
187
default :
192
- _ = iter .ReportError ("bind l2" , "unexpected field: " + l2Field )
188
+ iter .ReportError ("bind l2" , "unexpected field: " + l2Field )
193
189
return
194
190
}
195
191
}
0 commit comments