You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2015/01/29 08:32:27 UTC
[1/3] wicket git commit: WICKET-5808 Add support for extracting the
generic element for List/Set/Map subtypes
Repository: wicket
Updated Branches:
refs/heads/master 6d0eae5f4 -> 3a36b0a23
WICKET-5808 Add support for extracting the generic element for List/Set/Map subtypes
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/cc075e9c
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/cc075e9c
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/cc075e9c
Branch: refs/heads/master
Commit: cc075e9c25050ff8b9153d2b759f9c6d783c22f1
Parents: 6d0eae5
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Thu Jan 29 00:28:46 2015 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Thu Jan 29 00:28:46 2015 +0200
----------------------------------------------------------------------
.../apache/wicket/spring/SpringBeanLocator.java | 8 ++---
.../wicket/spring/FieldBeansCollectorTest.java | 18 +++++-----
.../annot/SpringBeanWithGenericsTest.java | 35 ++++++++++++++++++--
3 files changed, 45 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/cc075e9c/wicket-spring/src/main/java/org/apache/wicket/spring/SpringBeanLocator.java
----------------------------------------------------------------------
diff --git a/wicket-spring/src/main/java/org/apache/wicket/spring/SpringBeanLocator.java b/wicket-spring/src/main/java/org/apache/wicket/spring/SpringBeanLocator.java
index 1f51ef9..60ccbfa 100644
--- a/wicket-spring/src/main/java/org/apache/wicket/spring/SpringBeanLocator.java
+++ b/wicket-spring/src/main/java/org/apache/wicket/spring/SpringBeanLocator.java
@@ -137,7 +137,7 @@ public class SpringBeanLocator implements IProxyTargetLocator
/**
* If the field type is a collection (Map, Set or List) extracts type
- * informations about its elements.
+ * information about its elements.
*
* @param fieldResolvableType
* the resolvable type of the field
@@ -147,13 +147,13 @@ public class SpringBeanLocator implements IProxyTargetLocator
{
Class<?> clazz = fieldResolvableType.resolve();
- if (clazz == Set.class || clazz == List.class)
+ if (Set.class.isAssignableFrom(clazz) || List.class.isAssignableFrom(clazz))
{
return fieldResolvableType.getGeneric();
}
- else if (clazz == Map.class)
+ else if (Map.class.isAssignableFrom(clazz))
{
- return fieldResolvableType.getGeneric(1);
+ return fieldResolvableType.getGeneric(1);
}
return null;
http://git-wip-us.apache.org/repos/asf/wicket/blob/cc075e9c/wicket-spring/src/test/java/org/apache/wicket/spring/FieldBeansCollectorTest.java
----------------------------------------------------------------------
diff --git a/wicket-spring/src/test/java/org/apache/wicket/spring/FieldBeansCollectorTest.java b/wicket-spring/src/test/java/org/apache/wicket/spring/FieldBeansCollectorTest.java
index 4a20d44..62597f4 100644
--- a/wicket-spring/src/test/java/org/apache/wicket/spring/FieldBeansCollectorTest.java
+++ b/wicket-spring/src/test/java/org/apache/wicket/spring/FieldBeansCollectorTest.java
@@ -29,28 +29,28 @@ import org.springframework.core.ResolvableType;
public class FieldBeansCollectorTest
{
public List<List<String>> listOfStringList;
-
+
public List genericList;
-
+
@Test
public void resolveGenericList() throws Exception
{
Field field = getClass().getField("listOfStringList");
ResolvableType resolvableType = ResolvableType.forField(field);
-
+
FieldBeansCollector fieldBeansCollector = new FieldBeansCollector(resolvableType);
-
- assertTrue(fieldBeansCollector.getFieldType() == FieldType.LIST);
+
+ assertTrue(fieldBeansCollector.getFieldType() == FieldType.LIST);
}
-
+
@Test
public void resolveRowList() throws Exception
{
Field field = getClass().getField("genericList");
-
+
ResolvableType resolvableType = ResolvableType.forField(field);
FieldBeansCollector fieldBeansCollector = new FieldBeansCollector(resolvableType);
-
+
assertTrue(fieldBeansCollector.getFieldType() == FieldType.LIST);
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/wicket/blob/cc075e9c/wicket-spring/src/test/java/org/apache/wicket/spring/injection/annot/SpringBeanWithGenericsTest.java
----------------------------------------------------------------------
diff --git a/wicket-spring/src/test/java/org/apache/wicket/spring/injection/annot/SpringBeanWithGenericsTest.java b/wicket-spring/src/test/java/org/apache/wicket/spring/injection/annot/SpringBeanWithGenericsTest.java
index 782dc00..245cf90 100644
--- a/wicket-spring/src/test/java/org/apache/wicket/spring/injection/annot/SpringBeanWithGenericsTest.java
+++ b/wicket-spring/src/test/java/org/apache/wicket/spring/injection/annot/SpringBeanWithGenericsTest.java
@@ -16,6 +16,11 @@
*/
package org.apache.wicket.spring.injection.annot;
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.CoreMatchers.notNullValue;
+
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
@@ -89,13 +94,12 @@ public class SpringBeanWithGenericsTest extends Assert
tester.startPage(new AnnotatedMapOfBeanGenericQualifier());
Map<String, BeanWithGeneric<?>> beans = page.getBeans();
-
+
assertNotNull(beans);
assertEquals(2, beans.size());
-
+
assertTrue(beans.containsKey("stringBean"));
assertTrue(beans.containsKey("integerBean"));
-
}
@Test
@@ -121,6 +125,13 @@ public class SpringBeanWithGenericsTest extends Assert
assertNotNull(page.getStringsList());
assertEquals(3, page.getStringsList().size());
+
+ ArrayList<String> arrayListStrings = page.getArrayListStrings();
+ assertThat(arrayListStrings, is(notNullValue()));
+ assertThat(arrayListStrings.size(), is(3));
+ assertThat(arrayListStrings.get(0), is(equalTo("one")));
+ assertThat(arrayListStrings.get(1), is(equalTo("two")));
+ assertThat(arrayListStrings.get(2), is(equalTo("three")));
}
@Test
@@ -197,6 +208,14 @@ public class SpringBeanWithGenericsTest extends Assert
{
return stringsList;
}
+
+ @SpringBean
+ private ArrayList<String> arrayListStrings;
+
+ public ArrayList<String> getArrayListStrings()
+ {
+ return arrayListStrings;
+ }
}
@Configuration
@@ -219,5 +238,15 @@ public class SpringBeanWithGenericsTest extends Assert
{
return Arrays.asList("foo", "bar", "baz");
}
+
+ @Bean
+ public ArrayList<String> arrayListStrings()
+ {
+ ArrayList<String> arrayList = new ArrayList();
+ arrayList.add("one");
+ arrayList.add("two");
+ arrayList.add("three");
+ return arrayList;
+ }
}
}
[3/3] wicket git commit: WICKET-5808 Add more unit tests
Posted by mg...@apache.org.
WICKET-5808 Add more unit tests
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/3a36b0a2
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/3a36b0a2
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/3a36b0a2
Branch: refs/heads/master
Commit: 3a36b0a234a559f952ac0893a9de5326c86059de
Parents: 4b62ed0
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Thu Jan 29 09:30:08 2015 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Thu Jan 29 09:30:08 2015 +0200
----------------------------------------------------------------------
.../annot/SpringBeanWithGenericsTest.java | 76 +++++++++++++++++++-
1 file changed, 75 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/3a36b0a2/wicket-spring/src/test/java/org/apache/wicket/spring/injection/annot/SpringBeanWithGenericsTest.java
----------------------------------------------------------------------
diff --git a/wicket-spring/src/test/java/org/apache/wicket/spring/injection/annot/SpringBeanWithGenericsTest.java b/wicket-spring/src/test/java/org/apache/wicket/spring/injection/annot/SpringBeanWithGenericsTest.java
index 245cf90..f5e57e1 100644
--- a/wicket-spring/src/test/java/org/apache/wicket/spring/injection/annot/SpringBeanWithGenericsTest.java
+++ b/wicket-spring/src/test/java/org/apache/wicket/spring/injection/annot/SpringBeanWithGenericsTest.java
@@ -17,6 +17,7 @@
package org.apache.wicket.spring.injection.annot;
import static org.hamcrest.CoreMatchers.equalTo;
+import static org.hamcrest.CoreMatchers.hasItem;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.notNullValue;
@@ -86,6 +87,21 @@ public class SpringBeanWithGenericsTest extends Assert
assertTrue(beans.contains(ctx.getBean("stringBean")));
assertTrue(beans.contains(ctx.getBean("integerBean")));
}
+
+ @Test
+ public void listOfStringGenerics() throws Exception
+ {
+ AnnotatedListOfBeanStringGenericQualifier page =
+ tester.startPage(new AnnotatedListOfBeanStringGenericQualifier());
+
+ List<BeanWithGeneric<String>> beans = page.getBeans();
+
+ assertThat(beans, is(notNullValue()));
+ assertThat(beans.size(), is(1));
+
+ BeanWithGeneric<String> stringBean = (BeanWithGeneric<String>) ctx.getBean("stringBean");
+ assertThat(beans, hasItem(stringBean));
+ }
@Test
public void mapOfGenerics() throws Exception
@@ -132,8 +148,20 @@ public class SpringBeanWithGenericsTest extends Assert
assertThat(arrayListStrings.get(0), is(equalTo("one")));
assertThat(arrayListStrings.get(1), is(equalTo("two")));
assertThat(arrayListStrings.get(2), is(equalTo("three")));
+
+ ArrayList<Integer> arrayListIntegers = page.getArrayListIntegers();
+ assertThat(arrayListIntegers, is(notNullValue()));
+ assertThat(arrayListIntegers.size(), is(3));
+ assertThat(arrayListIntegers.get(0), is(1));
+ assertThat(arrayListIntegers.get(1), is(2));
+ assertThat(arrayListIntegers.get(2), is(3));
+
+ MyList<String> myList = page.getMyList();
+ assertThat(myList, is(notNullValue()));
+ assertThat(myList.size(), is(1));
+ assertThat(myList.get(0), is("one"));
}
-
+
@Test
public void listOfTypedGenerics() throws Exception
{
@@ -155,6 +183,17 @@ public class SpringBeanWithGenericsTest extends Assert
}
}
+ class AnnotatedListOfBeanStringGenericQualifier extends DummyHomePage
+ {
+ @SpringBean
+ private List<BeanWithGeneric<String>> beans;
+
+ public List<BeanWithGeneric<String>> getBeans()
+ {
+ return beans;
+ }
+ }
+
class AnnotatedListOfBeanGenericQualifier extends DummyHomePage
{
@SpringBean
@@ -216,6 +255,22 @@ public class SpringBeanWithGenericsTest extends Assert
{
return arrayListStrings;
}
+
+ @SpringBean
+ private ArrayList<Integer> arrayListIntegers;
+
+ public ArrayList<Integer> getArrayListIntegers()
+ {
+ return arrayListIntegers;
+ }
+
+ @SpringBean
+ private MyList<String> myList;
+
+ public MyList<String> getMyList()
+ {
+ return myList;
+ }
}
@Configuration
@@ -248,5 +303,24 @@ public class SpringBeanWithGenericsTest extends Assert
arrayList.add("three");
return arrayList;
}
+
+ @Bean
+ public ArrayList<Integer> arrayListIntegers()
+ {
+ ArrayList<Integer> arrayList = new ArrayList();
+ arrayList.add(1);
+ arrayList.add(2);
+ arrayList.add(3);
+ return arrayList;
+ }
+
+ @Bean
+ public MyList<String> myList() {
+ MyList<String> myList = new MyList<>();
+ myList.add("one");
+ return myList;
+ }
}
+
+ public static class MyList<T> extends ArrayList<T> {}
}
[2/3] wicket git commit: WICKET-5808 Remove unused parameter
Posted by mg...@apache.org.
WICKET-5808 Remove unused parameter
It is a private method so this is not API change
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/4b62ed0f
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/4b62ed0f
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/4b62ed0f
Branch: refs/heads/master
Commit: 4b62ed0fe460c2b8618e70799d6ea68d6de044bf
Parents: cc075e9
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Thu Jan 29 09:29:36 2015 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Thu Jan 29 09:29:36 2015 +0200
----------------------------------------------------------------------
.../spring/injection/annot/AnnotProxyFieldValueFactory.java | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/4b62ed0f/wicket-spring/src/main/java/org/apache/wicket/spring/injection/annot/AnnotProxyFieldValueFactory.java
----------------------------------------------------------------------
diff --git a/wicket-spring/src/main/java/org/apache/wicket/spring/injection/annot/AnnotProxyFieldValueFactory.java b/wicket-spring/src/main/java/org/apache/wicket/spring/injection/annot/AnnotProxyFieldValueFactory.java
index 27c4008..efa333d 100644
--- a/wicket-spring/src/main/java/org/apache/wicket/spring/injection/annot/AnnotProxyFieldValueFactory.java
+++ b/wicket-spring/src/main/java/org/apache/wicket/spring/injection/annot/AnnotProxyFieldValueFactory.java
@@ -192,8 +192,7 @@ public class AnnotProxyFieldValueFactory implements IFieldValueFactory
name = beanNameCache.get(fieldType);
if (name == null)
{
- name = getBeanNameOfClass(contextLocator.getSpringContext(), fieldType, generic,
- required);
+ name = getBeanNameOfClass(contextLocator.getSpringContext(), fieldType, generic);
if (name != null)
{
@@ -217,13 +216,11 @@ public class AnnotProxyFieldValueFactory implements IFieldValueFactory
* spring application context
* @param clazz
* bean class
- * @param required
- * true if the value is required
* @throws IllegalStateException
* @return spring name of the bean
*/
private String getBeanNameOfClass(final ApplicationContext ctx, final Class<?> clazz,
- final Class<?> generic, final boolean required)
+ final Class<?> generic)
{
// get the list of all possible matching beans
List<String> names = new ArrayList<>(