You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bval.apache.org by st...@apache.org on 2016/10/21 18:48:54 UTC
svn commit: r1766102 - in /bval/trunk: bval-core/
bval-jsr/src/main/java/org/apache/bval/cdi/
bval-jsr/src/main/java/org/apache/bval/jsr/xml/
Author: struberg
Date: Fri Oct 21 18:48:54 2016
New Revision: 1766102
URL: http://svn.apache.org/viewvc?rev=1766102&view=rev
Log:
BVAL-150 special AnnotationLiteral for empty annotations
Added:
bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/EmptyAnnotationLiteral.java
- copied, changed from r1766014, openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/annotation/EmptyAnnotationLiteral.java
Modified:
bval/trunk/bval-core/pom.xml
bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/AnyLiteral.java
bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/BValAnnotatedType.java
bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/DefaultLiteral.java
bval/trunk/bval-jsr/src/main/java/org/apache/bval/jsr/xml/AnnotationProxyBuilder.java
Modified: bval/trunk/bval-core/pom.xml
URL: http://svn.apache.org/viewvc/bval/trunk/bval-core/pom.xml?rev=1766102&r1=1766101&r2=1766102&view=diff
==============================================================================
--- bval/trunk/bval-core/pom.xml (original)
+++ bval/trunk/bval-core/pom.xml Fri Oct 21 18:48:54 2016
@@ -41,11 +41,14 @@
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
+
+ <!-- we only support validation in DynaBeans, but do not use c-beanutils in BVal itself -->
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils-core</artifactId>
<optional>true</optional>
</dependency>
+
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-weaver-privilizer-api</artifactId>
@@ -130,6 +133,7 @@ build.timestamp=${timestamp}
<artifactSet>
<includes>
<include>org.apache.commons:commons-lang3</include>
+ <include>org.apache.commons:commons-lang3</include>
</includes>
</artifactSet>
<filters>
Modified: bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/AnyLiteral.java
URL: http://svn.apache.org/viewvc/bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/AnyLiteral.java?rev=1766102&r1=1766101&r2=1766102&view=diff
==============================================================================
--- bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/AnyLiteral.java (original)
+++ bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/AnyLiteral.java Fri Oct 21 18:48:54 2016
@@ -21,7 +21,7 @@ package org.apache.bval.cdi;
import javax.enterprise.inject.Any;
import javax.enterprise.util.AnnotationLiteral;
-public class AnyLiteral extends AnnotationLiteral<Any> implements Any {
+public class AnyLiteral extends EmptyAnnotationLiteral<Any> implements Any {
private static final long serialVersionUID = 1L;
/**
@@ -33,4 +33,5 @@ public class AnyLiteral extends Annotati
public String toString() {
return "@javax.enterprise.inject.Any()";
}
+
}
Modified: bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/BValAnnotatedType.java
URL: http://svn.apache.org/viewvc/bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/BValAnnotatedType.java?rev=1766102&r1=1766101&r2=1766102&view=diff
==============================================================================
--- bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/BValAnnotatedType.java (original)
+++ bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/BValAnnotatedType.java Fri Oct 21 18:48:54 2016
@@ -98,14 +98,15 @@ public class BValAnnotatedType<A> implem
return false;
}
- public static class BValBindingLiteral extends AnnotationLiteral<BValBinding> implements BValBinding {
+ public static class BValBindingLiteral extends EmptyAnnotationLiteral<BValBinding> implements BValBinding {
private static final long serialVersionUID = 1L;
public static final Annotation INSTANCE = new BValBindingLiteral();
@Override
- public Class<? extends Annotation> annotationType() {
- return BValBinding.class;
+ public String toString() {
+ return "@org.apache.bval.cdi.BValBinding()";
}
+
}
}
Modified: bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/DefaultLiteral.java
URL: http://svn.apache.org/viewvc/bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/DefaultLiteral.java?rev=1766102&r1=1766101&r2=1766102&view=diff
==============================================================================
--- bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/DefaultLiteral.java (original)
+++ bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/DefaultLiteral.java Fri Oct 21 18:48:54 2016
@@ -21,7 +21,7 @@ package org.apache.bval.cdi;
import javax.enterprise.inject.Default;
import javax.enterprise.util.AnnotationLiteral;
-public class DefaultLiteral extends AnnotationLiteral<Default> implements Default {
+public class DefaultLiteral extends EmptyAnnotationLiteral<Default> implements Default {
private static final long serialVersionUID = 1L;
public static final DefaultLiteral INSTANCE = new DefaultLiteral();
Copied: bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/EmptyAnnotationLiteral.java (from r1766014, openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/annotation/EmptyAnnotationLiteral.java)
URL: http://svn.apache.org/viewvc/bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/EmptyAnnotationLiteral.java?p2=bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/EmptyAnnotationLiteral.java&p1=openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/annotation/EmptyAnnotationLiteral.java&r1=1766014&r2=1766102&rev=1766102&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/annotation/EmptyAnnotationLiteral.java (original)
+++ bval/trunk/bval-jsr/src/main/java/org/apache/bval/cdi/EmptyAnnotationLiteral.java Fri Oct 21 18:48:54 2016
@@ -16,15 +16,17 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.webbeans.annotation;
+package org.apache.bval.cdi;
-import javax.enterprise.util.AnnotationLiteral;
import java.lang.annotation.Annotation;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
+import javax.enterprise.util.AnnotationLiteral;
+
/**
* Base class for AnnotationLiterals which have no members.
+ * Taken from Apache OpenWebBeans.
* @param <T>
*/
public abstract class EmptyAnnotationLiteral<T extends Annotation> extends AnnotationLiteral<T>
@@ -54,7 +56,7 @@ public abstract class EmptyAnnotationLit
* Implemented for performance reasons.
* This is needed because an Annotation always returns 0 as hashCode
* if there is no method in it.
- * Contrary to this the generic {@link javax.enterprise.util.AnnotationLiteral#hashCode()}
+ * Contrary to this the generic {@link AnnotationLiteral#hashCode()}
* always does search for methods via reflection and only then returns 0.
* Not very well performing ...
* @return always 0
Modified: bval/trunk/bval-jsr/src/main/java/org/apache/bval/jsr/xml/AnnotationProxyBuilder.java
URL: http://svn.apache.org/viewvc/bval/trunk/bval-jsr/src/main/java/org/apache/bval/jsr/xml/AnnotationProxyBuilder.java?rev=1766102&r1=1766101&r2=1766102&view=diff
==============================================================================
--- bval/trunk/bval-jsr/src/main/java/org/apache/bval/jsr/xml/AnnotationProxyBuilder.java (original)
+++ bval/trunk/bval-jsr/src/main/java/org/apache/bval/jsr/xml/AnnotationProxyBuilder.java Fri Oct 21 18:48:54 2016
@@ -16,6 +16,7 @@
*/
package org.apache.bval.jsr.xml;
+import org.apache.bval.cdi.EmptyAnnotationLiteral;
import org.apache.bval.jsr.ConstraintAnnotationAttributes;
import org.apache.bval.util.reflection.Reflection;
import org.apache.commons.weaver.privilizer.Privileged;
@@ -217,7 +218,7 @@ public final class AnnotationProxyBuilde
}
}
- public static final class ValidAnnotation extends AnnotationLiteral<Valid> implements Valid {
+ public static final class ValidAnnotation extends EmptyAnnotationLiteral<Valid> implements Valid {
private static final long serialVersionUID = 1L;
public static final ValidAnnotation INSTANCE = new ValidAnnotation();