You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by jk...@apache.org on 2006/07/28 04:34:34 UTC
svn commit: r426361 - in /tapestry/tapestry4/trunk:
tapestry-contrib/src/site/xdoc/ComponentReference/
tapestry-framework/src/descriptor/META-INF/
tapestry-framework/src/java/org/apache/tapestry/data/
tapestry-framework/src/test/org/apache/tapestry/data/
Author: jkuhnert
Date: Thu Jul 27 19:34:33 2006
New Revision: 426361
URL: http://svn.apache.org/viewvc?rev=426361&view=rev
Log:
Applied patch from TAPESTRY-971, removed incorrect documentation on SimpleTableColumn image css rules
Added:
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/AbstractDataSqueezerFilter.java
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/NullDataSqueezerFilter.java
tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/package.html (with props)
tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/data/
tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/data/TestNullDataSqueezerFilter.java
Modified:
tapestry/tapestry4/trunk/tapestry-contrib/src/site/xdoc/ComponentReference/SimpleTableColumnComponent.xml
tapestry/tapestry4/trunk/tapestry-framework/src/descriptor/META-INF/tapestry.data.xml
Modified: tapestry/tapestry4/trunk/tapestry-contrib/src/site/xdoc/ComponentReference/SimpleTableColumnComponent.xml
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-contrib/src/site/xdoc/ComponentReference/SimpleTableColumnComponent.xml?rev=426361&r1=426360&r2=426361&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-contrib/src/site/xdoc/ComponentReference/SimpleTableColumnComponent.xml (original)
+++ tapestry/tapestry4/trunk/tapestry-contrib/src/site/xdoc/ComponentReference/SimpleTableColumnComponent.xml Thu Jul 27 19:34:33 2006
@@ -29,25 +29,6 @@
the sorting order to be reversed.
</p>
- <span class="info">
- <strong>Note:</strong>
- <p>
- The column header rendered by this component has two main css class definitions. The
- embedded table html markup within each
- <code>td</code>
- element for a sorted column has the class
- <code>tableHeaderImage</code>
- . The image used to sort table columns has an embedded style class definition for
- <code>tableHeaderImage</code>
- that defines
- <code>align:center</code>
- .
- <br />
-
- You may override these definitions with your own css rules.
- </p>
- </span>
-
<p>
<strong>
See also:
Modified: tapestry/tapestry4/trunk/tapestry-framework/src/descriptor/META-INF/tapestry.data.xml
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/descriptor/META-INF/tapestry.data.xml?rev=426361&r1=426360&r2=426361&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/descriptor/META-INF/tapestry.data.xml (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/descriptor/META-INF/tapestry.data.xml Thu Jul 27 19:34:33 2006
@@ -36,6 +36,10 @@
data squeezer.
</configuration-point>
+ <contribution configuration-id="DataSqueezerFilters">
+ <filter name="NullDataSqueezerFilter" before="*" object="instance:org.apache.tapestry.data.NullDataSqueezerFilter" />
+ </contribution>
+
<service-point id="DataSqueezerTerminator"
visibility="private"
interface="org.apache.tapestry.services.DataSqueezer">
Added: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/AbstractDataSqueezerFilter.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/AbstractDataSqueezerFilter.java?rev=426361&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/AbstractDataSqueezerFilter.java (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/AbstractDataSqueezerFilter.java Thu Jul 27 19:34:33 2006
@@ -0,0 +1,60 @@
+// Copyright May 31, 2006 The Apache Software Foundation
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+package org.apache.tapestry.data;
+
+import org.apache.tapestry.services.DataSqueezer;
+import org.apache.tapestry.services.DataSqueezerFilter;
+
+
+/**
+ * A useful superclass for data squeezer filters. Subclasses only have
+ * to implement the single object versions of the squeeze/unsqueeze methods.
+ *
+ * @author jcarman
+ */
+public abstract class AbstractDataSqueezerFilter implements DataSqueezerFilter
+{
+
+ /**
+ * Merely calls squeeze(Object,DataSqueezer) on each object in
+ * the array.
+ */
+ public String[] squeeze( Object[] objects, DataSqueezer next )
+ {
+ final String[] squeezed = new String[objects.length];
+
+ for( int i = 0; i < squeezed.length; i++ ) {
+
+ squeezed[i] = squeeze( objects[i], next );
+ }
+
+ return squeezed;
+ }
+
+ /**
+ * Merely calls unsqueeze(String,DataSqueezer) on each object in
+ * the array.
+ */
+ public Object[] unsqueeze( String[] strings, DataSqueezer next )
+ {
+ final Object[] unsqueezed = new Object[strings.length];
+
+ for( int i = 0; i < unsqueezed.length; i++ ) {
+
+ unsqueezed[i] = unsqueeze( strings[i], next );
+ }
+
+ return unsqueezed;
+ }
+}
Added: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/NullDataSqueezerFilter.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/NullDataSqueezerFilter.java?rev=426361&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/NullDataSqueezerFilter.java (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/NullDataSqueezerFilter.java Thu Jul 27 19:34:33 2006
@@ -0,0 +1,42 @@
+// Copyright May 31, 2006 The Apache Software Foundation
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+package org.apache.tapestry.data;
+
+import org.apache.tapestry.services.DataSqueezer;
+
+/**
+ * Handles null data assumedly?
+ *
+ * @author jcarman
+ */
+public class NullDataSqueezerFilter extends AbstractDataSqueezerFilter
+{
+ private static final String NULL_STRING = "X";
+
+ public String squeeze(Object data, DataSqueezer dataSqueezer)
+ {
+ if (data == null)
+ return NULL_STRING;
+
+ return dataSqueezer.squeeze(data);
+ }
+
+ public Object unsqueeze(String string, DataSqueezer dataSqueezer)
+ {
+ if (NULL_STRING.equals(string))
+ return null;
+
+ return dataSqueezer.unsqueeze(string);
+ }
+}
Added: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/package.html
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/package.html?rev=426361&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/package.html (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/package.html Thu Jul 27 19:34:33 2006
@@ -0,0 +1,15 @@
+<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+<title>Tapestry: Web Application Framework</title>
+</head>
+<body>
+
+<p>
+Data Squeezer filters.
+</p>
+
+@author James Carman
+
+</body>
+</html>
Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/data/package.html
------------------------------------------------------------------------------
svn:eol-style = native
Added: tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/data/TestNullDataSqueezerFilter.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/data/TestNullDataSqueezerFilter.java?rev=426361&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/data/TestNullDataSqueezerFilter.java (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/data/TestNullDataSqueezerFilter.java Thu Jul 27 19:34:33 2006
@@ -0,0 +1,51 @@
+// Copyright May 31, 2006 The Apache Software Foundation
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+package org.apache.tapestry.data;
+
+import static org.easymock.EasyMock.expect;
+import static org.testng.AssertJUnit.assertEquals;
+import static org.testng.AssertJUnit.assertNull;
+
+import org.apache.tapestry.BaseComponentTestCase;
+import org.apache.tapestry.services.DataSqueezer;
+import org.testng.annotations.Test;
+
+
+/**
+ *
+ * @author jcarman
+ */
+@Test
+public class TestNullDataSqueezerFilter extends BaseComponentTestCase
+{
+ public void testSqueezeNull()
+ {
+ final NullDataSqueezerFilter filter = new NullDataSqueezerFilter();
+ assertNull( filter.unsqueeze( filter.squeeze(( Object )null,null), null ) );
+ }
+
+ public void testSqueezeNonNull()
+ {
+ final NullDataSqueezerFilter filter = new NullDataSqueezerFilter();
+ DataSqueezer mockSqueezer = newMock(DataSqueezer.class);
+
+ expect(mockSqueezer.squeeze("Hello")).andReturn("World");
+
+ replay();
+
+ assertEquals("World", filter.squeeze("Hello", mockSqueezer));
+
+ verify();
+ }
+}