@@ -199,28 +199,6 @@ func (j *AttributeType) MarshalJSON() ([]byte, error) {
199199 return json .Marshal (j .Value )
200200}
201201
202- // UnmarshalJSON implements json.Unmarshaler.
203- func (j * AttributeType ) UnmarshalJSON (b []byte ) error {
204- var v struct {
205- Value any
206- }
207- if err := json .Unmarshal (b , & v .Value ); err != nil {
208- return err
209- }
210- var ok bool
211- for _ , expected := range enumValuesAttributeType {
212- if reflect .DeepEqual (v .Value , expected ) {
213- ok = true
214- break
215- }
216- }
217- if ! ok {
218- return fmt .Errorf ("invalid value (expected one of %#v): %#v" , enumValuesAttributeType , v .Value )
219- }
220- * j = AttributeType (v )
221- return nil
222- }
223-
224202// UnmarshalJSON implements json.Unmarshaler.
225203func (j * TextMapPropagator ) UnmarshalJSON (b []byte ) error {
226204 type Plain TextMapPropagator
@@ -340,81 +318,11 @@ func (j *BatchSpanProcessor) UnmarshalJSON(b []byte) error {
340318 return nil
341319}
342320
343- // UnmarshalJSON implements json.Unmarshaler.
344- func (j * ExperimentalPeerInstrumentationServiceMappingElem ) UnmarshalJSON (b []byte ) error {
345- var raw map [string ]any
346- if err := json .Unmarshal (b , & raw ); err != nil {
347- return err
348- }
349- if _ , ok := raw ["peer" ]; raw != nil && ! ok {
350- return errors .New ("field peer in ExperimentalPeerInstrumentationServiceMappingElem: required" )
351- }
352- if _ , ok := raw ["service" ]; raw != nil && ! ok {
353- return errors .New ("field service in ExperimentalPeerInstrumentationServiceMappingElem: required" )
354- }
355- type Plain ExperimentalPeerInstrumentationServiceMappingElem
356- var plain Plain
357- if err := json .Unmarshal (b , & plain ); err != nil {
358- return err
359- }
360- * j = ExperimentalPeerInstrumentationServiceMappingElem (plain )
361- return nil
362- }
363-
364- // UnmarshalJSON implements json.Unmarshaler.
365- func (j * NameStringValuePair ) UnmarshalJSON (b []byte ) error {
366- var raw map [string ]any
367- if err := json .Unmarshal (b , & raw ); err != nil {
368- return err
369- }
370-
371- name , err := validateStringField (raw , "name" )
372- if err != nil {
373- return err
374- }
375-
376- value , err := validateStringField (raw , "value" )
377- if err != nil {
378- return err
379- }
380-
381- * j = NameStringValuePair {
382- Name : name ,
383- Value : & value ,
384- }
385- return nil
386- }
387-
388- var enumValuesOTLPMetricDefaultHistogramAggregation = []any {
389- "explicit_bucket_histogram" ,
390- "base2_exponential_bucket_histogram" ,
391- }
392-
393- // UnmarshalJSON implements json.Unmarshaler.
394- func (j * ExporterDefaultHistogramAggregation ) UnmarshalJSON (b []byte ) error {
395- var v string
396- if err := json .Unmarshal (b , & v ); err != nil {
397- return err
398- }
399- var ok bool
400- for _ , expected := range enumValuesOTLPMetricDefaultHistogramAggregation {
401- if reflect .DeepEqual (v , expected ) {
402- ok = true
403- break
404- }
405- }
406- if ! ok {
407- return fmt .Errorf ("invalid value (expected one of %#v): %#v" , enumValuesOTLPMetricDefaultHistogramAggregation , v )
408- }
409- * j = ExporterDefaultHistogramAggregation (v )
410- return nil
411- }
412-
413321// UnmarshalJSON implements json.Unmarshaler.
414322func (j * OpenTelemetryConfiguration ) UnmarshalJSON (b []byte ) error {
415323 var raw map [string ]any
416324 if err := json .Unmarshal (b , & raw ); err != nil {
417- return err
325+ return errors . Join ( newErrUnmarshal ( j ), err )
418326 }
419327 if _ , ok := raw ["file_format" ]; raw != nil && ! ok {
420328 return errors .New ("field file_format in OpenTelemetryConfiguration: required" )
@@ -425,96 +333,96 @@ func (j *OpenTelemetryConfiguration) UnmarshalJSON(b []byte) error {
425333 if v , ok := raw ["logger_provider" ]; ok && v != nil {
426334 marshaled , err := json .Marshal (v )
427335 if err != nil {
428- return err
336+ return errors . Join ( newErrUnmarshal ( j ), err )
429337 }
430338 var lp LoggerProviderJson
431339 if err := json .Unmarshal (marshaled , & lp ); err != nil {
432- return err
340+ return errors . Join ( newErrUnmarshal ( j ), err )
433341 }
434342 plain .LoggerProvider = & lp
435343 }
436344
437345 if v , ok := raw ["meter_provider" ]; ok && v != nil {
438346 marshaled , err := json .Marshal (v )
439347 if err != nil {
440- return err
348+ return errors . Join ( newErrUnmarshal ( j ), err )
441349 }
442350
443351 var mp MeterProviderJson
444352 if err := json .Unmarshal (marshaled , & mp ); err != nil {
445- return err
353+ return errors . Join ( newErrUnmarshal ( j ), err )
446354 }
447355 plain .MeterProvider = & mp
448356 }
449357
450358 if v , ok := raw ["tracer_provider" ]; ok && v != nil {
451359 marshaled , err := json .Marshal (v )
452360 if err != nil {
453- return err
361+ return errors . Join ( newErrUnmarshal ( j ), err )
454362 }
455363
456364 var tp TracerProviderJson
457365 if err := json .Unmarshal (marshaled , & tp ); err != nil {
458- return err
366+ return errors . Join ( newErrUnmarshal ( j ), err )
459367 }
460368 plain .TracerProvider = & tp
461369 }
462370
463371 if v , ok := raw ["propagator" ]; ok && v != nil {
464372 marshaled , err := json .Marshal (v )
465373 if err != nil {
466- return err
374+ return errors . Join ( newErrUnmarshal ( j ), err )
467375 }
468376
469377 var p PropagatorJson
470378 if err := json .Unmarshal (marshaled , & p ); err != nil {
471- return err
379+ return errors . Join ( newErrUnmarshal ( j ), err )
472380 }
473381 plain .Propagator = & p
474382 }
475383
476384 if v , ok := raw ["resource" ]; ok && v != nil {
477385 marshaled , err := json .Marshal (v )
478386 if err != nil {
479- return err
387+ return errors . Join ( newErrUnmarshal ( j ), err )
480388 }
481389
482390 var r ResourceJson
483391 if err := json .Unmarshal (marshaled , & r ); err != nil {
484- return err
392+ return errors . Join ( newErrUnmarshal ( j ), err )
485393 }
486394 plain .Resource = & r
487395 }
488396
489397 if v , ok := raw ["instrumentation/development" ]; ok && v != nil {
490398 marshaled , err := json .Marshal (v )
491399 if err != nil {
492- return err
400+ return errors . Join ( newErrUnmarshal ( j ), err )
493401 }
494402
495403 var i InstrumentationJson
496404 if err := json .Unmarshal (marshaled , & i ); err != nil {
497- return err
405+ return errors . Join ( newErrUnmarshal ( j ), err )
498406 }
499407 plain .InstrumentationDevelopment = & i
500408 }
501409
502410 if v , ok := raw ["attribute_limits" ]; ok && v != nil {
503411 marshaled , err := json .Marshal (v )
504412 if err != nil {
505- return err
413+ return errors . Join ( newErrUnmarshal ( j ), err )
506414 }
507415
508416 var a AttributeLimits
509417 if err := json .Unmarshal (marshaled , & a ); err != nil {
510- return err
418+ return errors . Join ( newErrUnmarshal ( j ), err )
511419 }
512420 plain .AttributeLimits = & a
513421 }
514422
515423 plainConfig := (* OpenTelemetryConfiguration )(& plain )
516424 if err := setConfigDefaults (raw , plainConfig , jsonCodec {}); err != nil {
517- return err
425+ return errors . Join ( newErrUnmarshal ( j ), err )
518426 }
519427
520428 plain .FileFormat = fmt .Sprintf ("%v" , raw ["file_format" ])
@@ -563,24 +471,6 @@ func (j *CardinalityLimits) UnmarshalJSON(value []byte) error {
563471 return nil
564472}
565473
566- // UnmarshalJSON implements json.Unmarshaler.
567- func (j * PullMetricReader ) UnmarshalJSON (b []byte ) error {
568- var raw map [string ]any
569- if err := json .Unmarshal (b , & raw ); err != nil {
570- return err
571- }
572- if _ , ok := raw ["exporter" ]; raw != nil && ! ok {
573- return errors .New ("field exporter in PullMetricReader: required" )
574- }
575- type Plain PullMetricReader
576- var plain Plain
577- if err := json .Unmarshal (b , & plain ); err != nil {
578- return err
579- }
580- * j = PullMetricReader (plain )
581- return nil
582- }
583-
584474// UnmarshalJSON implements json.Unmarshaler.
585475func (j * SpanLimits ) UnmarshalJSON (value []byte ) error {
586476 type Plain SpanLimits
@@ -619,24 +509,6 @@ func (j *OTLPHttpMetricExporter) UnmarshalJSON(b []byte) error {
619509 return nil
620510}
621511
622- // UnmarshalJSON implements json.Unmarshaler.
623- func (j * SimpleLogRecordProcessor ) UnmarshalJSON (b []byte ) error {
624- var raw map [string ]any
625- if err := json .Unmarshal (b , & raw ); err != nil {
626- return err
627- }
628- if _ , ok := raw ["exporter" ]; raw != nil && ! ok {
629- return errors .New ("field exporter in SimpleLogRecordProcessor: required" )
630- }
631- type Plain SimpleLogRecordProcessor
632- var plain Plain
633- if err := json .Unmarshal (b , & plain ); err != nil {
634- return err
635- }
636- * j = SimpleLogRecordProcessor (plain )
637- return nil
638- }
639-
640512// UnmarshalJSON implements json.Unmarshaler.
641513func (j * OTLPGrpcMetricExporter ) UnmarshalJSON (b []byte ) error {
642514 type Plain OTLPGrpcMetricExporter
@@ -661,54 +533,6 @@ func (j *OTLPGrpcMetricExporter) UnmarshalJSON(b []byte) error {
661533 return nil
662534}
663535
664- // UnmarshalJSON implements json.Unmarshaler.
665- func (j * SimpleSpanProcessor ) UnmarshalJSON (b []byte ) error {
666- var raw map [string ]any
667- if err := json .Unmarshal (b , & raw ); err != nil {
668- return err
669- }
670- if _ , ok := raw ["exporter" ]; raw != nil && ! ok {
671- return errors .New ("field exporter in SimpleSpanProcessor: required" )
672- }
673- type Plain SimpleSpanProcessor
674- var plain Plain
675- if err := json .Unmarshal (b , & plain ); err != nil {
676- return err
677- }
678- * j = SimpleSpanProcessor (plain )
679- return nil
680- }
681-
682- var enumValuesViewSelectorInstrumentType = []any {
683- "counter" ,
684- "gauge" ,
685- "histogram" ,
686- "observable_counter" ,
687- "observable_gauge" ,
688- "observable_up_down_counter" ,
689- "up_down_counter" ,
690- }
691-
692- // UnmarshalJSON implements json.Unmarshaler.
693- func (j * InstrumentType ) UnmarshalJSON (b []byte ) error {
694- var v string
695- if err := json .Unmarshal (b , & v ); err != nil {
696- return err
697- }
698- var ok bool
699- for _ , expected := range enumValuesViewSelectorInstrumentType {
700- if reflect .DeepEqual (v , expected ) {
701- ok = true
702- break
703- }
704- }
705- if ! ok {
706- return fmt .Errorf ("invalid value (expected one of %#v): %#v" , enumValuesViewSelectorInstrumentType , v )
707- }
708- * j = InstrumentType (v )
709- return nil
710- }
711-
712536// UnmarshalJSON implements json.Unmarshaler.
713537func (j * OTLPHttpExporter ) UnmarshalJSON (b []byte ) error {
714538 type Plain OTLPHttpExporter
@@ -733,27 +557,6 @@ func (j *OTLPHttpExporter) UnmarshalJSON(b []byte) error {
733557 return nil
734558}
735559
736- // UnmarshalJSON implements json.Unmarshaler.
737- func (j * ZipkinSpanExporter ) UnmarshalJSON (b []byte ) error {
738- var raw map [string ]any
739- if err := json .Unmarshal (b , & raw ); err != nil {
740- return err
741- }
742- if _ , ok := raw ["endpoint" ]; raw != nil && ! ok {
743- return errors .New ("field endpoint in ZipkinSpanExporter: required" )
744- }
745- type Plain ZipkinSpanExporter
746- var plain Plain
747- if err := json .Unmarshal (b , & plain ); err != nil {
748- return err
749- }
750- if plain .Timeout != nil && 0 > * plain .Timeout {
751- return fmt .Errorf ("field %s: must be >= %v" , "timeout" , 0 )
752- }
753- * j = ZipkinSpanExporter (plain )
754- return nil
755- }
756-
757560// UnmarshalJSON implements json.Unmarshaler.
758561func (j * OTLPGrpcExporter ) UnmarshalJSON (b []byte ) error {
759562 type Plain OTLPGrpcExporter
0 commit comments