Coverage Report - org.apache.tapestry.contrib.table.model.simple.SimpleTableValueRendererSource
 
Classes in this File Line Coverage Branch Coverage Complexity
SimpleTableValueRendererSource
0%
0/6
0%
0/2
3
 
 1  
 // Copyright 2004, 2005 The Apache Software Foundation
 2  
 //
 3  
 // Licensed under the Apache License, Version 2.0 (the "License");
 4  
 // you may not use this file except in compliance with the License.
 5  
 // You may obtain a copy of the License at
 6  
 //
 7  
 //     http://www.apache.org/licenses/LICENSE-2.0
 8  
 //
 9  
 // Unless required by applicable law or agreed to in writing, software
 10  
 // distributed under the License is distributed on an "AS IS" BASIS,
 11  
 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 12  
 // See the License for the specific language governing permissions and
 13  
 // limitations under the License.
 14  
 
 15  
 package org.apache.tapestry.contrib.table.model.simple;
 16  
 
 17  
 import org.apache.tapestry.IRender;
 18  
 import org.apache.tapestry.IRequestCycle;
 19  
 import org.apache.tapestry.contrib.table.model.ITableColumn;
 20  
 import org.apache.tapestry.contrib.table.model.ITableModelSource;
 21  
 import org.apache.tapestry.contrib.table.model.ITableRendererSource;
 22  
 import org.apache.tapestry.valid.RenderString;
 23  
 
 24  
 /**
 25  
  * This is a simple implementation of
 26  
  * {@link org.apache.tapestry.contrib.table.model.ITableRendererSource} that
 27  
  * returns a standard renderer of a column value. This implementation requires
 28  
  * that the column passed is of type SimpleTableColumn
 29  
  * 
 30  
  * @see org.apache.tapestry.contrib.table.model.common.AbstractTableColumn
 31  
  * @author mindbridge
 32  
  * @since 2.3
 33  
  */
 34  0
 public class SimpleTableValueRendererSource implements ITableRendererSource
 35  
 {
 36  
     private static final long serialVersionUID = 1L;
 37  
 
 38  
     /**
 39  
      * The representation of null values. This is geared towards HTML, but will
 40  
      * work for some other *ML languages as well. In any case, changing the
 41  
      * column's value renderer allows selecting fully custom rendering
 42  
      * behaviour.
 43  
      */
 44  
     private static final String EMPTY_REPRESENTATION = " ";
 45  
 
 46  
     /**
 47  
      * @see org.apache.tapestry.contrib.table.model.ITableRendererSource#getRenderer(IRequestCycle,
 48  
      *      ITableModelSource, ITableColumn, Object)
 49  
      */
 50  
     public IRender getRenderer(IRequestCycle objCycle,
 51  
             ITableModelSource objSource, ITableColumn objColumn, Object objRow)
 52  
     {
 53  0
         SimpleTableColumn objSimpleColumn = (SimpleTableColumn) objColumn;
 54  
 
 55  0
         Object objValue = objSimpleColumn.getColumnValue(objRow);
 56  0
         if (objValue == null)
 57  0
             return new RenderString(EMPTY_REPRESENTATION, true);
 58  
 
 59  0
         return new RenderString(objValue.toString());
 60  
     }
 61  
 
 62  
 }