You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by lu...@apache.org on 2012/07/24 08:23:33 UTC
svn commit: r1364910 - in /struts/struts2/trunk/xwork-core/src:
main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java
main/java/com/opensymphony/xwork2/util/XWorkList.java
test/java/com/opensymphony/xwork2/util/XWorkListTest.java
Author: lukaszlenart
Date: Tue Jul 24 06:23:33 2012
New Revision: 1364910
URL: http://svn.apache.org/viewvc?rev=1364910&view=rev
Log:
WW-3414 removes ObjectFactory as a field and uses ActionContext to retrieve instance of ObjectFactory to allow serialize instances of XWorkList
Modified:
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/XWorkList.java
struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/util/XWorkListTest.java
Modified: struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java?rev=1364910&r1=1364909&r2=1364910&view=diff
==============================================================================
--- struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java (original)
+++ struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/conversion/impl/CollectionConverter.java Tue Jul 24 06:23:33 2012
@@ -89,9 +89,9 @@ public class CollectionConverter extends
result = new TreeSet();
} else {
if (size > 0) {
- result = new XWorkList(objectFactory, memberType, size);
+ result = new XWorkList(memberType, size);
} else {
- result = new XWorkList(objectFactory, memberType);
+ result = new XWorkList(memberType);
}
}
Modified: struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/XWorkList.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/XWorkList.java?rev=1364910&r1=1364909&r2=1364910&view=diff
==============================================================================
--- struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/XWorkList.java (original)
+++ struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/util/XWorkList.java Tue Jul 24 06:23:33 2012
@@ -42,17 +42,13 @@ public class XWorkList extends ArrayList
private Class clazz;
- private ObjectFactory objectFactory;
-
- public XWorkList(ObjectFactory fac, Class clazz) {
+ public XWorkList(Class clazz) {
this.clazz = clazz;
- this.objectFactory = fac;
}
- public XWorkList(ObjectFactory fac, Class clazz, int initialCapacity) {
+ public XWorkList(Class clazz, int initialCapacity) {
super(initialCapacity);
this.clazz = clazz;
- this.objectFactory = fac;
}
/**
@@ -169,8 +165,7 @@ public class XWorkList extends ArrayList
public synchronized Object get(int index) {
while (index >= this.size()) {
try {
- //todo
- this.add(objectFactory.buildBean(clazz, null)); //ActionContext.getContext().getContextMap()));
+ this.add(getObjectFactory().buildBean(clazz, ActionContext.getContext().getContextMap()));
} catch (Exception e) {
throw new XWorkException(e);
}
@@ -179,6 +174,10 @@ public class XWorkList extends ArrayList
return super.get(index);
}
+ private ObjectFactory getObjectFactory() {
+ return ActionContext.getContext().getInstance(ObjectFactory.class);
+ }
+
/**
* Replaces the element at the specified position in this list with the specified element.
* <p/>
@@ -207,7 +206,7 @@ public class XWorkList extends ArrayList
if (LOG.isDebugEnabled()) {
LOG.debug("Converting from " + element.getClass().getName() + " to " + clazz.getName());
}
- TypeConverter conv = objectFactory.buildConverter(XWorkConverter.class);
+ TypeConverter conv = getObjectFactory().buildConverter(XWorkConverter.class);
Map<String, Object> context = ActionContext.getContext().getContextMap();
element = conv.convertValue(context, null, null, null, element, clazz);
}
Modified: struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/util/XWorkListTest.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/util/XWorkListTest.java?rev=1364910&r1=1364909&r2=1364910&view=diff
==============================================================================
--- struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/util/XWorkListTest.java (original)
+++ struts/struts2/trunk/xwork-core/src/test/java/com/opensymphony/xwork2/util/XWorkListTest.java Tue Jul 24 06:23:33 2012
@@ -15,7 +15,6 @@
*/
package com.opensymphony.xwork2.util;
-import com.opensymphony.xwork2.ObjectFactory;
import com.opensymphony.xwork2.XWorkTestCase;
import java.util.ArrayList;
@@ -29,8 +28,7 @@ import java.util.ArrayList;
public class XWorkListTest extends XWorkTestCase {
public void testAddAllIndex() {
- ObjectFactory of = container.getInstance(ObjectFactory.class);
- XWorkList xworkList = new XWorkList(of, String.class);
+ XWorkList xworkList = new XWorkList(String.class);
xworkList.add(new String[]{"a"});
xworkList.add("b");
@@ -50,7 +48,7 @@ public class XWorkListTest extends XWork
assertEquals("3", xworkList.get(5));
// take 2, no trim
- xworkList = new XWorkList(of, String.class);
+ xworkList = new XWorkList(String.class);
xworkList.add(new String[]{"a"});
xworkList.add("b");
@@ -68,7 +66,7 @@ public class XWorkListTest extends XWork
assertEquals("3", xworkList.get(4));
// take 3, insert
- xworkList = new XWorkList(of, String.class);
+ xworkList = new XWorkList(String.class);
xworkList.add(new String[]{"a"});
xworkList.add("b");