Skip to content

Commit 979d80a

Browse files
committed
Merge branch 'develop' into otlp-logs
2 parents e1c0542 + e62e2fd commit 979d80a

101 files changed

Lines changed: 5368 additions & 636 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

cloud/docker-image/pom.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,12 @@
169169
<version>${project.version}</version>
170170
<scope>runtime</scope>
171171
</dependency>
172+
<dependency>
173+
<groupId>${project.groupId}</groupId>
174+
<artifactId>catalog-apicurio</artifactId>
175+
<version>${project.version}</version>
176+
<scope>runtime</scope>
177+
</dependency>
172178
<dependency>
173179
<groupId>${project.groupId}</groupId>
174180
<artifactId>catalog-inline</artifactId>

cloud/docker-image/src/main/docker/zpm.json.template

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
"io.aklivity.zilla:binding-tcp",
3636
"io.aklivity.zilla:binding-tls",
3737
"io.aklivity.zilla:binding-ws",
38+
"io.aklivity.zilla:catalog-apicurio",
3839
"io.aklivity.zilla:catalog-inline",
3940
"io.aklivity.zilla:catalog-schema-registry",
4041
"io.aklivity.zilla:common",

incubator/binding-asyncapi.spec/src/main/scripts/io/aklivity/zilla/specs/binding/asyncapi/schema/asyncapi.2.6.schema.json renamed to incubator/binding-asyncapi.spec/src/main/scripts/io/aklivity/zilla/specs/binding/asyncapi/schema/asyncapi.2.6.0.schema.json

File renamed without changes.

incubator/binding-asyncapi.spec/src/main/scripts/io/aklivity/zilla/specs/binding/asyncapi/schema/asyncapi.3.0.schema.json renamed to incubator/binding-asyncapi.spec/src/main/scripts/io/aklivity/zilla/specs/binding/asyncapi/schema/asyncapi.3.0.1.schema.json

File renamed without changes.

