Author: hlship
Date: Tue Jun 1 14:24:37 2010
New Revision: 950088
URL: http://svn.apache.org/viewvc?rev=950088&view=rev
Log:
Refactor the functional Flow code from tapestry-ioc to tapestry-func
Added:
tapestry/tapestry5/trunk/tapestry-func/src/main/
tapestry/tapestry5/trunk/tapestry-func/src/main/java/
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/AbstractFlow.java
(contents, props changed)
- copied, changed from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/AbstractFlow.java
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/ArrayFlow.java
(contents, props changed)
- copied, changed from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/ArrayFlow.java
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/ConcatFlow.java
(contents, props changed)
- copied, changed from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/ConcatFlow.java
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/EmptyFlow.java
(contents, props changed)
- copied, changed from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/EmptyFlow.java
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/F.java
(contents, props changed)
- copied, changed from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/F.java
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/FilteredFlow.java
(contents, props changed)
- copied, changed from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/FilteredFlow.java
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Flow.java
(contents, props changed)
- copied, changed from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Flow.java
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/MappedFlow.java
(contents, props changed)
- copied, changed from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/MappedFlow.java
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Mapper.java
(contents, props changed)
- copied, changed from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Mapper.java
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Predicate.java
(contents, props changed)
- copied, changed from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Predicate.java
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Reducer.java
(contents, props changed)
- copied, changed from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Reducer.java
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Worker.java
(contents, props changed)
- copied, changed from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Worker.java
tapestry/tapestry5/trunk/tapestry-func/src/test/java/
tapestry/tapestry5/trunk/tapestry-func/src/test/java/org/
tapestry/tapestry5/trunk/tapestry-func/src/test/java/org/apache/
tapestry/tapestry5/trunk/tapestry-func/src/test/java/org/apache/tapestry5/
tapestry/tapestry5/trunk/tapestry-func/src/test/java/org/apache/tapestry5/func/
tapestry/tapestry5/trunk/tapestry-func/src/test/java/org/apache/tapestry5/func/FuncTest.java
(contents, props changed)
- copied, changed from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/test/java/org/apache/tapestry5/func/FuncTest.java
Removed:
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/AbstractFlow.java
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/ArrayFlow.java
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/ConcatFlow.java
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/EmptyFlow.java
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/F.java
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/FilteredFlow.java
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Flow.java
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/MappedFlow.java
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Mapper.java
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Predicate.java
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Reducer.java
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Worker.java
tapestry/tapestry5/trunk/tapestry-ioc/src/test/java/org/apache/tapestry5/func/FuncTest.java
Copied:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/AbstractFlow.java
(from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/AbstractFlow.java)
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/AbstractFlow.java?p2=tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/AbstractFlow.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/AbstractFlow.java&r1=950087&r2=950088&rev=950088&view=diff
==============================================================================
(empty)
Propchange:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/AbstractFlow.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/ArrayFlow.java
(from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/ArrayFlow.java)
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/ArrayFlow.java?p2=tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/ArrayFlow.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/ArrayFlow.java&r1=950087&r2=950088&rev=950088&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/ArrayFlow.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/ArrayFlow.java
Tue Jun 1 14:24:37 2010
@@ -22,8 +22,6 @@ import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
-import org.apache.tapestry5.ioc.internal.util.CollectionFactory;
-
/**
* Implementation of {...@link Flow} based on an internal array of objects.
*
@@ -96,7 +94,9 @@ class ArrayFlow<T> extends AbstractFlow<
if (values.length < 2)
return this;
- List<T> newValues = CollectionFactory.newList(values);
+ List<T> newValues = new ArrayList<T>();
+
+ newValues.addAll(Arrays.asList(values));
Collections.reverse(newValues);
Propchange:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/ArrayFlow.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/ConcatFlow.java
(from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/ConcatFlow.java)
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/ConcatFlow.java?p2=tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/ConcatFlow.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/ConcatFlow.java&r1=950087&r2=950088&rev=950088&view=diff
==============================================================================
(empty)
Propchange:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/ConcatFlow.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/EmptyFlow.java
(from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/EmptyFlow.java)
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/EmptyFlow.java?p2=tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/EmptyFlow.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/EmptyFlow.java&r1=950087&r2=950088&rev=950088&view=diff
==============================================================================
(empty)
Propchange:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/EmptyFlow.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/F.java
(from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/F.java)
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/F.java?p2=tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/F.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/F.java&r1=950087&r2=950088&rev=950088&view=diff
==============================================================================
(empty)
Propchange:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/F.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/FilteredFlow.java
(from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/FilteredFlow.java)
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/FilteredFlow.java?p2=tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/FilteredFlow.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/FilteredFlow.java&r1=950087&r2=950088&rev=950088&view=diff
==============================================================================
(empty)
Propchange:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/FilteredFlow.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Flow.java
(from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Flow.java)
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Flow.java?p2=tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Flow.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Flow.java&r1=950087&r2=950088&rev=950088&view=diff
==============================================================================
(empty)
Propchange:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Flow.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/MappedFlow.java
(from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/MappedFlow.java)
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/MappedFlow.java?p2=tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/MappedFlow.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/MappedFlow.java&r1=950087&r2=950088&rev=950088&view=diff
==============================================================================
(empty)
Propchange:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/MappedFlow.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Mapper.java
(from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Mapper.java)
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Mapper.java?p2=tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Mapper.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Mapper.java&r1=950087&r2=950088&rev=950088&view=diff
==============================================================================
(empty)
Propchange:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Mapper.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Predicate.java
(from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Predicate.java)
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Predicate.java?p2=tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Predicate.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Predicate.java&r1=950087&r2=950088&rev=950088&view=diff
==============================================================================
(empty)
Propchange:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Predicate.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Reducer.java
(from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Reducer.java)
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Reducer.java?p2=tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Reducer.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Reducer.java&r1=950087&r2=950088&rev=950088&view=diff
==============================================================================
(empty)
Propchange:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Reducer.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Worker.java
(from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Worker.java)
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Worker.java?p2=tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Worker.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/func/Worker.java&r1=950087&r2=950088&rev=950088&view=diff
==============================================================================
(empty)
Propchange:
tapestry/tapestry5/trunk/tapestry-func/src/main/java/org/apache/tapestry5/func/Worker.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied:
tapestry/tapestry5/trunk/tapestry-func/src/test/java/org/apache/tapestry5/func/FuncTest.java
(from r950087,
tapestry/tapestry5/trunk/tapestry-ioc/src/test/java/org/apache/tapestry5/func/FuncTest.java)
URL:
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-func/src/test/java/org/apache/tapestry5/func/FuncTest.java?p2=tapestry/tapestry5/trunk/tapestry-func/src/test/java/org/apache/tapestry5/func/FuncTest.java&p1=tapestry/tapestry5/trunk/tapestry-ioc/src/test/java/org/apache/tapestry5/func/FuncTest.java&r1=950087&r2=950088&rev=950088&view=diff
==============================================================================
---
tapestry/tapestry5/trunk/tapestry-ioc/src/test/java/org/apache/tapestry5/func/FuncTest.java
(original)
+++
tapestry/tapestry5/trunk/tapestry-func/src/test/java/org/apache/tapestry5/func/FuncTest.java
Tue Jun 1 14:24:37 2010
@@ -21,11 +21,10 @@ import java.util.Iterator;
import java.util.List;
import java.util.Locale;
-import org.apache.tapestry5.ioc.internal.util.Defense;
-import org.apache.tapestry5.ioc.test.TestUtils;
+import org.testng.Assert;
import org.testng.annotations.Test;
-public class FuncTest extends TestUtils
+public class FuncTest extends Assert
{
private Mapper<String, Integer> stringToLength = new Mapper<String,
Integer>()
@@ -54,11 +53,20 @@ public class FuncTest extends TestUtils
private Flow<Integer> filteredEmpty = F.flow(1, 3, 5, 7).filter(evenp);
+ private <T> void assertListsEquals(List<T> actual, T... expected)
+ {
+ assertEquals(actual, Arrays.asList(expected));
+ }
+
+ private void unreachable()
+ {
+ throw new RuntimeException("Should not be reachable.");
+ }
+
@Test
public void map()
{
List<String> source = Arrays.asList("Mary", "had", "a", "little",
"lamb");
- Defense.notNull(source, "source");
List<Integer> lengths = F.flow(source).map(stringToLength).toList();
@@ -89,7 +97,6 @@ public class FuncTest extends TestUtils
public void map_empty_collection_is_the_empty_list()
{
List<String> source = Arrays.asList();
- Defense.notNull(source, "source");
List<Integer> lengths = F.flow(source).map(stringToLength).toList();
Propchange:
tapestry/tapestry5/trunk/tapestry-func/src/test/java/org/apache/tapestry5/func/FuncTest.java
------------------------------------------------------------------------------
svn:eol-style = native