-
-
Notifications
You must be signed in to change notification settings - Fork 7.4k
Closed
Labels
Description
Bug Report Checklist
- Have you tested with the latest master to confirm the issue still exists?
- Have you searched for related issues/PRs?
- What's the actual output vs expected output?
Description
Adding Lombok Builder, as explained in this comment is working fine. However, there's a problem with default values. When utilizing Lombok Builder, the default values specified in the model classes aren't retained; instead, they're being set to null.
This problem can be resolved by leveraging Lombok's @Builder.Default annotation, which allows us to specify default values for fields within the builder pattern. More details about this annotation can be found here.
Related issues/PRs
Input
openapi: "3.0.3"
...
components:
schemas:
MyObject:
type: object
properties:
propertyWithDefaultValue:
type: integer
format: int32
default: 20
simpleProperty:
type: integer
format: int32
...<configuration>
...
<configOptions>
...
<additionalModelTypeAnnotations>@lombok.Builder</additionalModelTypeAnnotations>
...
</configOptions>
...
</configuration>Current output
@lombok.Builder
public class MyObject {
...
private Integer propertyWithDefaultValue = 20;
private Integer simpleProperty;
...
}Expected output
@lombok.Builder
public class MyObject {
...
+ @lombok.Builder.Default
private Integer propertyWithDefaultValue = 20;
private Integer simpleProperty;
...
}Reactions are currently unavailable