@@ -201,6 +201,7 @@ public void encodeWithTracker(FieldCodec.SerializeContext context, @Nullable Dat
201201 private void doEncodeFieldWithTracker (FieldCodec .SerializeContext context , ByteBuf output , DataField dataField ) {
202202 final CodecTracker codecTracker = Objects .requireNonNull (context .codecTracker ());
203203 final int indexBeforeWrite = output .writerIndex ();
204+ final String name = codecTracker .getFieldName (dataField .name ());
204205 switch (dataField ) {
205206 case DataField .I8 i8 -> output .writeByte (i8 .value ());
206207 case DataField .U8 u8 -> output .writeByte (u8 .value ());
@@ -221,14 +222,14 @@ private void doEncodeFieldWithTracker(FieldCodec.SerializeContext context, ByteB
221222 case DataField .Struct struct -> {
222223 final List <DataField > value = struct .value ();
223224 final DefaultSerializeContext newContext = new DefaultSerializeContext (context , value );
224- final NestedFieldSpan nestedFieldSpan = codecTracker .startNewNestedFieldSpan (dataField . name () , "" , dataField .type (), this .getClass ().getSimpleName ());
225+ final NestedFieldSpan nestedFieldSpan = codecTracker .startNewNestedFieldSpan (name , "" , dataField .type (), this .getClass ().getSimpleName ());
225226 this .encodeWithTracker (newContext , value , output );
226227 nestedFieldSpan .setHexString (FormatUtils .toHexString (output , indexBeforeWrite , output .writerIndex () - indexBeforeWrite ));
227228 codecTracker .finishCurrentSpan ();
228229 }
229230 case DataField .Sequence sequence -> {
230231 final List <DataField > value = sequence .value ();
231- final CollectionFieldSpan collectionFieldSpan = codecTracker .startNewCollectionFieldSpanForSimpleField (dataField . name () );
232+ final CollectionFieldSpan collectionFieldSpan = codecTracker .startNewCollectionFieldSpanForSimpleField (name );
232233 final int parentIndexBeforeWrite = output .writerIndex ();
233234 final DefaultSerializeContext newContext = new DefaultSerializeContext (context , value );
234235 this .encodeWithTracker (newContext , value , output );
@@ -259,7 +260,7 @@ private void doEncodeFieldWithTracker(FieldCodec.SerializeContext context, ByteB
259260 // 3. valueLength
260261 final int valueLength = temp .writerIndex ();
261262 codecTracker .updateTrackerHints (MapEntryItemSpan .Type .VALUE_LENGTH );
262- simpleMap .valueLengthType ().writeToWithTracker (output , valueLength , codecTracker );
263+ simpleMap .valueLengthType ().writeToWithTracker (output , valueLength , codecTracker , "valueLength" );
263264 output .writeBytes (temp );
264265 mapEntrySpan .setHexString (FormatUtils .toHexString (output , writerIndex , output .writerIndex () - writerIndex ));
265266 codecTracker .finishCurrentSpan ();
@@ -275,7 +276,7 @@ private void doEncodeFieldWithTracker(FieldCodec.SerializeContext context, ByteB
275276 }
276277 case DataField .TlvDataField tlvDataField -> {
277278 final DefaultSerializeContext newContext = new DefaultSerializeContext (context , tlvDataField );
278- final NestedFieldSpan nestedFieldSpan = codecTracker .startNewNestedFieldSpan (dataField . name () , "" , dataField .type (), this .getClass ().getSimpleName ());
279+ final NestedFieldSpan nestedFieldSpan = codecTracker .startNewNestedFieldSpan (name , "" , dataField .type (), this .getClass ().getSimpleName ());
279280 // 1. tag
280281 final DataField .DictKey tag = tlvDataField .tag ();
281282 this .doEncodeFieldWithTracker (newContext , output , tag );
@@ -288,7 +289,7 @@ private void doEncodeFieldWithTracker(FieldCodec.SerializeContext context, ByteB
288289
289290 // 3. length
290291 final int valueLength = temp .writerIndex ();
291- tlvDataField .length ().writeToWithTracker (output , valueLength , codecTracker );
292+ tlvDataField .length ().writeToWithTracker (output , valueLength , codecTracker , "valueLength" );
292293 output .writeBytes (temp );
293294
294295 nestedFieldSpan .setHexString (FormatUtils .toHexString (output , indexBeforeWrite , output .writerIndex () - indexBeforeWrite ));
@@ -304,7 +305,7 @@ private void doEncodeFieldWithTracker(FieldCodec.SerializeContext context, ByteB
304305 && !(dataField instanceof DataField .Sequence )
305306 && !(dataField instanceof DataField .SimpleTlvDataField <?>)) {
306307 final String hexString = FormatUtils .toHexString (output , indexBeforeWrite , output .writerIndex () - indexBeforeWrite );
307- codecTracker .addFieldSpan (codecTracker .getCurrentSpan (), dataField . name () , dataField .value (), hexString , this .getClass ().getSimpleName (), dataField .getClass ().getSimpleName ());
308+ codecTracker .addFieldSpan (codecTracker .getCurrentSpan (), name , dataField .value (), hexString , this .getClass ().getSimpleName (), dataField .getClass ().getSimpleName ());
308309 }
309310 }
310311
0 commit comments