You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@unomi.apache.org by js...@apache.org on 2023/05/05 12:27:45 UTC

[unomi] branch UNOMI-777-upgrade-lib-version created (now f250446fe)

This is an automated email from the ASF dual-hosted git repository.

jsinovassinnaik pushed a change to branch UNOMI-777-upgrade-lib-version
in repository https://gitbox.apache.org/repos/asf/unomi.git


      at f250446fe UNOMI-777 : upgrade json-schema-validator version

This branch includes the following new commits:

     new f250446fe UNOMI-777 : upgrade json-schema-validator version

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[unomi] 01/01: UNOMI-777 : upgrade json-schema-validator version

Posted by js...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jsinovassinnaik pushed a commit to branch UNOMI-777-upgrade-lib-version
in repository https://gitbox.apache.org/repos/asf/unomi.git

commit f250446fe6230bc8afc84c6478149a28e380aa82
Author: jsinovassin <js...@jahia.com>
AuthorDate: Fri May 5 14:27:15 2023 +0200

    UNOMI-777 : upgrade json-schema-validator version
---
 extensions/json-schema/services/pom.xml            | 22 ++++++++++++++++++++--
 .../apache/unomi/schema/keyword/ScopeKeyword.java  |  6 +++---
 .../unomi/schema/keyword/ScopeValidator.java       | 18 ++++++++----------
 .../items/page/page.properties.pageInfo.json       |  2 +-
 rest/pom.xml                                       |  6 ++++++
 5 files changed, 38 insertions(+), 16 deletions(-)

diff --git a/extensions/json-schema/services/pom.xml b/extensions/json-schema/services/pom.xml
index 904a367a1..58f3c1afd 100644
--- a/extensions/json-schema/services/pom.xml
+++ b/extensions/json-schema/services/pom.xml
@@ -31,8 +31,8 @@
     <packaging>bundle</packaging>
 
     <properties>
-        <version.schema>1.0.71</version.schema>
-        <version.schema.jackson>2.13.3</version.schema.jackson>
+        <version.schema>1.0.81</version.schema>
+        <version.schema.jackson>2.14.2</version.schema.jackson>
         <version.schema.itu>1.7.0</version.schema.itu>
     </properties>
 
@@ -73,6 +73,12 @@
             <groupId>com.networknt</groupId>
             <artifactId>json-schema-validator</artifactId>
             <version>${version.schema}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.commons</groupId>
+                    <artifactId>commons-lang3</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>com.ethlo.time</groupId>
@@ -98,6 +104,18 @@
             <version>${version.schema.jackson}</version>
             <scope>compile</scope>
         </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.dataformat</groupId>
+            <artifactId>jackson-dataformat-yaml</artifactId>
+            <version>${version.schema.jackson}</version>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.yaml</groupId>
+            <artifactId>snakeyaml</artifactId>
+            <version>1.33</version>
+            <scope>compile</scope>
+        </dependency>
     </dependencies>
 
     <build>
diff --git a/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/keyword/ScopeKeyword.java b/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/keyword/ScopeKeyword.java
index 471a475ab..e771eea6e 100644
--- a/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/keyword/ScopeKeyword.java
+++ b/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/keyword/ScopeKeyword.java
@@ -25,7 +25,7 @@ import org.apache.unomi.api.services.ScopeService;
 
 public class ScopeKeyword extends AbstractKeyword {
 
-    private ScopeService scopeService;
+    private final ScopeService scopeService;
 
     public ScopeKeyword(ScopeService scopeService) {
         super("validateScope");
@@ -34,7 +34,7 @@ public class ScopeKeyword extends AbstractKeyword {
 
     @Override
     public JsonValidator newValidator(String schemaPath, JsonNode schemaNode, JsonSchema parentSchema,
-            ValidationContext validationContext) {
-        return new ScopeValidator(scopeService);
+                                      ValidationContext validationContext) {
+        return new ScopeValidator(schemaPath, schemaNode, parentSchema, validationContext, scopeService);
     }
 }
diff --git a/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/keyword/ScopeValidator.java b/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/keyword/ScopeValidator.java
index 63bc65b29..7e8c9475d 100644
--- a/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/keyword/ScopeValidator.java
+++ b/extensions/json-schema/services/src/main/java/org/apache/unomi/schema/keyword/ScopeValidator.java
@@ -17,9 +17,7 @@
 package org.apache.unomi.schema.keyword;
 
 import com.fasterxml.jackson.databind.JsonNode;
-import com.networknt.schema.AbstractJsonValidator;
-import com.networknt.schema.CustomErrorMessageType;
-import com.networknt.schema.ValidationMessage;
+import com.networknt.schema.*;
 import org.apache.unomi.api.services.ScopeService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -28,13 +26,13 @@ import java.text.MessageFormat;
 import java.util.LinkedHashSet;
 import java.util.Set;
 
-public class ScopeValidator extends AbstractJsonValidator {
+public class ScopeValidator extends BaseJsonValidator implements JsonValidator {
     private static final Logger logger = LoggerFactory.getLogger(ScopeValidator.class);
 
     private ScopeService scopeService;
 
-    public ScopeValidator(ScopeService scopeService) {
-        super("validateScope");
+    public ScopeValidator(String schemaPath, JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext, ScopeService scopeService) {
+        super(schemaPath, schemaNode, parentSchema, null, validationContext);
         this.scopeService = scopeService;
     }
 
@@ -43,11 +41,11 @@ public class ScopeValidator extends AbstractJsonValidator {
         if (logger.isDebugEnabled()) {
             logger.debug("validate( {}, {}, {})", node, rootNode, at);
         }
-        Set<ValidationMessage> errors = new LinkedHashSet();
+        Set<ValidationMessage> errors = new LinkedHashSet<>();
         if (scopeService.getScope(node.textValue()) == null) {
-            errors.add(this.buildValidationMessage(
-                    CustomErrorMessageType.of("1100", new MessageFormat("Unknown scope value at \"{0}\" for value {1}")), at,
-                    node.textValue()));
+            ValidationMessage.Builder builder = new ValidationMessage.Builder();
+            builder.customMessage("Unknown scope value at " + at + " for value " + node.textValue()).format(new MessageFormat("Not used pattern. Message format is required"));
+            errors.add(builder.build());
         }
         return errors;
     }
diff --git a/extensions/json-schema/services/src/main/resources/META-INF/cxs/schemas/items/page/page.properties.pageInfo.json b/extensions/json-schema/services/src/main/resources/META-INF/cxs/schemas/items/page/page.properties.pageInfo.json
index 1c72b4fa3..8468409ba 100644
--- a/extensions/json-schema/services/src/main/resources/META-INF/cxs/schemas/items/page/page.properties.pageInfo.json
+++ b/extensions/json-schema/services/src/main/resources/META-INF/cxs/schemas/items/page/page.properties.pageInfo.json
@@ -66,4 +66,4 @@
     }
   },
   "unevaluatedProperties" : false
-}
\ No newline at end of file
+}
diff --git a/rest/pom.xml b/rest/pom.xml
index 0c104de78..f3438c306 100644
--- a/rest/pom.xml
+++ b/rest/pom.xml
@@ -48,6 +48,12 @@
             <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.dataformat</groupId>
+            <artifactId>jackson-dataformat-yaml</artifactId>
+            <version>${version.jackson.core}</version>
+            <scope>provided</scope>
+        </dependency>
         <dependency>
             <groupId>org.osgi</groupId>
             <artifactId>osgi.core</artifactId>