Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 12 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,9 @@ repositories {

dependencies {
// Framework dependencies
def vertx_version = '4.5.9'
def vertx_version = '5.0.7'
implementation group: 'io.vertx', name: 'vertx-core', version: vertx_version
implementation group: 'io.vertx', name: 'vertx-launcher-legacy-cli', version: vertx_version
implementation group: 'io.vertx', name: 'vertx-web', version: vertx_version
implementation group: 'io.vertx', name: 'vertx-web-client', version: vertx_version
implementation group: 'io.vertx', name: 'vertx-web-openapi-router', version: vertx_version
Expand All @@ -89,6 +90,9 @@ dependencies {
implementation group: 'io.vertx', name: 'vertx-hazelcast', version: vertx_version
implementation group: 'io.vertx', name: 'vertx-health-check', version: vertx_version

def micrometer_version = '1.15.8'
implementation group: 'io.micrometer', name: 'micrometer-registry-prometheus', version: micrometer_version

def hazelcast_version = '5.3.8'
implementation group: 'com.hazelcast', name: 'hazelcast', version: hazelcast_version

Expand Down Expand Up @@ -124,7 +128,7 @@ dependencies {
implementation group: 'org.ow2.asm', name: 'asm', version: '9.7'

implementation group: 'org.slf4j', name: 'slf4j-api', version: '2.0.13'
implementation group: 'ch.qos.logback', name: 'logback-classic', version: '1.5.6'
implementation group: 'ch.qos.logback', name: 'logback-classic', version: '1.5.19'
def guava_version = '33.2.1-jre'
implementation group: 'com.google.guava', name: 'guava', version: guava_version
implementation group: 'com.github.spotbugs', name: 'spotbugs-annotations', version: '4.8.6'
Expand Down Expand Up @@ -170,6 +174,12 @@ dependencies {

// Without this the IDE can't find the test source files which are needed for debugging
testCompileOnly group: 'io.vertx', name: 'vertx-core', classifier: 'test-sources', version: vertx_version

constraints {
implementation('commons-io:commons-io:2.14.0') {
because 'CVE-2024-47554: Fixes security vulnerability in commons-io 2.13.0 (transitively from org.apache.olingo:odata-server-core)'
}
}
}

// fix checkstyle wrongfully using google collections instead of Guava
Expand Down
Original file line number Diff line number Diff line change
@@ -1,35 +1,28 @@
package io.neonbee.config;

import java.util.Base64;

import io.vertx.core.json.JsonObject;
import io.vertx.core.json.impl.JsonUtil;

/**
* Converter and mapper for {@link io.neonbee.config.AuthHandlerConfig}. NOTE: This class has been automatically
* generated from the {@link io.neonbee.config.AuthHandlerConfig} original class using Vert.x codegen.
*/
public class AuthHandlerConfigConverter {

private static final Base64.Decoder BASE64_DECODER = JsonUtil.BASE64_DECODER;

private static final Base64.Encoder BASE64_ENCODER = JsonUtil.BASE64_ENCODER;

static void fromJson(Iterable<java.util.Map.Entry<String, Object>> json, AuthHandlerConfig obj) {
for (java.util.Map.Entry<String, Object> member : json) {
switch (member.getKey()) {
case "authProviderConfig":
if (member.getValue() instanceof JsonObject) {
obj.setAuthProviderConfig(new io.neonbee.config.AuthProviderConfig(
(io.vertx.core.json.JsonObject) member.getValue()));
}
break;
case "type":
if (member.getValue() instanceof String) {
obj.setType(
io.neonbee.config.AuthHandlerConfig.AuthHandlerType.valueOf((String) member.getValue()));
}
break;
case "authProviderConfig":
if (member.getValue() instanceof JsonObject) {
obj.setAuthProviderConfig(new io.neonbee.config.AuthProviderConfig(
(io.vertx.core.json.JsonObject) member.getValue()));
}
break;
}
}
}
Expand All @@ -39,11 +32,11 @@ static void toJson(AuthHandlerConfig obj, JsonObject json) {
}

static void toJson(AuthHandlerConfig obj, java.util.Map<String, Object> json) {
if (obj.getAuthProviderConfig() != null) {
json.put("authProviderConfig", obj.getAuthProviderConfig().toJson());
}
if (obj.getType() != null) {
json.put("type", obj.getType().name());
}
if (obj.getAuthProviderConfig() != null) {
json.put("authProviderConfig", obj.getAuthProviderConfig().toJson());
}
}
}
Original file line number Diff line number Diff line change
@@ -1,20 +1,13 @@
package io.neonbee.config;

import java.util.Base64;

import io.vertx.core.json.JsonObject;
import io.vertx.core.json.impl.JsonUtil;

/**
* Converter and mapper for {@link io.neonbee.config.AuthProviderConfig}. NOTE: This class has been automatically
* generated from the {@link io.neonbee.config.AuthProviderConfig} original class using Vert.x codegen.
*/
public class AuthProviderConfigConverter {

private static final Base64.Decoder BASE64_DECODER = JsonUtil.BASE64_DECODER;

private static final Base64.Encoder BASE64_ENCODER = JsonUtil.BASE64_ENCODER;

static void fromJson(Iterable<java.util.Map.Entry<String, Object>> json, AuthProviderConfig obj) {
for (java.util.Map.Entry<String, Object> member : json) {
switch (member.getKey()) {
Expand Down
89 changes: 41 additions & 48 deletions src/generated/java/io/neonbee/config/CorsConfigConverter.java
Original file line number Diff line number Diff line change
@@ -1,87 +1,80 @@
package io.neonbee.config;

import java.util.Base64;

import io.vertx.core.json.JsonArray;
import io.vertx.core.json.JsonObject;
import io.vertx.core.json.impl.JsonUtil;

/**
* Converter and mapper for {@link io.neonbee.config.CorsConfig}. NOTE: This class has been automatically generated from
* the {@link io.neonbee.config.CorsConfig} original class using Vert.x codegen.
*/
public class CorsConfigConverter {

private static final Base64.Decoder BASE64_DECODER = JsonUtil.BASE64_DECODER;

private static final Base64.Encoder BASE64_ENCODER = JsonUtil.BASE64_ENCODER;

static void fromJson(Iterable<java.util.Map.Entry<String, Object>> json, CorsConfig obj) {
for (java.util.Map.Entry<String, Object> member : json) {
switch (member.getKey()) {
case "allowCredentials":
case "enabled":
if (member.getValue() instanceof Boolean) {
obj.setAllowCredentials((Boolean) member.getValue());
obj.setEnabled((Boolean) member.getValue());
}
break;
case "allowedHeaders":
case "origins":
if (member.getValue() instanceof JsonArray) {
java.util.LinkedHashSet<java.lang.String> list = new java.util.LinkedHashSet<>();
java.util.ArrayList<java.lang.String> list = new java.util.ArrayList<>();
((Iterable<Object>) member.getValue()).forEach(item -> {
if (item instanceof String)
list.add((String) item);
});
obj.setAllowedHeaders(list);
obj.setOrigins(list);
}
break;
case "allowedMethods":
case "relativeOrigins":
if (member.getValue() instanceof JsonArray) {
java.util.LinkedHashSet<java.lang.String> list = new java.util.LinkedHashSet<>();
java.util.ArrayList<java.lang.String> list = new java.util.ArrayList<>();
((Iterable<Object>) member.getValue()).forEach(item -> {
if (item instanceof String)
list.add((String) item);
});
obj.setAllowedMethods(list);
}
break;
case "enabled":
if (member.getValue() instanceof Boolean) {
obj.setEnabled((Boolean) member.getValue());
obj.setRelativeOrigins(list);
}
break;
case "exposedHeaders":
case "allowedMethods":
if (member.getValue() instanceof JsonArray) {
java.util.LinkedHashSet<java.lang.String> list = new java.util.LinkedHashSet<>();
((Iterable<Object>) member.getValue()).forEach(item -> {
if (item instanceof String)
list.add((String) item);
});
obj.setExposedHeaders(list);
}
break;
case "maxAgeSeconds":
if (member.getValue() instanceof Number) {
obj.setMaxAgeSeconds(((Number) member.getValue()).intValue());
obj.setAllowedMethods(list);
}
break;
case "origins":
case "allowedHeaders":
if (member.getValue() instanceof JsonArray) {
java.util.ArrayList<java.lang.String> list = new java.util.ArrayList<>();
java.util.LinkedHashSet<java.lang.String> list = new java.util.LinkedHashSet<>();
((Iterable<Object>) member.getValue()).forEach(item -> {
if (item instanceof String)
list.add((String) item);
});
obj.setOrigins(list);
obj.setAllowedHeaders(list);
}
break;
case "relativeOrigins":
case "exposedHeaders":
if (member.getValue() instanceof JsonArray) {
java.util.ArrayList<java.lang.String> list = new java.util.ArrayList<>();
java.util.LinkedHashSet<java.lang.String> list = new java.util.LinkedHashSet<>();
((Iterable<Object>) member.getValue()).forEach(item -> {
if (item instanceof String)
list.add((String) item);
});
obj.setRelativeOrigins(list);
obj.setExposedHeaders(list);
}
break;
case "maxAgeSeconds":
if (member.getValue() instanceof Number) {
obj.setMaxAgeSeconds(((Number) member.getValue()).intValue());
}
break;
case "allowCredentials":
if (member.getValue() instanceof Boolean) {
obj.setAllowCredentials((Boolean) member.getValue());
}
break;
}
Expand All @@ -93,33 +86,33 @@ static void toJson(CorsConfig obj, JsonObject json) {
}

static void toJson(CorsConfig obj, java.util.Map<String, Object> json) {
json.put("allowCredentials", obj.getAllowCredentials());
if (obj.getAllowedHeaders() != null) {
json.put("enabled", obj.isEnabled());
if (obj.getOrigins() != null) {
JsonArray array = new JsonArray();
obj.getAllowedHeaders().forEach(item -> array.add(item));
json.put("allowedHeaders", array);
obj.getOrigins().forEach(item -> array.add(item));
json.put("origins", array);
}
if (obj.getRelativeOrigins() != null) {
JsonArray array = new JsonArray();
obj.getRelativeOrigins().forEach(item -> array.add(item));
json.put("relativeOrigins", array);
}
if (obj.getAllowedMethods() != null) {
JsonArray array = new JsonArray();
obj.getAllowedMethods().forEach(item -> array.add(item));
json.put("allowedMethods", array);
}
json.put("enabled", obj.isEnabled());
if (obj.getAllowedHeaders() != null) {
JsonArray array = new JsonArray();
obj.getAllowedHeaders().forEach(item -> array.add(item));
json.put("allowedHeaders", array);
}
if (obj.getExposedHeaders() != null) {
JsonArray array = new JsonArray();
obj.getExposedHeaders().forEach(item -> array.add(item));
json.put("exposedHeaders", array);
}
json.put("maxAgeSeconds", obj.getMaxAgeSeconds());
if (obj.getOrigins() != null) {
JsonArray array = new JsonArray();
obj.getOrigins().forEach(item -> array.add(item));
json.put("origins", array);
}
if (obj.getRelativeOrigins() != null) {
JsonArray array = new JsonArray();
obj.getRelativeOrigins().forEach(item -> array.add(item));
json.put("relativeOrigins", array);
}
json.put("allowCredentials", obj.getAllowCredentials());
}
}
41 changes: 17 additions & 24 deletions src/generated/java/io/neonbee/config/EndpointConfigConverter.java
Original file line number Diff line number Diff line change
@@ -1,32 +1,20 @@
package io.neonbee.config;

import java.util.Base64;

import io.vertx.core.json.JsonArray;
import io.vertx.core.json.JsonObject;
import io.vertx.core.json.impl.JsonUtil;

/**
* Converter and mapper for {@link io.neonbee.config.EndpointConfig}. NOTE: This class has been automatically generated
* from the {@link io.neonbee.config.EndpointConfig} original class using Vert.x codegen.
*/
public class EndpointConfigConverter {

private static final Base64.Decoder BASE64_DECODER = JsonUtil.BASE64_DECODER;

private static final Base64.Encoder BASE64_ENCODER = JsonUtil.BASE64_ENCODER;

static void fromJson(Iterable<java.util.Map.Entry<String, Object>> json, EndpointConfig obj) {
for (java.util.Map.Entry<String, Object> member : json) {
switch (member.getKey()) {
case "authChainConfig":
if (member.getValue() instanceof JsonArray) {
java.util.ArrayList<io.neonbee.config.AuthHandlerConfig> list = new java.util.ArrayList<>();
((Iterable<Object>) member.getValue()).forEach(item -> {
if (item instanceof JsonObject)
list.add(new io.neonbee.config.AuthHandlerConfig((io.vertx.core.json.JsonObject) item));
});
obj.setAuthChainConfig(list);
case "type":
if (member.getValue() instanceof String) {
obj.setType((String) member.getValue());
}
break;
case "basePath":
Expand All @@ -39,9 +27,14 @@ static void fromJson(Iterable<java.util.Map.Entry<String, Object>> json, Endpoin
obj.setEnabled((Boolean) member.getValue());
}
break;
case "type":
if (member.getValue() instanceof String) {
obj.setType((String) member.getValue());
case "authChainConfig":
if (member.getValue() instanceof JsonArray) {
java.util.ArrayList<io.neonbee.config.AuthHandlerConfig> list = new java.util.ArrayList<>();
((Iterable<Object>) member.getValue()).forEach(item -> {
if (item instanceof JsonObject)
list.add(new io.neonbee.config.AuthHandlerConfig((io.vertx.core.json.JsonObject) item));
});
obj.setAuthChainConfig(list);
}
break;
}
Expand All @@ -53,19 +46,19 @@ static void toJson(EndpointConfig obj, JsonObject json) {
}

static void toJson(EndpointConfig obj, java.util.Map<String, Object> json) {
if (obj.getAuthChainConfig() != null) {
JsonArray array = new JsonArray();
obj.getAuthChainConfig().forEach(item -> array.add(item.toJson()));
json.put("authChainConfig", array);
if (obj.getType() != null) {
json.put("type", obj.getType());
}
if (obj.getBasePath() != null) {
json.put("basePath", obj.getBasePath());
}
if (obj.isEnabled() != null) {
json.put("enabled", obj.isEnabled());
}
if (obj.getType() != null) {
json.put("type", obj.getType());
if (obj.getAuthChainConfig() != null) {
JsonArray array = new JsonArray();
obj.getAuthChainConfig().forEach(item -> array.add(item.toJson()));
json.put("authChainConfig", array);
}
}
}
Loading
Loading