@@ -1431,6 +1431,61 @@ public ObservabilityPipelineConfigDestinationItem deserialize(
14311431 e );
14321432 }
14331433
1434+ // deserialize ObservabilityPipelineOpentelemetryMetricsDestination
1435+ try {
1436+ boolean attemptParsing = true ;
1437+ // ensure that we respect type coercion as set on the client ObjectMapper
1438+ if (ObservabilityPipelineOpentelemetryMetricsDestination .class .equals (Integer .class )
1439+ || ObservabilityPipelineOpentelemetryMetricsDestination .class .equals (Long .class )
1440+ || ObservabilityPipelineOpentelemetryMetricsDestination .class .equals (Float .class )
1441+ || ObservabilityPipelineOpentelemetryMetricsDestination .class .equals (Double .class )
1442+ || ObservabilityPipelineOpentelemetryMetricsDestination .class .equals (Boolean .class )
1443+ || ObservabilityPipelineOpentelemetryMetricsDestination .class .equals (String .class )) {
1444+ attemptParsing = typeCoercion ;
1445+ if (!attemptParsing ) {
1446+ attemptParsing |=
1447+ ((ObservabilityPipelineOpentelemetryMetricsDestination .class .equals (Integer .class )
1448+ || ObservabilityPipelineOpentelemetryMetricsDestination .class .equals (
1449+ Long .class ))
1450+ && token == JsonToken .VALUE_NUMBER_INT );
1451+ attemptParsing |=
1452+ ((ObservabilityPipelineOpentelemetryMetricsDestination .class .equals (Float .class )
1453+ || ObservabilityPipelineOpentelemetryMetricsDestination .class .equals (
1454+ Double .class ))
1455+ && (token == JsonToken .VALUE_NUMBER_FLOAT
1456+ || token == JsonToken .VALUE_NUMBER_INT ));
1457+ attemptParsing |=
1458+ (ObservabilityPipelineOpentelemetryMetricsDestination .class .equals (Boolean .class )
1459+ && (token == JsonToken .VALUE_FALSE || token == JsonToken .VALUE_TRUE ));
1460+ attemptParsing |=
1461+ (ObservabilityPipelineOpentelemetryMetricsDestination .class .equals (String .class )
1462+ && token == JsonToken .VALUE_STRING );
1463+ }
1464+ }
1465+ if (attemptParsing ) {
1466+ tmp =
1467+ tree .traverse (jp .getCodec ())
1468+ .readValueAs (ObservabilityPipelineOpentelemetryMetricsDestination .class );
1469+ // TODO: there is no validation against JSON schema constraints
1470+ // (min, max, enum, pattern...), this does not perform a strict JSON
1471+ // validation, which means the 'match' count may be higher than it should be.
1472+ if (!((ObservabilityPipelineOpentelemetryMetricsDestination ) tmp ).unparsed ) {
1473+ deserialized = tmp ;
1474+ match ++;
1475+ }
1476+ log .log (
1477+ Level .FINER ,
1478+ "Input data matches schema 'ObservabilityPipelineOpentelemetryMetricsDestination'" );
1479+ }
1480+ } catch (Exception e ) {
1481+ // deserialization failed, continue
1482+ log .log (
1483+ Level .FINER ,
1484+ "Input data does not match schema"
1485+ + " 'ObservabilityPipelineOpentelemetryMetricsDestination'" ,
1486+ e );
1487+ }
1488+
14341489 // deserialize ObservabilityPipelineSplunkHecMetricsDestination
14351490 try {
14361491 boolean attemptParsing = true ;
@@ -1656,6 +1711,12 @@ public ObservabilityPipelineConfigDestinationItem(
16561711 setActualInstance (o );
16571712 }
16581713
1714+ public ObservabilityPipelineConfigDestinationItem (
1715+ ObservabilityPipelineOpentelemetryMetricsDestination o ) {
1716+ super ("oneOf" , Boolean .FALSE );
1717+ setActualInstance (o );
1718+ }
1719+
16591720 public ObservabilityPipelineConfigDestinationItem (
16601721 ObservabilityPipelineSplunkHecMetricsDestination o ) {
16611722 super ("oneOf" , Boolean .FALSE );
@@ -1737,6 +1798,9 @@ public ObservabilityPipelineConfigDestinationItem(
17371798 schemas .put (
17381799 "ObservabilityPipelineDatadogMetricsDestination" ,
17391800 new GenericType <ObservabilityPipelineDatadogMetricsDestination >() {});
1801+ schemas .put (
1802+ "ObservabilityPipelineOpentelemetryMetricsDestination" ,
1803+ new GenericType <ObservabilityPipelineOpentelemetryMetricsDestination >() {});
17401804 schemas .put (
17411805 "ObservabilityPipelineSplunkHecMetricsDestination" ,
17421806 new GenericType <ObservabilityPipelineSplunkHecMetricsDestination >() {});
@@ -1766,6 +1830,7 @@ public Map<String, GenericType> getSchemas() {
17661830 * ObservabilityPipelineSplunkHecDestination, ObservabilityPipelineSumoLogicDestination,
17671831 * ObservabilityPipelineSyslogNgDestination, ObservabilityPipelineDatabricksZerobusDestination,
17681832 * ObservabilityPipelineDatadogMetricsDestination,
1833+ * ObservabilityPipelineOpentelemetryMetricsDestination,
17691834 * ObservabilityPipelineSplunkHecMetricsDestination
17701835 *
17711836 * <p>It could be an instance of the 'oneOf' schemas. The oneOf child schemas may themselves be a
@@ -1911,6 +1976,13 @@ public void setActualInstance(Object instance) {
19111976 super .setActualInstance (instance );
19121977 return ;
19131978 }
1979+ if (JSON .isInstanceOf (
1980+ ObservabilityPipelineOpentelemetryMetricsDestination .class ,
1981+ instance ,
1982+ new HashSet <Class <?>>())) {
1983+ super .setActualInstance (instance );
1984+ return ;
1985+ }
19141986 if (JSON .isInstanceOf (
19151987 ObservabilityPipelineSplunkHecMetricsDestination .class ,
19161988 instance ,
@@ -1947,6 +2019,7 @@ public void setActualInstance(Object instance) {
19472019 + " ObservabilityPipelineSyslogNgDestination,"
19482020 + " ObservabilityPipelineDatabricksZerobusDestination,"
19492021 + " ObservabilityPipelineDatadogMetricsDestination,"
2022+ + " ObservabilityPipelineOpentelemetryMetricsDestination,"
19502023 + " ObservabilityPipelineSplunkHecMetricsDestination" );
19512024 }
19522025
@@ -1967,6 +2040,7 @@ public void setActualInstance(Object instance) {
19672040 * ObservabilityPipelineSplunkHecDestination, ObservabilityPipelineSumoLogicDestination,
19682041 * ObservabilityPipelineSyslogNgDestination, ObservabilityPipelineDatabricksZerobusDestination,
19692042 * ObservabilityPipelineDatadogMetricsDestination,
2043+ * ObservabilityPipelineOpentelemetryMetricsDestination,
19702044 * ObservabilityPipelineSplunkHecMetricsDestination
19712045 *
19722046 * @return The actual instance (ObservabilityPipelineElasticsearchDestination,
@@ -1987,6 +2061,7 @@ public void setActualInstance(Object instance) {
19872061 * ObservabilityPipelineSyslogNgDestination,
19882062 * ObservabilityPipelineDatabricksZerobusDestination,
19892063 * ObservabilityPipelineDatadogMetricsDestination,
2064+ * ObservabilityPipelineOpentelemetryMetricsDestination,
19902065 * ObservabilityPipelineSplunkHecMetricsDestination)
19912066 */
19922067 @ Override
@@ -2326,6 +2401,20 @@ public ObservabilityPipelineSyslogNgDestination getObservabilityPipelineSyslogNg
23262401 return (ObservabilityPipelineDatadogMetricsDestination ) super .getActualInstance ();
23272402 }
23282403
2404+ /**
2405+ * Get the actual instance of `ObservabilityPipelineOpentelemetryMetricsDestination`. If the
2406+ * actual instance is not `ObservabilityPipelineOpentelemetryMetricsDestination`, the
2407+ * ClassCastException will be thrown.
2408+ *
2409+ * @return The actual instance of `ObservabilityPipelineOpentelemetryMetricsDestination`
2410+ * @throws ClassCastException if the instance is not
2411+ * `ObservabilityPipelineOpentelemetryMetricsDestination`
2412+ */
2413+ public ObservabilityPipelineOpentelemetryMetricsDestination
2414+ getObservabilityPipelineOpentelemetryMetricsDestination () throws ClassCastException {
2415+ return (ObservabilityPipelineOpentelemetryMetricsDestination ) super .getActualInstance ();
2416+ }
2417+
23292418 /**
23302419 * Get the actual instance of `ObservabilityPipelineSplunkHecMetricsDestination`. If the actual
23312420 * instance is not `ObservabilityPipelineSplunkHecMetricsDestination`, the ClassCastException will
0 commit comments