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
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;
}
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));
- }
}