Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

DATACMNS-263 - Fixed incompatibility with OpenWebbeans < 1.1.8.

Prefer using non-anonymous inner classes to represent @Default and @Any qualifiers. Upgraded to OpenWebbeans 1.1.7 along the way.
  • Loading branch information...
commit 5266a9a0c55e1b4434486f2377b53686cfd122b7 1 parent 3fd47ee
@olivergierke olivergierke authored
View
2  spring-data-commons-core/pom.xml
@@ -15,8 +15,8 @@
<properties>
<querydsl.version>2.8.0</querydsl.version>
<cdi.version>1.0</cdi.version>
- <webbeans.version>1.1.3</webbeans.version>
<jackson.version>1.9.7</jackson.version>
+ <webbeans.version>1.1.7</webbeans.version>
</properties>
<dependencies>
View
23 .../src/main/java/org/springframework/data/repository/cdi/CdiRepositoryExtensionSupport.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2011 the original author or authors.
+ * Copyright 2011-2013 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -94,7 +94,6 @@ private boolean isRepository(Class<?> type) {
/**
* Determines the qualifiers of the given type.
*/
- @SuppressWarnings("serial")
private Set<Annotation> getQualifiers(final Class<?> type) {
Set<Annotation> qualifiers = new HashSet<Annotation>();
@@ -105,14 +104,14 @@ private boolean isRepository(Class<?> type) {
qualifiers.add(annotation);
}
}
+
// Add @Default qualifier if no qualifier is specified.
if (qualifiers.isEmpty()) {
- qualifiers.add(new AnnotationLiteral<Default>() {
- });
+ qualifiers.add(DefaultAnnotationLiteral.INSTANCE);
}
+
// Add @Any qualifier.
- qualifiers.add(new AnnotationLiteral<Any>() {
- });
+ qualifiers.add(AnyAnnotationLiteral.INSTANCE);
return qualifiers;
}
@@ -124,4 +123,16 @@ private boolean isRepository(Class<?> type) {
protected Iterable<Entry<Class<?>, Set<Annotation>>> getRepositoryTypes() {
return repositoryTypes.entrySet();
}
+
+ private static class DefaultAnnotationLiteral extends AnnotationLiteral<Default> implements Default {
+
+ private static final long serialVersionUID = 511359421048623933L;
+ private static final DefaultAnnotationLiteral INSTANCE = new DefaultAnnotationLiteral();
+ }
+
+ private static class AnyAnnotationLiteral extends AnnotationLiteral<Any> implements Any {
+
+ private static final long serialVersionUID = 7261821376671361463L;
+ private static final AnyAnnotationLiteral INSTANCE = new AnyAnnotationLiteral();
+ }
}
Please sign in to comment.
Something went wrong with that request. Please try again.