You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by co...@apache.org on 2012/10/23 16:58:36 UTC

svn commit: r1401308 - in /incubator/syncope/trunk: client/src/main/java/org/apache/syncope/client/validation/ core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/ core/src/main/java/org/apache/syncope/core/rest/data/

Author: coheigea
Date: Tue Oct 23 14:58:35 2012
New Revision: 1401308

URL: http://svn.apache.org/viewvc?rev=1401308&view=rev
Log:
[SYNCOPE-212] - Provide Validation Error message to user 

Modified:
    incubator/syncope/trunk/client/src/main/java/org/apache/syncope/client/validation/SyncopeClientCompositeErrorException.java
    incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/AlwaysTrueValidator.java
    incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/BasicValidator.java
    incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/EmailAddressValidator.java
    incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/InvalidAttrValueException.java
    incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/AbstractAttributableDataBinder.java

Modified: incubator/syncope/trunk/client/src/main/java/org/apache/syncope/client/validation/SyncopeClientCompositeErrorException.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/client/src/main/java/org/apache/syncope/client/validation/SyncopeClientCompositeErrorException.java?rev=1401308&r1=1401307&r2=1401308&view=diff
==============================================================================
--- incubator/syncope/trunk/client/src/main/java/org/apache/syncope/client/validation/SyncopeClientCompositeErrorException.java (original)
+++ incubator/syncope/trunk/client/src/main/java/org/apache/syncope/client/validation/SyncopeClientCompositeErrorException.java Tue Oct 23 14:58:35 2012
@@ -77,12 +77,17 @@ public class SyncopeClientCompositeError
         StringBuilder message = new StringBuilder();
 
         message.append("{");
-        for (SyncopeClientException e : getExceptions()) {
+        Iterator<SyncopeClientException> iter = getExceptions().iterator();
+        while (iter.hasNext()) {
+            SyncopeClientException e = iter.next();
             message.append("[");
             message.append(e.getType());
             message.append(" ");
             message.append(e.getElements());
-            message.append("], ");
+            message.append("]");
+            if (iter.hasNext()) {
+                message.append(", ");
+            }
         }
         message.append("}");
 

Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/AlwaysTrueValidator.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/AlwaysTrueValidator.java?rev=1401308&r1=1401307&r2=1401308&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/AlwaysTrueValidator.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/AlwaysTrueValidator.java Tue Oct 23 14:58:35 2012
@@ -33,7 +33,8 @@ public class AlwaysTrueValidator extends
 
         Boolean value = attributeValue.getValue();
         if (!value) {
-            throw new InvalidAttrValueException(attributeValue);
+            String error = "This attribute must be set to \"true\"";
+            throw new InvalidAttrValueException(error);
         }
     }
 }

Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/BasicValidator.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/BasicValidator.java?rev=1401308&r1=1401307&r2=1401308&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/BasicValidator.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/BasicValidator.java Tue Oct 23 14:58:35 2012
@@ -18,6 +18,8 @@
  */
 package org.apache.syncope.core.persistence.validation.attrvalue;
 
+import java.util.Arrays;
+
 import org.apache.syncope.core.persistence.beans.AbstractSchema;
 import org.apache.syncope.core.persistence.beans.AbstractAttrValue;
 import org.apache.syncope.types.SchemaType;
@@ -47,7 +49,8 @@ public class BasicValidator extends Abst
             }
 
             if (!found) {
-                throw new InvalidAttrValueException(attributeValue);
+                String error = "\"" + value + "\" is not one of: " + Arrays.toString(enumeration);
+                throw new InvalidAttrValueException(error);
             }
         }
     }

Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/EmailAddressValidator.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/EmailAddressValidator.java?rev=1401308&r1=1401307&r2=1401308&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/EmailAddressValidator.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/EmailAddressValidator.java Tue Oct 23 14:58:35 2012
@@ -37,7 +37,8 @@ public class EmailAddressValidator exten
 
         Matcher matcher = EMAIL_PATTERN.matcher((CharSequence) attributeValue.getValue());
         if (!matcher.matches()) {
-            throw new InvalidAttrValueException(attributeValue);
+            String error = "\"" + attributeValue.getValue() + "\" is not a valid email address";
+            throw new InvalidAttrValueException(error);
         }
     }
 }

Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/InvalidAttrValueException.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/InvalidAttrValueException.java?rev=1401308&r1=1401307&r2=1401308&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/InvalidAttrValueException.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/InvalidAttrValueException.java Tue Oct 23 14:58:35 2012
@@ -22,12 +22,20 @@ import javax.validation.ValidationExcept
 import org.apache.syncope.core.persistence.beans.AbstractAttrValue;
 
 public class InvalidAttrValueException extends ValidationException {
+    
+    public InvalidAttrValueException(String errorMessage) {
+        super(errorMessage);
+    }
+    
+    public InvalidAttrValueException(String errorMessage, Throwable t) {
+        super(errorMessage, t);
+    }
 
     public InvalidAttrValueException(final AbstractAttrValue value) {
-        super("Could not validate " + value);
+        this("Could not validate " + value.getValue());
     }
 
     public InvalidAttrValueException(final AbstractAttrValue value, Throwable t) {
-        super("Could not validate " + value, t);
+        this("Could not validate " + value.getValue(), t);
     }
 }

Modified: incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/AbstractAttributableDataBinder.java
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/AbstractAttributableDataBinder.java?rev=1401308&r1=1401307&r2=1401308&view=diff
==============================================================================
--- incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/AbstractAttributableDataBinder.java (original)
+++ incubator/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/AbstractAttributableDataBinder.java Tue Oct 23 14:58:35 2012
@@ -196,7 +196,8 @@ public abstract class AbstractAttributab
                 } catch (ValidationException e) {
                     LOG.error("Invalid value for attribute " + schema.getName() + ": " + value, e);
 
-                    invalidValues.addElement(schema.getName() + ": " + value);
+                    invalidValues.addElement(schema.getName() + ": " + value 
+                            + " - " + e.getMessage());
                 }
             }
         }