KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > tapestry > contrib > table > model > simple > SimpleTableColumnRendererSource


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.contrib.table.model.common.ComponentTableRendererSource;
23 import org.apache.tapestry.util.ComponentAddress;
24
25 /**
26  * This is a simple implementation of
27  * {@link org.apache.tapestry.contrib.table.model.ITableRendererSource}
28  * that returns a standard renderer of a column header. <p>
29  *
30  * This implementation requires that the column passed is of type SimpleTableColumn
31  *
32  * @see org.apache.tapestry.contrib.table.model.common.AbstractTableColumn
33  * @author mindbridge
34  * @since 2.3
35  */

36 public class SimpleTableColumnRendererSource implements ITableRendererSource
37 {
38     private static final long serialVersionUID = 1L;
39     
40     private ComponentTableRendererSource m_objComponentRenderer;
41
42     public SimpleTableColumnRendererSource()
43     {
44         m_objComponentRenderer = null;
45     }
46
47     /**
48      * @see org.apache.tapestry.contrib.table.model.ITableRendererSource#getRenderer(IRequestCycle, ITableModelSource, ITableColumn, Object)
49      */

50     public IRender getRenderer(
51         IRequestCycle objCycle,
52         ITableModelSource objSource,
53         ITableColumn objColumn,
54         Object JavaDoc objRow)
55     {
56         if (m_objComponentRenderer == null)
57         {
58             synchronized (this)
59             {
60                 if (m_objComponentRenderer == null)
61                 {
62                     ComponentAddress objAddress =
63                         new ComponentAddress(
64                             objSource.getNamespace(),
65                             "SimpleTableColumnPage",
66                             "tableColumnComponent");
67                     m_objComponentRenderer =
68                         new ComponentTableRendererSource(objAddress);
69                 }
70             }
71         }
72
73         return m_objComponentRenderer.getRenderer(
74             objCycle,
75             objSource,
76             objColumn,
77             objRow);
78     }
79 }
80
Popular Tags