Skip to content

Commit a6b9e3e

Browse files
committed
Merge remote-tracking branch 'origin/4.3.x'
2 parents b374941 + 9134f84 commit a6b9e3e

File tree

6 files changed

+29
-4
lines changed

6 files changed

+29
-4
lines changed

model.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,6 @@ import org.hibernate.validator.constraints.*;
4242

4343
{{#models}}
4444
{{#model}}
45-
{{#isEnum}}{{>modelEnum}}{{/isEnum}}{{^isEnum}}{{>pojo}}{{/isEnum}}
45+
{{#isEnum}}{{>modelEnum}}{{/isEnum}}{{^isEnum}}{{#vendorExtensions.isOneOfInterface}}{{>oneof_interface}}{{/vendorExtensions.isOneOfInterface}}{{^vendorExtensions.isOneOfInterface}}{{>pojo}}{{/vendorExtensions.isOneOfInterface}}{{/isEnum}}
4646
{{/model}}
4747
{{/models}}

model_test.mustache

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import java.util.Map;
2121
public class {{classname}}Test {
2222
{{#models}}
2323
{{#model}}
24+
{{^vendorExtensions.isOneOfInterface}}
2425
{{^isEnum}}
2526
private final {{classname}} model = new {{classname}}();
2627

@@ -43,6 +44,7 @@ public class {{classname}}Test {
4344
}
4445

4546
{{/allVars}}
47+
{{/vendorExtensions.isOneOfInterface}}
4648
{{/model}}
4749
{{/models}}
4850
}

oneof_interface.mustache

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{{>additionalModelTypeAnnotations}}{{>generatedAnnotation}}{{>typeInfoAnnotation}}{{>xmlAnnotation}}
2+
public interface {{classname}} {{#vendorExtensions.implements}}{{#-first}}extends {{{.}}}{{/-first}}{{^-first}}, {{{.}}}{{/-first}}{{/vendorExtensions.implements}} {
3+
{{#discriminator}}
4+
public {{propertyType}} {{propertyGetter}}();
5+
{{/discriminator}}
6+
}

pojo.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
})
1111
{{/jackson}}
1212
{{>additionalModelTypeAnnotations}}{{>generatedAnnotation}}{{#discriminator}}{{>typeInfoAnnotation}}{{/discriminator}}{{>xmlAnnotation}}
13-
public class {{classname}} {{#parent}}extends {{{parent}}} {{/parent}}{{#parcelableModel}}implements Parcelable {{#serializableModel}}, Serializable {{/serializableModel}}{{/parcelableModel}}{{^parcelableModel}}{{#serializableModel}}implements Serializable {{/serializableModel}}{{/parcelableModel}}{
13+
public class {{classname}} {{#parent}}extends {{{parent}}} {{/parent}}{{#vendorExtensions.implements}}{{#-first}}implements {{{.}}}{{/-first}}{{^-first}}, {{{.}}}{{/-first}}{{#-last}} {{/-last}}{{/vendorExtensions.implements}}{
1414
{{#serializableModel}}
1515
private static final long serialVersionUID = 1L;
1616

pojo_doc.mustache

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1-
# {{classname}}
1+
# {{#vendorExtensions.isOneOfInterface}}Interface {{/vendorExtensions.isOneOfInterface}}{{classname}}
22

33
{{#description}}{{&description}}
44
{{/description}}
5+
{{^vendorExtensions.isOneOfInterface}}
56
## Properties
67

78
Name | Type | Description | Notes
@@ -17,3 +18,19 @@ Name | Value
1718
---- | -----{{#allowableValues}}{{#enumVars}}
1819
{{name}} | {{value}}{{/enumVars}}{{/allowableValues}}
1920
{{/isEnum}}{{/vars}}
21+
{{#vendorExtensions.implements.0}}
22+
23+
## Implemented Interfaces
24+
25+
{{#vendorExtensions.implements}}
26+
* {{{.}}}
27+
{{/vendorExtensions.implements}}
28+
{{/vendorExtensions.implements.0}}
29+
{{/vendorExtensions.isOneOfInterface}}
30+
{{#vendorExtensions.isOneOfInterface}}
31+
## Implementing Classes
32+
33+
{{#oneOf}}
34+
* {{{.}}}
35+
{{/oneOf}}
36+
{{/vendorExtensions.isOneOfInterface}}

typeInfoAnnotation.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{{#jackson}}
22

3-
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "{{{discriminator.propertyBaseName}}}", visible = true)
3+
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.EXISTING_PROPERTY, property = "{{{discriminator.propertyBaseName}}}", visible = true)
44
@JsonSubTypes({
55
{{#discriminator.mappedModels}}
66
@JsonSubTypes.Type(value = {{modelName}}.class, name = "{{^vendorExtensions.x-discriminator-value}}{{mappingName}}{{/vendorExtensions.x-discriminator-value}}{{#vendorExtensions.x-discriminator-value}}{{{vendorExtensions.x-discriminator-value}}}{{/vendorExtensions.x-discriminator-value}}"),

0 commit comments

Comments
 (0)