Skip to content

Commit 0a118f4

Browse files
Upgrade Milo OPC UA (#1005)
* Type conversions are working * Intermediate state, working on OpcUaSubscriptionConsumer * Adapter is building, fix EmbeddedOpcUaServerExtension next * EmbeddedOpcUaServerExtension building, all tests fail * Most of embedded server working * Fixed TLS * javax->jakarta Reading working completely. Most of writing is working. * All features from the old version are now working with the new version * Fix test server security, fix client * upgrade Modbus digitalpetri library --------- Co-authored-by: Jochen Mader <[email protected]>
1 parent 1761ef9 commit 0a118f4

File tree

394 files changed

+4306
-4664
lines changed

Some content is hidden

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

394 files changed

+4306
-4664
lines changed

build.gradle.kts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
group = "com.hivemq"
22

33
plugins {
4-
idea
54
id("com.hivemq.edge-version-updater")
65
id("com.hivemq.repository-convention")
76
id("io.github.sgtsilvio.gradle.oci") version "0.22.0"

edge-plugins/src/main/kotlin/com/hivemq/licensethirdparty/UpdateThirdPartyLicensesTask.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ abstract class UpdateThirdPartyLicensesTask : DefaultTask() {
124124
name.matches("(.*BSD.*3.*[Cc]lause.*)|(.*3.*[Cc]lause.*BSD.*)|(.*[Nn]ew.*BSD.*)|(.*BSD.*[Nn]ew.*)".toRegex()) || (url == "https://opensource.org/licenses/BSD-3-Clause") -> KnownLicense.BSD_3_CLAUSE
125125
name == "CC0" -> KnownLicense.CC0_1_0
126126
url == "https://glassfish.dev.java.net/public/CDDLv1.0.html" -> KnownLicense.CDDL_1_0
127-
(url == "https://oss.oracle.com/licenses/CDDL+GPL-1.1") || (url == "https://github.com/javaee/javax.annotation/blob/master/LICENSE") || (url == "https://glassfish.java.net/public/CDDL+GPL_1_1.html") -> KnownLicense.CDDL_1_1
127+
(url == "https://oss.oracle.com/licenses/CDDL+GPL-1.1") || (url == "https://github.com/javaee/jakarta.annotation/blob/master/LICENSE") || (url == "https://glassfish.java.net/public/CDDL+GPL_1_1.html") -> KnownLicense.CDDL_1_1
128128
url == "http://www.opensource.org/licenses/cddl1.php" -> KnownLicense.CDDL_1_0
129129
name.matches(".*(EDL|Eclipse.*Distribution.*License).*1\\.0.*".toRegex()) -> KnownLicense.EDL_1_0
130130
name.matches(".*(EPL|Eclipse.*Public.*License).*1\\.0.*".toRegex()) -> KnownLicense.EPL_1_0

gradle/libs.versions.toml

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,10 @@ bouncycastle = "1.80"
99
byteBuddy = "1.17.5"
1010
concurrentUnit = "0.4.6"
1111
dagger = "2.56.2"
12+
digitalpetri-modbus-tcp = "2.1.0"
1213
dropwizard-metrics = "4.2.32"
1314
equalsVerifier = "3.19.4"
15+
errorprone = "2.38.0"
1416
future-converter = "1.2.0"
1517
guava = "32.1.3-jre"
1618
hikari = "6.2.1"
@@ -23,19 +25,18 @@ jackson = "2.18.3"
2325
jacoco = "0.8.11"
2426
jsonSchemaInferrer = "0.2.1"
2527
javassist = "3.30.2-GA"
26-
javax-annotation-api = "1.3.2"
28+
jakarta-annotation-api = "2.1.1"
2729
jaxb2 = "2.3.9"
2830
jaxb4-bind = "4.0.2"
2931
jaxb4-impl = "4.0.5"
3032
jctools = "4.0.5"
31-
jersey = "2.46"
33+
jersey = "3.1.10"
3234
jose4j = "0.9.6"
3335
jsonSchemaValidator = "1.5.7"
3436
junit-jupiter = "5.13.1"
3537
logback = "1.5.18"
36-
milo = "0.6.15"
38+
milo = "1.0.0"
3739
mockito = "5.17.0"
38-
modbus = "1.2.2"
3940
mqtt-sn-codec = "838f51d691"
4041
mssql="12.8.1.jre11"
4142
mtconnect-protocol = "1.0.0"
@@ -68,12 +69,13 @@ byteBuddy = { module = "net.bytebuddy:byte-buddy", version.ref = "byteBuddy" }
6869
concurrentUnit = { module = "net.jodah:concurrentunit", version.ref = "concurrentUnit" }
6970
dagger = { module = "com.google.dagger:dagger", version.ref = "dagger" }
7071
dagger-compiler = { module = "com.google.dagger:dagger-compiler", version.ref = "dagger" }
71-
digitalpetri-modbus-master-tcp = { module = "com.digitalpetri.modbus:modbus-master-tcp", version.ref = "modbus" }
72+
digitalpetri-modbus-tcp = { module = "com.digitalpetri.modbus:modbus-tcp", version.ref ="digitalpetri-modbus-tcp" }
7273
dropwizard-metrics = { module = "io.dropwizard.metrics:metrics-core", version.ref = "dropwizard-metrics" }
7374
dropwizard-metrics-jmx = { module = "io.dropwizard.metrics:metrics-jmx", version.ref = "dropwizard-metrics" }
7475
dropwizard-metrics-jvm = { module = "io.dropwizard.metrics:metrics-jvm", version.ref = "dropwizard-metrics" }
7576
dropwizard-metrics-logback = { module = "io.dropwizard.metrics:metrics-logback", version.ref = "dropwizard-metrics" }
7677
equalsVerifier = { module = "nl.jqno.equalsverifier:equalsverifier", version.ref = "equalsVerifier" }
78+
errorprone = { module = "com.google.errorprone:error_prone_core", version.ref = "errorprone" }
7779
jsonSchemaInferrer = { module = "com.github.saasquatch:json-schema-inferrer", version.ref = "jsonSchemaInferrer" }
7880
jersey-container-jdk-http = { module = "org.glassfish.jersey.containers:jersey-container-jdk-http", version.ref = "jersey" }
7981
jersey-hk2 = { module = "org.glassfish.jersey.inject:jersey-hk2", version.ref = "jersey" }
@@ -90,10 +92,10 @@ jackson-databind = { module = "com.fasterxml.jackson.core:jackson-databind", ver
9092
jackson-databind-nullable = { module = "org.openapitools:jackson-databind-nullable", version.ref = "jacksonDatabindNullable" }
9193
jackson-dataformat-xml = { module = "com.fasterxml.jackson.dataformat:jackson-dataformat-xml", version.ref = "jackson" }
9294
jackson-datatype-jsr310 = { module = "com.fasterxml.jackson.datatype:jackson-datatype-jsr310", version.ref = "jackson" }
93-
jackson-jaxrs-json-provider = { module = "com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider", version.ref = "jackson" }
95+
jackson-jaxrs-json-provider = { module = "com.fasterxml.jackson.jakarta.rs:jackson-jakarta-rs-json-provider", version.ref = "jackson" }
9496
javacrumbs-futureConverter = { module = "net.javacrumbs.future-converter:future-converter-java8-guava", version.ref = "future-converter" }
9597
javassist = { module = "org.javassist:javassist", version.ref = "javassist" }
96-
javax-annotation-api = { module = "javax.annotation:javax.annotation-api", version.ref = "javax-annotation-api" }
98+
jakarta-annotation-api = { module = "jakarta.annotation:jakarta.annotation-api", version.ref = "jakarta-annotation-api" }
9799
jaxb2-impl = { module = "com.sun.xml.bind:jaxb-impl", version.ref = "jaxb2" }
98100
jaxb4-bind = { module = "jakarta.xml.bind:jakarta.xml.bind-api", version.ref = "jaxb4-bind" }
99101
jaxb4-impl = { module = "org.glassfish.jaxb:jaxb-runtime", version.ref = "jaxb4-impl" }
@@ -104,10 +106,14 @@ julToSlf4j = { module = "org.slf4j:jul-to-slf4j", version.ref = "slf4j" }
104106
junit-bom = { module = "org.junit:junit-bom", version.ref = "junit-jupiter" }
105107
junit-jupiter = { module = "org.junit.jupiter:junit-jupiter", version.ref = "junit-jupiter" }
106108
logback-classic = { module = "ch.qos.logback:logback-classic", version.ref = "logback" }
107-
milo-bsdParserGson = { module = "org.eclipse.milo:bsd-parser-gson", version.ref = "milo" }
108-
milo-client = { module = "org.eclipse.milo:sdk-client", version.ref = "milo" }
109-
milo-dictionaryReader = { module = "org.eclipse.milo:dictionary-reader", version.ref = "milo" }
110-
milo-server = { module = "org.eclipse.milo:sdk-server", version.ref = "milo" }
109+
110+
milo-client = { module = "org.eclipse.milo:milo-sdk-client", version.ref = "milo" }
111+
milo-server = { module = "org.eclipse.milo:milo-sdk-server", version.ref = "milo" }
112+
milo-encoding-json = { module = "org.eclipse.milo:milo-encoding-json", version.ref = "milo" }
113+
milo-encoding-xml = { module = "org.eclipse.milo:milo-encoding-xml", version.ref = "milo" }
114+
milo-dtd-reader = { module = "org.eclipse.milo:milo-dtd-reader", version.ref = "milo" }
115+
milo-dtd-manager = { module = "org.eclipse.milo:milo-dtd-manager", version.ref = "milo" }
116+
111117
mockito-junitJupiter = { module = "org.mockito:mockito-junit-jupiter", version.ref = "mockito" }
112118
mqtt-sn-codec = { module = "com.github.simon622.mqtt-sn:mqtt-sn-codec", version.ref = "mqtt-sn-codec" }
113119
mssql= { module = "com.microsoft.sqlserver:mssql-jdbc", version.ref = "mssql" }
@@ -141,6 +147,7 @@ zeroAllocationHashing = { module = "net.openhft:zero-allocation-hashing", versio
141147
[plugins]
142148
cyclonedx = { id = "org.cyclonedx.bom", version = "1.10.0" }
143149
defaults = { id = "io.github.sgtsilvio.gradle.defaults", version = "0.2.0" }
150+
errorprone = { id = "net.ltgt.errorprone", version = "4.2.0" }
144151
metadata = { id = "io.github.sgtsilvio.gradle.metadata", version = "0.6.0" }
145152
javadocLinks = { id = "io.github.sgtsilvio.gradle.javadoc-links", version = "0.8.0" }
146153
githubRelease = { id = "com.github.breadmoirai.github-release", version = "2.5.2" }

hivemq-edge/build.gradle.kts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ buildscript {
2121

2222
plugins {
2323
java
24-
idea
2524
`java-library`
2625
`maven-publish`
2726
signing
@@ -150,7 +149,7 @@ dependencies {
150149
implementation(libs.dagger)
151150
annotationProcessor(libs.dagger.compiler)
152151

153-
implementation(libs.javax.annotation.api)
152+
implementation(libs.jakarta.annotation.api)
154153

155154
// common
156155
implementation(libs.apache.commonsIO)
@@ -249,6 +248,8 @@ tasks.test {
249248
"--add-opens",
250249
"java.base/java.util=ALL-UNNAMED",
251250
"--add-opens",
251+
"java.xml/javax.xml.namespace=ALL-UNNAMED",
252+
"--add-opens",
252253
"jdk.management/com.sun.management.internal=ALL-UNNAMED",
253254
"--add-exports",
254255
"java.base/jdk.internal.misc=ALL-UNNAMED"
@@ -280,6 +281,7 @@ tasks.register<GenerateTask>("genJaxRs") {
280281
generateApiTests.set(false)
281282
configOptions.set(
282283
hashMapOf(
284+
"useJakartaEe" to "true",
283285
"dateLibrary" to "java8",
284286
"generateBuilders" to "true",
285287
"generatePom" to "false",

hivemq-edge/src/distribution/third-party-licenses/licenses

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@ Library | License
5050
jakarta.validation:jakarta.validation-api | Apache License, Version 2.0 | https://opensource.org/licenses/Apache-2.0 |
5151
jakarta.ws.rs:jakarta.ws.rs-api | EPL, Version 2.0 | https://opensource.org/licenses/EPL-2.0 |
5252
jakarta.xml.bind:jakarta.xml.bind-api | EDL, Version 1.0 | https://www.eclipse.org/org/documents/edl-v10.php |
53-
javax.annotation:javax.annotation-api | CDDL, Version 1.1 | https://oss.oracle.com/licenses/CDDL+GPL-1.1 |
54-
javax.inject:javax.inject | Apache License, Version 2.0 | https://opensource.org/licenses/Apache-2.0 |
53+
jakarta.annotation:jakarta.annotation-api | CDDL, Version 1.1 | https://oss.oracle.com/licenses/CDDL+GPL-1.1 |
54+
jakarta.inject:jakarta.inject | Apache License, Version 2.0 | https://opensource.org/licenses/Apache-2.0 |
5555
net.bytebuddy:byte-buddy | Apache License, Version 2.0 | https://opensource.org/licenses/Apache-2.0 |
5656
net.javacrumbs.future-converter:future-converter-common | Apache License, Version 2.0 | https://opensource.org/licenses/Apache-2.0 |
5757
net.javacrumbs.future-converter:future-converter-guava-common | Apache License, Version 2.0 | https://opensource.org/licenses/Apache-2.0 |

hivemq-edge/src/distribution/third-party-licenses/licenses.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -282,13 +282,13 @@ <h2>Third Party Licenses</h2>
282282
</p></td>
283283
<td><p></p></td>
284284
</tr><tr>
285-
<td><p>javax.annotation:javax.annotation-api</p></td>
285+
<td><p>jakarta.annotation:jakarta.annotation-api</p></td>
286286
<td><p>CDDL, Version 1.1</p></td>
287287
<td><p><a href="https://oss.oracle.com/licenses/CDDL+GPL-1.1">https://oss.oracle.com/licenses/CDDL+GPL-1.1</a>
288288
</p></td>
289289
<td><p></p></td>
290290
</tr><tr>
291-
<td><p>javax.inject:javax.inject</p></td>
291+
<td><p>jakarta.inject:jakarta.inject</p></td>
292292
<td><p>Apache License, Version 2.0</p></td>
293293
<td><p><a href="https://opensource.org/licenses/Apache-2.0">https://opensource.org/licenses/Apache-2.0</a>
294294
</p></td>

hivemq-edge/src/main/java/com/hivemq/HiveMQEdgeGateway.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
import org.jetbrains.annotations.NotNull;
3030
import org.jetbrains.annotations.Nullable;
3131

32-
import javax.inject.Inject;
32+
import jakarta.inject.Inject;
3333
import java.util.List;
3434

3535
public class HiveMQEdgeGateway {

hivemq-edge/src/main/java/com/hivemq/api/AbstractApi.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@
2121
import org.slf4j.Logger;
2222
import org.slf4j.LoggerFactory;
2323

24-
import javax.ws.rs.container.ResourceContext;
25-
import javax.ws.rs.core.Context;
26-
import javax.ws.rs.core.HttpHeaders;
27-
import javax.ws.rs.core.SecurityContext;
28-
import javax.ws.rs.core.UriInfo;
24+
import jakarta.ws.rs.container.ResourceContext;
25+
import jakarta.ws.rs.core.Context;
26+
import jakarta.ws.rs.core.HttpHeaders;
27+
import jakarta.ws.rs.core.SecurityContext;
28+
import jakarta.ws.rs.core.UriInfo;
2929
import java.net.http.HttpRequest;
3030
import java.security.Principal;
3131

hivemq-edge/src/main/java/com/hivemq/api/ApiResourceRegistry.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,8 @@
4646
import org.glassfish.jersey.server.ResourceConfig;
4747
import org.slf4j.LoggerFactory;
4848

49-
import javax.inject.Inject;
50-
import javax.inject.Singleton;
49+
import jakarta.inject.Inject;
50+
import jakarta.inject.Singleton;
5151
import java.util.Set;
5252
import java.util.logging.Level;
5353
import java.util.logging.LogRecord;

hivemq-edge/src/main/java/com/hivemq/api/CustomJsonProvider.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,16 @@
1818
import com.fasterxml.jackson.annotation.JsonInclude;
1919
import com.fasterxml.jackson.databind.MapperFeature;
2020
import com.fasterxml.jackson.databind.ObjectMapper;
21-
import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
21+
import com.fasterxml.jackson.jakarta.rs.json.JacksonJsonProvider;
2222
import org.jetbrains.annotations.NotNull;
2323

24-
import javax.ws.rs.Produces;
25-
import javax.ws.rs.core.MediaType;
26-
import javax.ws.rs.ext.Provider;
24+
import jakarta.ws.rs.Produces;
25+
import jakarta.ws.rs.core.MediaType;
26+
import jakarta.ws.rs.ext.Provider;
2727

2828
@Provider
2929
@Produces(MediaType.APPLICATION_JSON)
30-
public class CustomJsonProvider extends JacksonJaxbJsonProvider {
30+
public class CustomJsonProvider extends JacksonJsonProvider {
3131

3232
private static final @NotNull ObjectMapper mapper = new ObjectMapper();
3333

0 commit comments

Comments
 (0)