From fca3252745ad3fd4eada773006ad983d9c3d79e9 Mon Sep 17 00:00:00 2001 From: Kai Hudalla Date: Fri, 19 Sep 2025 08:18:02 +0200 Subject: [PATCH 1/3] Prepare for v3.0.0 release --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 1926a61..2c538a7 100644 --- a/pom.xml +++ b/pom.xml @@ -409,7 +409,7 @@ maven-release-plugin 3.1.1 - false + v@{project.version} release deploy From 52bccad9d67f9bf762d5ffc74bd81e92292852de Mon Sep 17 00:00:00 2001 From: Kai Hudalla Date: Fri, 19 Sep 2025 15:49:33 +0200 Subject: [PATCH 2/3] Make helper methods public in UriValidator --- .../uprotocol/uri/validator/UriValidator.java | 45 ++++++++++++++++--- 1 file changed, 40 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/eclipse/uprotocol/uri/validator/UriValidator.java b/src/main/java/org/eclipse/uprotocol/uri/validator/UriValidator.java index d921e3a..1b76676 100644 --- a/src/main/java/org/eclipse/uprotocol/uri/validator/UriValidator.java +++ b/src/main/java/org/eclipse/uprotocol/uri/validator/UriValidator.java @@ -200,23 +200,58 @@ public static boolean matches(UUri pattern, UUri candidateUri) { matchesResource(pattern, candidateUri); } - static boolean hasWildcardAuthority(UUri uri) { + /** + * Checks if a uProtocol URI contains the wildcard authority. + * + * @param uri The URI to check. + * @return {@code true} if the URI's authority is the wildcard authority. + * @throws NullPointerException if uri is {@code null}. + */ + public static boolean hasWildcardAuthority(UUri uri) { return UriFactory.WILDCARD_AUTHORITY.equals(uri.getAuthorityName()); } - static boolean hasWildcardEntityTypeId(UUri uri) { + /** + * Checks if a uProtocol URI contains the wildcard uEntity type. + * + * @param uri The URI to check. + * @return {@code true} if the URI's uEntity type identifier is the wildcard identifier. + * @throws NullPointerException if uri is {@code null}. + */ + public static boolean hasWildcardEntityTypeId(UUri uri) { return (uri.getUeId() & UriFactory.WILDCARD_ENTITY_TYPE_ID) == UriFactory.WILDCARD_ENTITY_TYPE_ID; } - static boolean hasWildcardEntityInstanceId(UUri uri) { + /** + * Checks if a uProtocol URI contains the wildcard uEntity instance identifier. + * + * @param uri The URI to check. + * @return {@code true} if the URI's uEntity instance identifier is the wildcard identifier. + * @throws NullPointerException if uri is {@code null}. + */ + public static boolean hasWildcardEntityInstanceId(UUri uri) { return (uri.getUeId() & UriFactory.WILDCARD_ENTITY_INSTANCE_ID) == UriFactory.WILDCARD_ENTITY_INSTANCE_ID; } - static boolean hasWildcardEntityVersion(UUri uri) { + /** + * Checks if a uProtocol URI contains the wildcard uEntity major version. + * + * @param uri The URI to check. + * @return {@code true} if the URI's uEntity major version is the wildcard version. + * @throws NullPointerException if uri is {@code null}. + */ + public static boolean hasWildcardEntityVersion(UUri uri) { return uri.getUeVersionMajor() == UriFactory.WILDCARD_ENTITY_VERSION; } - static boolean hasWildcardResourceId(UUri uri) { + /** + * Checks if a uProtocol URI contains the wildcard uEntity resource identifier. + * + * @param uri The URI to check. + * @return {@code true} if the URI's uEntity resource identifier is the wildcard identifier. + * @throws NullPointerException if uri is {@code null}. + */ + public static boolean hasWildcardResourceId(UUri uri) { return uri.getResourceId() == UriFactory.WILDCARD_RESOURCE_ID; } From ca332dcb2841dc4d417e27845220b9eba02bf62e Mon Sep 17 00:00:00 2001 From: Kai Hudalla Date: Fri, 19 Sep 2025 15:50:01 +0200 Subject: [PATCH 3/3] Remove duplicate tests --- .../uri/validator/UriValidatorTest.java | 57 ------------------- 1 file changed, 57 deletions(-) diff --git a/src/test/java/org/eclipse/uprotocol/uri/validator/UriValidatorTest.java b/src/test/java/org/eclipse/uprotocol/uri/validator/UriValidatorTest.java index 5211d21..f2e37e6 100644 --- a/src/test/java/org/eclipse/uprotocol/uri/validator/UriValidatorTest.java +++ b/src/test/java/org/eclipse/uprotocol/uri/validator/UriValidatorTest.java @@ -165,61 +165,4 @@ void testHasWildcard(String uri, boolean shouldSucceed) { assertFalse(UriValidator.hasWildcard(uuri)); } } - - @ParameterizedTest(name = "Test URI matches pattern: {index} {arguments}") - @CsvSource(useHeadersInDisplayName = true, delimiter = '|', textBlock = """ - uri | pattern - /1/1/A1FB | /1/1/A1FB - /1/1/A1FB | //*/1/1/A1FB - /1/1/A1FB | /FFFF/1/A1FB - /1/1/A1FB | //*/FFFF/1/A1FB - /1/1/A1FB | /FFFFFFFF/1/A1FB - /1/1/A1FB | //*/FFFFFFFF/1/A1FB - /1/1/A1FB | /1/FF/A1FB - /1/1/A1FB | //*/1/FF/A1FB - /1/1/A1FB | /1/1/FFFF - /1/1/A1FB | //*/1/1/FFFF - /1/1/A1FB | /FFFFFFFF/FF/FFFF - /1/1/A1FB | //*/FFFFFFFF/FF/FFFF - /10001/1/A1FB | /10001/1/A1FB - /10001/1/A1FB | //*/10001/1/A1FB - /10001/1/A1FB | /FFFFFFFF/1/A1FB - /10001/1/A1FB | //*/FFFFFFFF/1/A1FB - /10001/1/A1FB | /FFFFFFFF/FF/FFFF - /10001/1/A1FB | //*/FFFFFFFF/FF/FFFF - //vcu.my_vin/1/1/A1FB | //vcu.my_vin/1/1/A1FB - //vcu.my_vin/1/1/A1FB | //*/1/1/A1FB - """ - ) - // TODO: replace with Cucumber based test in UuriTests.java - // [utest->dsn~uri-pattern-matching~2] - void testMatchesSucceeds(String uri, String pattern) { - UUri patternUri = UriSerializer.deserialize(pattern); - UUri candidateUri = UriSerializer.deserialize(uri); - assertTrue(UriValidator.matches(patternUri, candidateUri)); - } - - @ParameterizedTest(name = "Test URI does not match pattern: {index} {arguments}") - @CsvSource(useHeadersInDisplayName = true, delimiter = '|', textBlock = """ - uri | pattern - /1/1/A1FB | //mcu1/1/1/A1FB - //vcu.my_vin/1/1/A1FB | //mcu1/1/1/A1FB - //vcu/B1A5/1/A1FB | //vc/FFFFFFFF/FF/FFFF - /B1A5/1/A1FB | //*/25B1/FF/FFFF - /B1A5/1/A1FB | //*/FFFFFFFF/2/FFFF - /B1A5/1/A1FB | //*/FFFFFFFF/FF/ABCD - /B1A5/1/A1FB | /25B1/1/A1FB - /B1A5/1/A1FB | /2B1A5/1/A1FB - /10B1A5/1/A1FB | /40B1A5/1/A1FB - /B1A5/1/A1FB | /B1A5/4/A1FB - /B1A5/1/A1FB | /B1A5/1/90FB - """ - ) - // TODO: replace with Cucumber based test in UuriTests.java - // [utest->dsn~uri-pattern-matching~2] - void testMatchesFails(String uri, String pattern) { - UUri patternUri = UriSerializer.deserialize(pattern); - UUri candidateUri = UriSerializer.deserialize(uri); - assertFalse(UriValidator.matches(patternUri, candidateUri)); - } }