From 4e322a515c169cb5115c456d50506dd074e93261 Mon Sep 17 00:00:00 2001 From: John Fallows Date: Mon, 25 Sep 2023 23:19:44 -0700 Subject: [PATCH 1/2] Integrate inline catalog and json validator with mqtt binding --- .../asyncapi/mqtt/proxy/AsyncApiMqttProxyConfigGenerator.java | 2 +- .../generate/internal/asyncapi/mqtt/proxy/complete/zilla.yaml | 2 +- .../internal/asyncapi/mqtt/proxy/validator/zilla.yaml | 4 ++-- .../aklivity/zilla/runtime/validator/json/JsonValidator.java | 2 +- .../binding/mqtt/internal/stream/MqttServerFactory.java | 2 ++ 5 files changed, 7 insertions(+), 5 deletions(-) diff --git a/incubator/command-generate/src/main/java/io/aklivity/zilla/runtime/command/generate/internal/asyncapi/mqtt/proxy/AsyncApiMqttProxyConfigGenerator.java b/incubator/command-generate/src/main/java/io/aklivity/zilla/runtime/command/generate/internal/asyncapi/mqtt/proxy/AsyncApiMqttProxyConfigGenerator.java index 75feefda02..7f33568b24 100644 --- a/incubator/command-generate/src/main/java/io/aklivity/zilla/runtime/command/generate/internal/asyncapi/mqtt/proxy/AsyncApiMqttProxyConfigGenerator.java +++ b/incubator/command-generate/src/main/java/io/aklivity/zilla/runtime/command/generate/internal/asyncapi/mqtt/proxy/AsyncApiMqttProxyConfigGenerator.java @@ -293,7 +293,7 @@ private CatalogedConfigBuilder injectJsonSchemas( { cataloged .schema() - .schema(schema) + .subject(schema) .build() .build(); } diff --git a/incubator/command-generate/src/test/resources/io/aklivity/zilla/runtime/command/generate/internal/asyncapi/mqtt/proxy/complete/zilla.yaml b/incubator/command-generate/src/test/resources/io/aklivity/zilla/runtime/command/generate/internal/asyncapi/mqtt/proxy/complete/zilla.yaml index f5e35ff9e0..aa948ed9c3 100644 --- a/incubator/command-generate/src/test/resources/io/aklivity/zilla/runtime/command/generate/internal/asyncapi/mqtt/proxy/complete/zilla.yaml +++ b/incubator/command-generate/src/test/resources/io/aklivity/zilla/runtime/command/generate/internal/asyncapi/mqtt/proxy/complete/zilla.yaml @@ -37,7 +37,7 @@ bindings: type: json catalog: catalog0: - - schema: items + - subject: items routes: - exit: mqtt_client0 when: diff --git a/incubator/command-generate/src/test/resources/io/aklivity/zilla/runtime/command/generate/internal/asyncapi/mqtt/proxy/validator/zilla.yaml b/incubator/command-generate/src/test/resources/io/aklivity/zilla/runtime/command/generate/internal/asyncapi/mqtt/proxy/validator/zilla.yaml index 431519fdd0..1b7bd51380 100644 --- a/incubator/command-generate/src/test/resources/io/aklivity/zilla/runtime/command/generate/internal/asyncapi/mqtt/proxy/validator/zilla.yaml +++ b/incubator/command-generate/src/test/resources/io/aklivity/zilla/runtime/command/generate/internal/asyncapi/mqtt/proxy/validator/zilla.yaml @@ -20,8 +20,8 @@ bindings: type: json catalog: catalog0: - - schema: items - - schema: things + - subject: items + - subject: things routes: - exit: mqtt_client0 when: diff --git a/incubator/validator-json/src/main/java/io/aklivity/zilla/runtime/validator/json/JsonValidator.java b/incubator/validator-json/src/main/java/io/aklivity/zilla/runtime/validator/json/JsonValidator.java index a22f486d68..e553b59f34 100644 --- a/incubator/validator-json/src/main/java/io/aklivity/zilla/runtime/validator/json/JsonValidator.java +++ b/incubator/validator-json/src/main/java/io/aklivity/zilla/runtime/validator/json/JsonValidator.java @@ -104,7 +104,7 @@ private boolean validate( else if (catalog != null) { schemaId = handler.resolve(catalog.subject, catalog.version); - if (schemaId > 0) + if (schemaId != 0) { schema = handler.resolve(schemaId); } diff --git a/runtime/binding-mqtt/src/main/java/io/aklivity/zilla/runtime/binding/mqtt/internal/stream/MqttServerFactory.java b/runtime/binding-mqtt/src/main/java/io/aklivity/zilla/runtime/binding/mqtt/internal/stream/MqttServerFactory.java index 18a7fff10d..76324faac0 100644 --- a/runtime/binding-mqtt/src/main/java/io/aklivity/zilla/runtime/binding/mqtt/internal/stream/MqttServerFactory.java +++ b/runtime/binding-mqtt/src/main/java/io/aklivity/zilla/runtime/binding/mqtt/internal/stream/MqttServerFactory.java @@ -945,6 +945,7 @@ private int decodePublish( reasonCode = PAYLOAD_FORMAT_INVALID; server.onDecodeError(traceId, authorization, reasonCode); server.decoder = decodeIgnoreAll; + break decode; } if (mqttPublishHeaderRO.payloadFormat.equals(MqttPayloadFormat.TEXT) && invalidUtf8(payload)) @@ -952,6 +953,7 @@ private int decodePublish( reasonCode = PAYLOAD_FORMAT_INVALID; server.onDecodeError(traceId, authorization, reasonCode); server.decoder = decodeIgnoreAll; + break decode; } boolean canPublish = MqttState.initialOpened(publisher.state); From f8bed7441988b78dfc0c2cd2397ede1444bfe786 Mon Sep 17 00:00:00 2001 From: John Fallows Date: Mon, 11 Dec 2023 20:18:53 -0800 Subject: [PATCH 2/2] Include option to link java.instrument module --- .../manager/internal/commands/install/ZpmInstall.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/manager/src/main/java/io/aklivity/zilla/manager/internal/commands/install/ZpmInstall.java b/manager/src/main/java/io/aklivity/zilla/manager/internal/commands/install/ZpmInstall.java index 85343e48e0..fcba561d66 100644 --- a/manager/src/main/java/io/aklivity/zilla/manager/internal/commands/install/ZpmInstall.java +++ b/manager/src/main/java/io/aklivity/zilla/manager/internal/commands/install/ZpmInstall.java @@ -105,6 +105,11 @@ public final class ZpmInstall extends ZpmCommand description = "Link jdk.jdwp.agent module") public Boolean debug = false; + @Option(name = { "--instrument" }, + description = "Link java.instrument module", + hidden = true) + public Boolean instrument = false; + @Option(name = { "--exclude-local-repository" }, description = "Exclude the local Maven repository") public boolean excludeLocalRepo; @@ -661,6 +666,10 @@ private void linkModules( { extraModuleNames.add("jdk.jdwp.agent"); } + if (instrument) + { + extraModuleNames.add("java.instrument"); + } Stream moduleNames = Stream.concat(modules.stream().map(m -> m.name), extraModuleNames.stream());