incubator/binding-asyncapi/pom.xml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,10 @@
208208
</fileMappers>
209209
</artifactItem>
210210
</artifactItems>
211-
<includes>io/aklivity/zilla/specs/binding/asyncapi/schema/*.json</includes>
211+
<includes>io/aklivity/zilla/specs/binding/asyncapi/schema/asyncapi.schema.patch.json,
212+
io/aklivity/zilla/specs/binding/asyncapi/schema/asyncapi.2.6.0.schema.json,
213+
io/aklivity/zilla/specs/binding/asyncapi/schema/asyncapi.3.0.1.schema.json
214+
</includes>
212215
<outputDirectory>${project.build.directory}/classes</outputDirectory>
213216
</configuration>
214217
</execution>

incubator/binding-asyncapi/src/main/java/io/aklivity/zilla/runtime/binding/asyncapi/config/AsyncapiParser.java

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@
2222
import java.util.LinkedList;
2323
import java.util.List;
2424
import java.util.Map;
25+
import java.util.regex.Matcher;
26+
import java.util.regex.Pattern;
2527

2628
import jakarta.json.Json;
2729
import jakarta.json.JsonObject;
@@ -40,13 +42,15 @@
4042

4143
public class AsyncapiParser
4244
{
45+
private static final Pattern VERSION_PATTERN = Pattern.compile("(\\d\\.\\d)\\.\\d+");
46+
4347
private final Map<String, JsonSchema> schemas;
4448

4549
public AsyncapiParser()
4650
{
4751
Map<String, JsonSchema> schemas = new Object2ObjectHashMap<>();
48-
schemas.put("2.6.0", schema("2.6.0"));
49-
schemas.put("3.0.0", schema("3.0.0"));
52+
schemas.put("2.6", schema("2.6.0"));
53+
schemas.put("3.0", schema("3.0.1"));
5054
this.schemas = unmodifiableMap(schemas);
5155
}
5256

@@ -89,35 +93,30 @@ public Asyncapi parse(
8993
private JsonSchema schema(
9094
String version)
9195
{
92-
InputStream schemaInput = null;
96+
final String schemaName = String.format("schema/asyncapi.%s.schema.json", version);
97+
final InputStream schemaInput = AsyncapiBinding.class.getResourceAsStream(schemaName);
9398

94-
if (version.startsWith("2.6"))
95-
{
96-
schemaInput = AsyncapiBinding.class.getResourceAsStream("schema/asyncapi.2.6.schema.json");
97-
}
98-
else if (version.startsWith("3.0"))
99-
{
100-
schemaInput = AsyncapiBinding.class.getResourceAsStream("schema/asyncapi.3.0.schema.json");
101-
}
102-
103-
JsonValidationService service = JsonValidationService.newInstance();
104-
105-
return service.createSchemaReaderFactoryBuilder()
99+
return JsonValidationService.newInstance()
100+
.createSchemaReaderFactoryBuilder()
106101
.withSpecVersionDetection(true)
107102
.build()
108103
.createSchemaReader(schemaInput)
109104
.read();
110105
}
111106

112107
private String detectAsyncApiVersion(
113-
String openapiText)
108+
String asyncapiText)
114109
{
115-
try (JsonReader reader = Json.createReader(new StringReader(openapiText)))
110+
try (JsonReader reader = Json.createReader(new StringReader(asyncapiText)))
116111
{
117112
JsonObject json = reader.readObject();
118113
if (json.containsKey("asyncapi"))
119114
{
120-
return json.getString("asyncapi");
115+
final String versionString = json.getString("asyncapi");
116+
final Matcher matcher = VERSION_PATTERN.matcher(versionString);
117+
118+
final String majorMinorVersion = matcher.matches() ? matcher.group(1) : null;
119+
return majorMinorVersion;
121120
}
122121
else
123122
{

incubator/binding-openapi.spec/src/main/scripts/io/aklivity/zilla/specs/binding/openapi/schema/openapi.3.0.schema.json renamed to incubator/binding-openapi.spec/src/main/scripts/io/aklivity/zilla/specs/binding/openapi/schema/openapi.3.0.3.schema.json

File renamed without changes.

incubator/binding-openapi.spec/src/main/scripts/io/aklivity/zilla/specs/binding/openapi/schema/openapi.3.1.schema.json renamed to incubator/binding-openapi.spec/src/main/scripts/io/aklivity/zilla/specs/binding/openapi/schema/openapi.3.1.0.schema.json

File renamed without changes.

incubator/binding-openapi/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -174,8 +174,8 @@
174174
</artifactItem>
175175
</artifactItems>
176176
<includes>io/aklivity/zilla/specs/binding/openapi/schema/openapi.schema.patch.json,
177-
io/aklivity/zilla/specs/binding/openapi/schema/openapi.3.0.schema.json,
178-
io/aklivity/zilla/specs/binding/openapi/schema/openapi.3.1.schema.json
177+
io/aklivity/zilla/specs/binding/openapi/schema/openapi.3.0.3.schema.json,
178+
io/aklivity/zilla/specs/binding/openapi/schema/openapi.3.1.0.schema.json
179179
</includes>
180180
<outputDirectory>${project.build.directory}/classes</outputDirectory>
181181
</configuration>

incubator/binding-openapi/src/main/java/io/aklivity/zilla/runtime/binding/openapi/config/OpenapiParser.java

Lines changed: 16 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@
2222
import java.util.LinkedList;
2323
import java.util.List;
2424
import java.util.Map;
25+
import java.util.regex.Matcher;
26+
import java.util.regex.Pattern;
2527

2628
import jakarta.json.Json;
2729
import jakarta.json.JsonObject;
@@ -40,13 +42,14 @@
4042

4143
public class OpenapiParser
4244
{
45+
private static final Pattern VERSION_PATTERN = Pattern.compile("(\\d\\.\\d)\\.\\d+");
4346
private final Map<String, JsonSchema> schemas;
4447

4548
public OpenapiParser()
4649
{
4750
Map<String, JsonSchema> schemas = new Object2ObjectHashMap<>();
48-
schemas.put("3.0.0", schema("3.0.0"));
49-
schemas.put("3.1.0", schema("3.1.0"));
51+
schemas.put("3.0", schema("3.0.3"));
52+
schemas.put("3.1", schema("3.1.0"));
5053
this.schemas = unmodifiableMap(schemas);
5154
}
5255

@@ -89,22 +92,12 @@ public Openapi parse(
8992
private JsonSchema schema(
9093
String version)
9194
{
92-
InputStream schemaInput = null;
93-
boolean detect = true;
95+
final String schemaName = String.format("schema/openapi.%s.schema.json", version);
96+
final InputStream schemaInput = OpenapiBinding.class.getResourceAsStream(schemaName);
97+
final boolean detect = !version.startsWith("3.1");
9498

95-
if (version.startsWith("3.0"))
96-
{
97-
schemaInput = OpenapiBinding.class.getResourceAsStream("schema/openapi.3.0.schema.json");
98-
}
99-
else if (version.startsWith("3.1"))
100-
{
101-
schemaInput = OpenapiBinding.class.getResourceAsStream("schema/openapi.3.1.schema.json");
102-
detect = false;
103-
}
104-
105-
JsonValidationService service = JsonValidationService.newInstance();
106-
107-
return service.createSchemaReaderFactoryBuilder()
99+
return JsonValidationService.newInstance()
100+
.createSchemaReaderFactoryBuilder()
108101
.withSpecVersionDetection(detect)
109102
.build()
110103
.createSchemaReader(schemaInput)
@@ -119,7 +112,12 @@ private String detectOpenApiVersion(
119112
JsonObject json = reader.readObject();
120113
if (json.containsKey("openapi"))
121114
{
122-
return json.getString("openapi");
115+
final String versionString = json.getString("openapi");
116+
117+
final Matcher matcher = VERSION_PATTERN.matcher(versionString);
118+
119+
final String majorMinorVersion = matcher.matches() ? matcher.group(1) : null;
120+
return majorMinorVersion;
123121
}
124122
else
125123
{

0 commit comments

Comments
 (0)