You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by kw...@apache.org on 2017/03/03 10:22:41 UTC
svn commit: r1785256 - in /sling/trunk/bundles/extensions/validation:
api/src/main/java/org/apache/sling/validation/spi/
core/src/main/java/org/apache/sling/validation/impl/
Author: kwin
Date: Fri Mar 3 10:22:41 2017
New Revision: 1785256
URL: http://svn.apache.org/viewvc?rev=1785256&view=rev
Log:
make validation result serializable (helps e.g. with teleporter tests)
Added:
sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/CompositeValidationResult.java
- copied, changed from r1785229, sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/CompositeValidationResult.java
Removed:
sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/CompositeValidationResult.java
Modified:
sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/DefaultValidationFailure.java
sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/DefaultValidationResult.java
sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/ValidationResourceVisitor.java
sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/ValidationServiceImpl.java
Copied: sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/CompositeValidationResult.java (from r1785229, sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/CompositeValidationResult.java)
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/CompositeValidationResult.java?p2=sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/CompositeValidationResult.java&p1=sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/CompositeValidationResult.java&r1=1785229&r2=1785256&rev=1785256&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/CompositeValidationResult.java (original)
+++ sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/CompositeValidationResult.java Fri Mar 3 10:22:41 2017
@@ -16,8 +16,9 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.sling.validation.impl;
+package org.apache.sling.validation.spi;
+import java.io.Serializable;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
@@ -27,13 +28,16 @@ import javax.annotation.Nonnull;
import org.apache.sling.validation.ValidationFailure;
import org.apache.sling.validation.ValidationResult;
-import org.apache.sling.validation.spi.DefaultValidationResult;
/**
* Aggregates multiple {@link ValidationResult}s.
*/
-public class CompositeValidationResult implements ValidationResult {
+public class CompositeValidationResult implements ValidationResult, Serializable {
+ /**
+ *
+ */
+ private static final long serialVersionUID = -1019113908128276733L;
private final @Nonnull List<ValidationResult> results;
public CompositeValidationResult() {
Modified: sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/DefaultValidationFailure.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/DefaultValidationFailure.java?rev=1785256&r1=1785255&r2=1785256&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/DefaultValidationFailure.java (original)
+++ sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/DefaultValidationFailure.java Fri Mar 3 10:22:41 2017
@@ -18,6 +18,7 @@
*/
package org.apache.sling.validation.spi;
+import java.io.Serializable;
import java.text.MessageFormat;
import java.util.Arrays;
import java.util.ResourceBundle;
@@ -30,12 +31,16 @@ import org.apache.sling.validation.Valid
* Wraps a message key (being looked up in a {@link ResourceBundle}), messageArguments (being used with {@link MessageFormat#format(String, Object...)}
* and the location where the validation failure occurred.
*/
-public class DefaultValidationFailure implements ValidationFailure {
+public class DefaultValidationFailure implements ValidationFailure, Serializable {
+ /**
+ *
+ */
+ private static final long serialVersionUID = -1748031688917555982L;
private final @Nonnull String location;
private final @Nonnull String messageKey;
private final Object[] messageArguments;
- private final @Nonnull ResourceBundle defaultResourceBundle;
+ private final transient @Nonnull ResourceBundle defaultResourceBundle;
private final int severity;
public final static int DEFAULT_SEVERITY = 0;
@@ -62,12 +67,16 @@ public class DefaultValidationFailure im
this.defaultResourceBundle = defaultResourceBundle;
}
- @SuppressWarnings("null")
+ @SuppressWarnings({ "null", "unused" })
@Override
public @Nonnull String getMessage(ResourceBundle resourceBundle) {
if (resourceBundle == null) {
resourceBundle = defaultResourceBundle;
}
+ if (resourceBundle == null) {
+ // this should only happen if this class was deserialized because there the default resource bundle is missing
+ return "No defaultResourceBundle found to resolve, messageKey = " + messageKey + ", messageArguments: " + Arrays.toString(messageArguments);
+ }
return MessageFormat.format(resourceBundle.getString(messageKey), messageArguments);
}
Modified: sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/DefaultValidationResult.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/DefaultValidationResult.java?rev=1785256&r1=1785255&r2=1785256&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/DefaultValidationResult.java (original)
+++ sling/trunk/bundles/extensions/validation/api/src/main/java/org/apache/sling/validation/spi/DefaultValidationResult.java Fri Mar 3 10:22:41 2017
@@ -18,6 +18,7 @@
*/
package org.apache.sling.validation.spi;
+import java.io.Serializable;
import java.text.MessageFormat;
import java.util.Arrays;
import java.util.Collections;
@@ -33,8 +34,12 @@ import org.apache.sling.validation.Valid
* Default implementation of {@link ValidationResult} wrapping a list of {@link ValidationFailure}s.
*
*/
-public class DefaultValidationResult implements ValidationResult {
+public class DefaultValidationResult implements ValidationResult, Serializable {
+ /**
+ *
+ */
+ private static final long serialVersionUID = -3370520716090956033L;
private final boolean isValid;
private final @Nonnull List<ValidationFailure> failures;
Modified: sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/ValidationResourceVisitor.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/ValidationResourceVisitor.java?rev=1785256&r1=1785255&r2=1785256&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/ValidationResourceVisitor.java (original)
+++ sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/ValidationResourceVisitor.java Fri Mar 3 10:22:41 2017
@@ -27,6 +27,7 @@ import org.apache.sling.api.resource.Res
import org.apache.sling.api.resource.ResourceUtil;
import org.apache.sling.validation.ValidationResult;
import org.apache.sling.validation.model.ValidationModel;
+import org.apache.sling.validation.spi.CompositeValidationResult;
public class ValidationResourceVisitor extends AbstractResourceVisitor {
Modified: sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/ValidationServiceImpl.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/ValidationServiceImpl.java?rev=1785256&r1=1785255&r2=1785256&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/ValidationServiceImpl.java (original)
+++ sling/trunk/bundles/extensions/validation/core/src/main/java/org/apache/sling/validation/impl/ValidationServiceImpl.java Fri Mar 3 10:22:41 2017
@@ -47,6 +47,7 @@ import org.apache.sling.validation.model
import org.apache.sling.validation.model.ParameterizedValidator;
import org.apache.sling.validation.model.ResourceProperty;
import org.apache.sling.validation.model.ValidationModel;
+import org.apache.sling.validation.spi.CompositeValidationResult;
import org.apache.sling.validation.spi.ValidationContext;
import org.apache.sling.validation.spi.Validator;
import org.osgi.framework.ServiceReference;