Skip to content

Commit caca305

Browse files
fix cubic-dev-ai issues, fix unit tests
1 parent b69df0d commit caca305

133 files changed

Lines changed: 820 additions & 801 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

modules/openapi-generator/src/main/resources/Java/RFC3339InstantDeserializer.mustache

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,24 @@ import com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer;
2424
import tools.jackson.core.JacksonException;
2525
import tools.jackson.core.JsonParser;
2626
import tools.jackson.databind.DeserializationContext;
27-
import tools.jackson.datatype.jsr310.JavaTimeFeature;
28-
import tools.jackson.datatype.jsr310.deser.InstantDeserializer;
27+
import tools.jackson.databind.cfg.DateTimeFeature;
28+
import tools.jackson.databind.ext.javatime.deser.InstantDeserializer;
2929
{{/useJackson3}}
3030

3131
{{>generatedAnnotation}}
3232

3333
public class RFC3339InstantDeserializer<T extends Temporal> extends InstantDeserializer<T> {
3434
private static final long serialVersionUID = 1L;
35+
{{^useJackson3}}
3536
private final static boolean DEFAULT_NORMALIZE_ZONE_ID = JavaTimeFeature.NORMALIZE_DESERIALIZED_ZONE_ID.enabledByDefault();
3637
private final static boolean DEFAULT_ALWAYS_ALLOW_STRINGIFIED_DATE_TIMESTAMPS
3738
= JavaTimeFeature.ALWAYS_ALLOW_STRINGIFIED_DATE_TIMESTAMPS.enabledByDefault();
39+
{{/useJackson3}}
40+
{{#useJackson3}}
41+
private final static boolean DEFAULT_NORMALIZE_ZONE_ID = DateTimeFeature.NORMALIZE_DESERIALIZED_ZONE_ID.enabledByDefault();
42+
private final static boolean DEFAULT_ALWAYS_ALLOW_STRINGIFIED_DATE_TIMESTAMPS
43+
= DateTimeFeature.ALWAYS_ALLOW_STRINGIFIED_DATE_TIMESTAMPS.enabledByDefault();
44+
{{/useJackson3}}
3845

3946
public static final RFC3339InstantDeserializer<Instant> INSTANT = new RFC3339InstantDeserializer<>(
4047
Instant.class, DateTimeFormatter.ISO_INSTANT,

modules/openapi-generator/src/main/resources/Java/libraries/native/AbstractOpenApiSchema.mustache

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,7 @@ import java.util.Objects;
66
import java.lang.reflect.Type;
77
import java.util.Map;
88

9-
{{^useJackson3}}
109
import com.fasterxml.jackson.annotation.JsonValue;
11-
{{/useJackson3}}
12-
{{#useJackson3}}
13-
import tools.jackson.annotation.JsonValue;
14-
{{/useJackson3}}
1510

1611
/**
1712
* Abstract class for oneOf,anyOf schemas defined in OpenAPI spec

modules/openapi-generator/src/main/resources/Java/libraries/native/ApiClient.mustache

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,10 @@ import org.openapitools.jackson.nullable.JsonNullableModule;
1212
{{/openApiNullable}}
1313
{{/useJackson3}}
1414
{{#useJackson3}}
15-
import tools.jackson.annotation.JsonInclude;
15+
import com.fasterxml.jackson.annotation.JsonInclude;
1616
import tools.jackson.databind.DeserializationFeature;
1717
import tools.jackson.databind.ObjectMapper;
1818
import tools.jackson.databind.SerializationFeature;
19-
import tools.jackson.datatype.jsr310.JavaTimeModule;
2019
{{/useJackson3}}
2120

2221
import java.io.InputStream;
@@ -222,7 +221,9 @@ public class ApiClient {
222221
mapper.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING);
223222
mapper.enable(DeserializationFeature.READ_ENUMS_USING_TO_STRING);
224223
mapper.disable(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE);
224+
{{^useJackson3}}
225225
mapper.registerModule(new JavaTimeModule());
226+
{{/useJackson3}}
226227
{{^useJackson3}}
227228
{{#openApiNullable}}
228229
mapper.registerModule(new JsonNullableModule());

modules/openapi-generator/src/main/resources/Java/libraries/native/JSON.mustache

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,9 @@ import com.fasterxml.jackson.datatype.joda.JodaModule;
1515
{{/joda}}
1616
{{/useJackson3}}
1717
{{#useJackson3}}
18-
import tools.jackson.annotation.*;
18+
import com.fasterxml.jackson.annotation.*;
1919
import tools.jackson.databind.*;
2020
import tools.jackson.databind.json.JsonMapper;
21-
import tools.jackson.datatype.jsr310.JavaTimeModule;
2221
{{#joda}}
2322
import tools.jackson.datatype.joda.JodaModule;
2423
{{/joda}}
@@ -79,7 +78,7 @@ public class JSON {
7978
.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING)
8079
.enable(DeserializationFeature.READ_ENUMS_USING_TO_STRING)
8180
.defaultDateFormat(new RFC3339DateFormat())
82-
.addModule(new JavaTimeModule())
81+
// Note: JavaTimeModule (jsr310) is built into jackson-databind for Jackson 3 - no explicit registration needed
8382
.build();
8483
{{#joda}}
8584
mapper.registerModule(new JodaModule());

modules/openapi-generator/src/main/resources/Java/libraries/native/anyof_model.mustache

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ import tools.jackson.core.JacksonException;
2525
import tools.jackson.core.JsonGenerator;
2626
import tools.jackson.core.JsonParser;
2727
import tools.jackson.databind.DeserializationContext;
28-
import tools.jackson.databind.JsonMappingException;
28+
import tools.jackson.databind.DatabindException;
2929
import tools.jackson.databind.JsonNode;
3030
import tools.jackson.databind.SerializerProvider;
3131
import tools.jackson.databind.annotation.JsonDeserialize;
@@ -100,20 +100,30 @@ public class {{classname}} extends AbstractOpenApiSchema{{#vendorExtensions.x-im
100100
throw new IOException("Failed deserialization for {{classname}}: no match found");
101101
{{/useJackson3}}
102102
{{#useJackson3}}
103-
throw new JsonMappingException(jp, "Failed deserialization for {{classname}}: no match found");
103+
throw DatabindException.from(jp, "Failed deserialization for {{classname}}: no match found");
104104
{{/useJackson3}}
105105
}
106106

107107
/**
108108
* Handle deserialization of the 'null' value.
109109
*/
110110
@Override
111+
{{^useJackson3}}
111112
public {{classname}} getNullValue(DeserializationContext ctxt) throws JsonMappingException {
113+
{{/useJackson3}}
114+
{{#useJackson3}}
115+
public {{classname}} getNullValue(DeserializationContext ctxt) {
116+
{{/useJackson3}}
112117
{{#isNullable}}
113118
return null;
114119
{{/isNullable}}
115120
{{^isNullable}}
121+
{{^useJackson3}}
116122
throw new JsonMappingException(ctxt.getParser(), "{{classname}} cannot be null");
123+
{{/useJackson3}}
124+
{{#useJackson3}}
125+
throw DatabindException.from(ctxt.getParser(), "{{classname}} cannot be null");
126+
{{/useJackson3}}
117127
{{/isNullable}}
118128
}
119129
}

modules/openapi-generator/src/main/resources/Java/libraries/native/api_doc.mustache

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,10 +136,10 @@ public class Example {
136136
## {{operationId}}WithHttpInfo
137137

138138
{{^vendorExtensions.x-group-parameters}}
139-
> {{#asyncNative}}CompletableFuture<{{/asyncNative}}ApiResponse<{{{returnType}}}{{^returnType}}Void{{/returnType}}>{{#asyncNative}}>{{/asyncNative}} {{operationId}} {{operationId}}WithHttpInfo({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}})
139+
> {{#asyncNative}}CompletableFuture<{{/asyncNative}}ApiResponse<{{{returnType}}}{{^returnType}}Void{{/returnType}}>{{#asyncNative}}>{{/asyncNative}} {{operationId}}WithHttpInfo({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}})
140140
{{/vendorExtensions.x-group-parameters}}
141141
{{#vendorExtensions.x-group-parameters}}
142-
> {{#asyncNative}}CompletableFuture<{{/asyncNative}}ApiResponse<{{{returnType}}}{{^returnType}}Void{{/returnType}}>{{#asyncNative}}>{{/asyncNative}} {{operationId}} {{operationId}}WithHttpInfo({{#hasParams}}{{operationId}}Request{{/hasParams}})
142+
> {{#asyncNative}}CompletableFuture<{{/asyncNative}}ApiResponse<{{{returnType}}}{{^returnType}}Void{{/returnType}}>{{#asyncNative}}>{{/asyncNative}} {{operationId}}WithHttpInfo({{#hasParams}}{{operationId}}Request{{/hasParams}})
143143
{{/vendorExtensions.x-group-parameters}}
144144

145145
{{summary}}{{#notes}}

modules/openapi-generator/src/main/resources/Java/libraries/native/build.gradle.mustache

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ ext {
8383
{{/useJackson3}}
8484
{{#useJackson3}}
8585
jackson3_version = "3.0.4"
86+
jackson_annotations_version = "2.20"
8687
{{/useJackson3}}
8788
{{#useJakartaEe}}
8889
jakarta_annotation_version = "2.1.1"
@@ -118,10 +119,8 @@ dependencies {
118119
{{/useJackson3}}
119120
{{#useJackson3}}
120121
implementation "tools.jackson.core:jackson-core:$jackson3_version"
121-
implementation "tools.jackson.core:jackson-annotations:$jackson3_version"
122+
implementation "com.fasterxml.jackson.core:jackson-annotations:$jackson_annotations_version"
122123
implementation "tools.jackson.core:jackson-databind:$jackson3_version"
123-
implementation "tools.jackson.datatype:jackson-datatype-jsr310:$jackson3_version"
124-
// Note: jackson-databind-nullable is not yet available for Jackson 3
125124
{{/useJackson3}}
126125
implementation "jakarta.annotation:jakarta.annotation-api:$jakarta_annotation_version"
127126
{{#useBeanValidation}}

modules/openapi-generator/src/main/resources/Java/libraries/native/model.mustache

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,8 @@ import org.apache.commons.lang3.builder.HashCodeBuilder;
1111
{{#additionalPropertiesType}}
1212
import java.util.Map;
1313
import java.util.HashMap;
14-
{{^useJackson3}}
1514
import com.fasterxml.jackson.annotation.JsonAnyGetter;
1615
import com.fasterxml.jackson.annotation.JsonAnySetter;
17-
{{/useJackson3}}
18-
{{#useJackson3}}
19-
import tools.jackson.annotation.JsonAnyGetter;
20-
import tools.jackson.annotation.JsonAnySetter;
21-
{{/useJackson3}}
2216
{{/additionalPropertiesType}}
2317
{{/model}}
2418
{{/models}}
@@ -37,24 +31,13 @@ import {{import}};
3731
import java.io.Serializable;
3832
{{/serializableModel}}
3933
{{#jackson}}
40-
{{^useJackson3}}
4134
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
4235
{{#withXml}}
4336
import com.fasterxml.jackson.dataformat.xml.annotation.*;
4437
{{/withXml}}
4538
{{#vendorExtensions.x-has-readonly-properties}}
4639
import com.fasterxml.jackson.annotation.JsonCreator;
4740
{{/vendorExtensions.x-has-readonly-properties}}
48-
{{/useJackson3}}
49-
{{#useJackson3}}
50-
import tools.jackson.annotation.JsonPropertyOrder;
51-
{{#withXml}}
52-
import tools.jackson.dataformat.xml.annotation.*;
53-
{{/withXml}}
54-
{{#vendorExtensions.x-has-readonly-properties}}
55-
import tools.jackson.annotation.JsonCreator;
56-
{{/vendorExtensions.x-has-readonly-properties}}
57-
{{/useJackson3}}
5841
{{/jackson}}
5942
{{#withXml}}
6043
import {{javaxPackage}}.xml.bind.annotation.*;

modules/openapi-generator/src/main/resources/Java/libraries/native/modelEnum.mustache

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,6 @@
11
{{#jackson}}
2-
{{^useJackson3}}
32
import com.fasterxml.jackson.annotation.JsonCreator;
43
import com.fasterxml.jackson.annotation.JsonValue;
5-
{{/useJackson3}}
6-
{{#useJackson3}}
7-
import tools.jackson.annotation.JsonCreator;
8-
import tools.jackson.annotation.JsonValue;
9-
{{/useJackson3}}
104
{{/jackson}}
115
{{#gson}}
126
import java.io.IOException;

modules/openapi-generator/src/main/resources/Java/libraries/native/oneof_model.mustache

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ import tools.jackson.core.JsonGenerator;
2828
import tools.jackson.core.JsonParser;
2929
import tools.jackson.core.JsonToken;
3030
import tools.jackson.databind.DeserializationContext;
31-
import tools.jackson.databind.JsonMappingException;
31+
import tools.jackson.databind.DatabindException;
3232
import tools.jackson.databind.JsonNode;
3333
import tools.jackson.databind.SerializerProvider;
3434
import tools.jackson.databind.annotation.JsonDeserialize;
@@ -139,20 +139,30 @@ public class {{classname}} extends AbstractOpenApiSchema{{#vendorExtensions.x-im
139139
throw new IOException(String.format(java.util.Locale.ROOT, "Failed deserialization for {{classname}}: %d classes match result, expected 1", match));
140140
{{/useJackson3}}
141141
{{#useJackson3}}
142-
throw new JsonMappingException(jp, String.format(java.util.Locale.ROOT, "Failed deserialization for {{classname}}: %d classes match result, expected 1", match));
142+
throw DatabindException.from(jp, String.format(java.util.Locale.ROOT, "Failed deserialization for {{classname}}: %d classes match result, expected 1", match));
143143
{{/useJackson3}}
144144
}
145145

146146
/**
147147
* Handle deserialization of the 'null' value.
148148
*/
149149
@Override
150+
{{^useJackson3}}
150151
public {{classname}} getNullValue(DeserializationContext ctxt) throws JsonMappingException {
152+
{{/useJackson3}}
153+
{{#useJackson3}}
154+
public {{classname}} getNullValue(DeserializationContext ctxt) {
155+
{{/useJackson3}}
151156
{{#isNullable}}
152157
return null;
153158
{{/isNullable}}
154159
{{^isNullable}}
160+
{{^useJackson3}}
155161
throw new JsonMappingException(ctxt.getParser(), "{{classname}} cannot be null");
162+
{{/useJackson3}}
163+
{{#useJackson3}}
164+
throw DatabindException.from(ctxt.getParser(), "{{classname}} cannot be null");
165+
{{/useJackson3}}
156166
{{/isNullable}}
157167
}
158168
}

0 commit comments

Comments
 (0)