@@ -195,21 +195,29 @@ func doInspectBlock(inspectBlock string) error {
195
195
return fmt .Errorf ("ConfigEnvelope contained no config" )
196
196
}
197
197
198
- configResult , err := configtx . NewConfigResult (configEnvelope .Config .ChannelGroup , configtx . NewInitializer () )
198
+ configAsJSON , err := configGroupAsJSON (configEnvelope .Config .ChannelGroup )
199
199
if err != nil {
200
- return fmt .Errorf ("Error parsing configuration: %s" , err )
200
+ return err
201
+ }
202
+
203
+ fmt .Printf ("Config for channel: %s at sequence %d\n " , header .ChannelId , configEnvelope .Config .Sequence )
204
+ fmt .Println (configAsJSON )
205
+
206
+ return nil
207
+ }
208
+
209
+ func configGroupAsJSON (group * cb.ConfigGroup ) (string , error ) {
210
+ configResult , err := configtx .NewConfigResult (group , configtx .NewInitializer ())
211
+ if err != nil {
212
+ return "" , fmt .Errorf ("Error parsing config: %s" , err )
201
213
}
202
214
203
215
buffer := & bytes.Buffer {}
204
216
err = json .Indent (buffer , []byte (configResult .JSON ()), "" , " " )
205
217
if err != nil {
206
- return fmt .Errorf ("Error in output JSON (usually a programming bug): %s" , err )
218
+ return "" , fmt .Errorf ("Error in output JSON (usually a programming bug): %s" , err )
207
219
}
208
-
209
- fmt .Printf ("Config for channel: %s at sequence %d\n " , header .ChannelId , configEnvelope .Config .Sequence )
210
-
211
- fmt .Println (buffer .String ())
212
- return nil
220
+ return buffer .String (), nil
213
221
}
214
222
215
223
func doInspectChannelCreateTx (inspectChannelCreateTx string ) error {
@@ -253,21 +261,48 @@ func doInspectChannelCreateTx(inspectChannelCreateTx string) error {
253
261
return fmt .Errorf ("ConfigUpdateEnvelope was for different channel than envelope: %s vs %s" , configUpdate .ChannelId , header .ChannelId )
254
262
}
255
263
264
+ fmt .Printf ("\n Channel creation for channel: %s\n " , header .ChannelId )
265
+ fmt .Println ()
266
+
267
+ if configUpdate .ReadSet == nil {
268
+ fmt .Println ("Read Set: empty" )
269
+ } else {
270
+ fmt .Println ("Read Set:" )
271
+ readSetAsJSON , err := configGroupAsJSON (configUpdate .ReadSet )
272
+ if err != nil {
273
+ return err
274
+ }
275
+ fmt .Println (readSetAsJSON )
276
+ }
277
+ fmt .Println ()
278
+
256
279
if configUpdate .WriteSet == nil {
257
280
return fmt .Errorf ("Empty WriteSet" )
258
281
}
259
282
260
- if configUpdate .WriteSet .Groups [config .ApplicationGroupKey ] == nil {
261
- return fmt .Errorf ("Empty Application group" )
283
+ fmt .Println ("Write Set:" )
284
+ writeSetAsJSON , err := configGroupAsJSON (configUpdate .WriteSet )
285
+ if err != nil {
286
+ return err
262
287
}
288
+ fmt .Println (writeSetAsJSON )
289
+ fmt .Println ()
263
290
264
- var orgs []string
265
-
266
- for name := range configUpdate .WriteSet .Groups [config .ApplicationGroupKey ].Groups {
267
- orgs = append (orgs , name )
291
+ readSetMap , err := configtx .MapConfig (configUpdate .ReadSet )
292
+ if err != nil {
293
+ return fmt .Errorf ("Error mapping read set: %s" , err )
294
+ }
295
+ writeSetMap , err := configtx .MapConfig (configUpdate .WriteSet )
296
+ if err != nil {
297
+ return fmt .Errorf ("Error mapping write set: %s" , err )
268
298
}
269
299
270
- fmt .Printf ("\n Channel creation for channel: %s with orgs %v\n \n " , header .ChannelId , orgs )
300
+ fmt .Println ("Delta Set:" )
301
+ deltaSet := configtx .ComputeDeltaSet (readSetMap , writeSetMap )
302
+ for key := range deltaSet {
303
+ fmt .Println (key )
304
+ }
305
+ fmt .Println ()
271
306
272
307
return nil
273
308
}
0 commit comments