Skip to content

Commit 3d15957

Browse files
committed
GH-229 Example usage of OpenApiRequired
1 parent a8dbbc5 commit 3d15957

File tree

1 file changed

+10
-28
lines changed
  • examples/javalin-gradle-kotlin/src/main/java/io/javalin/openapi/plugin/test

1 file changed

+10
-28
lines changed

examples/javalin-gradle-kotlin/src/main/java/io/javalin/openapi/plugin/test/JavalinTest.java

Lines changed: 10 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -4,33 +4,7 @@
44
import io.javalin.Javalin;
55
import io.javalin.http.Context;
66
import io.javalin.http.Handler;
7-
import io.javalin.openapi.Custom;
8-
import io.javalin.openapi.CustomAnnotation;
9-
import io.javalin.openapi.HttpMethod;
10-
import io.javalin.openapi.JsonSchema;
11-
import io.javalin.openapi.JsonSchemaLoader;
12-
import io.javalin.openapi.JsonSchemaResource;
13-
import io.javalin.openapi.OneOf;
14-
import io.javalin.openapi.OpenApi;
15-
import io.javalin.openapi.OpenApiArrayValidation;
16-
import io.javalin.openapi.OpenApiByFields;
17-
import io.javalin.openapi.OpenApiCallback;
18-
import io.javalin.openapi.OpenApiContent;
19-
import io.javalin.openapi.OpenApiContentProperty;
20-
import io.javalin.openapi.OpenApiDescription;
21-
import io.javalin.openapi.OpenApiExample;
22-
import io.javalin.openapi.OpenApiExampleProperty;
23-
import io.javalin.openapi.OpenApiIgnore;
24-
import io.javalin.openapi.OpenApiName;
25-
import io.javalin.openapi.OpenApiNumberValidation;
26-
import io.javalin.openapi.OpenApiObjectValidation;
27-
import io.javalin.openapi.OpenApiParam;
28-
import io.javalin.openapi.OpenApiPropertyType;
29-
import io.javalin.openapi.OpenApiRequestBody;
30-
import io.javalin.openapi.OpenApiResponse;
31-
import io.javalin.openapi.OpenApiSecurity;
32-
import io.javalin.openapi.OpenApiStringValidation;
33-
import io.javalin.openapi.Visibility;
7+
import io.javalin.openapi.*;
348
import io.javalin.openapi.plugin.OpenApiPlugin;
359
import io.javalin.openapi.plugin.redoc.ReDocPlugin;
3610
import io.javalin.openapi.plugin.swagger.SwaggerPlugin;
@@ -57,6 +31,7 @@
5731
/**
5832
* Starts Javalin server with OpenAPI plugin
5933
*/
34+
@SuppressWarnings({"unused", "LombokGetterMayBeUsed", "LombokSetterMayBeUsed", "ProtectedMemberInFinalClass", "InnerClassMayBeStatic"})
6035
public final class JavalinTest implements Handler {
6136

6237
enum Rules implements RouteRole {
@@ -420,6 +395,12 @@ public static String getStatic() {
420395
return "static";
421396
}
422397

398+
// by default nullable fields are not required, but we can force it
399+
@OpenApiRequired
400+
public String getNullableIsRequired() {
401+
return "required";
402+
}
403+
423404
}
424405

425406
static final class Foo {
@@ -498,9 +479,10 @@ public String getName() {
498479

499480
}
500481

501-
@JsonSchema
482+
@JsonSchema(requireNonNulls = false)
502483
static final class JsonSchemaEntity {
503484

485+
@OpenApiRequired
504486
public List<EntityDto> getEntities() {
505487
return Collections.emptyList();
506488
}

0 commit comments

Comments
 (0)