You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beehive.apache.org by ek...@apache.org on 2005/02/01 17:53:29 UTC

svn commit: r149416 - in incubator/beehive/trunk/netui: src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/model/ src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/ src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/ test/webapps/drt/coreWeb/WEB-INF/src/databinding/datagrid/renderer/

Author: ekoneil
Date: Tue Feb  1 08:53:21 2005
New Revision: 149416

URL: http://svn.apache.org/viewcvs?view=rev&rev=149416
Log:
Update the pager rendering mechansim.

Now, a custom pager renderer has access to the DataGridModel; makes it much more useful that way.

Still need a factory for creating these and setting the dependencies.

BB: self
DRT: datagrid pass



Added:
    incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/PagerRenderer.java
      - copied, changed from r149415, incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/AbstractPagerRenderer.java
Removed:
    incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/AbstractPagerRenderer.java
    incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/IPagerRenderer.java
Modified:
    incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/model/DataGridModel.java
    incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/FirstPreviousNextLastPagerRenderer.java
    incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/PreviousNextPagerRenderer.java
    incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/ConfigurePager.java
    incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/src/databinding/datagrid/renderer/HelloWorldPagerRenderer.java

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/model/DataGridModel.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/model/DataGridModel.java?view=diff&r1=149415&r2=149416
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/model/DataGridModel.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/model/DataGridModel.java Tue Feb  1 08:53:21 2005
@@ -28,7 +28,7 @@
 import org.apache.beehive.netui.databinding.datagrid.model.sort.ISort.SortDirection;
 import org.apache.beehive.netui.databinding.datagrid.model.sort.SortModel;
 import org.apache.beehive.netui.databinding.datagrid.rendering.table.TableRenderer;
-import org.apache.beehive.netui.databinding.datagrid.rendering.pager.IPagerRenderer;
+import org.apache.beehive.netui.databinding.datagrid.rendering.pager.PagerRenderer;
 import org.apache.beehive.netui.databinding.datagrid.rendering.pager.PreviousNextPagerRenderer;
 import org.apache.beehive.netui.databinding.datagrid.util.PagedDataSet;
 import org.apache.beehive.netui.databinding.datagrid.util.IDataGridMessageKeys;
@@ -54,7 +54,7 @@
     private String _name = null;
 
     private StylePolicy _stylePolicy = null;
-    private IPagerRenderer _pagerRenderer = null;
+    private PagerRenderer _pagerRenderer = null;
     private PagedDataSet _dataSet = null;
     private TableRenderer _tableRenderer = null;
     private DataGridStateService _dgss = null;
@@ -101,14 +101,17 @@
         _dataSet = dataSet;
     }
 
-    public IPagerRenderer getPagerRenderer() {
-        if(_pagerRenderer == null)
-            _pagerRenderer = new PreviousNextPagerRenderer(this);
+    public PagerRenderer getPagerRenderer() {
+        if(_pagerRenderer == null) {
+            /* todo: need a factory to do this wireup */    
+            _pagerRenderer = new PreviousNextPagerRenderer();
+            _pagerRenderer.setDataGridModel(this);
+        }
 
         return _pagerRenderer;
     }
 
-    public void setPagerRenderer(IPagerRenderer pagerRenderer) {
+    public void setPagerRenderer(PagerRenderer pagerRenderer) {
         _pagerRenderer = pagerRenderer;
     }
 

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/FirstPreviousNextLastPagerRenderer.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/FirstPreviousNextLastPagerRenderer.java?view=diff&r1=149415&r2=149416
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/FirstPreviousNextLastPagerRenderer.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/FirstPreviousNextLastPagerRenderer.java Tue Feb  1 08:53:21 2005
@@ -25,11 +25,7 @@
  * 
  */
 public class FirstPreviousNextLastPagerRenderer
-    extends AbstractPagerRenderer {
-
-    public FirstPreviousNextLastPagerRenderer(DataGridModel gridModel) {
-        super(gridModel);
-    }
+    extends PagerRenderer {
 
     protected String internalRender() {
         StringBuilder buf = new StringBuilder();

Copied: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/PagerRenderer.java (from r149415, incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/AbstractPagerRenderer.java)
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/PagerRenderer.java?view=diff&rev=149416&p1=incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/AbstractPagerRenderer.java&r1=149415&p2=incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/PagerRenderer.java&r2=149416
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/AbstractPagerRenderer.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/PagerRenderer.java Tue Feb  1 08:53:21 2005
@@ -37,29 +37,16 @@
 /**
  *
  */
-public abstract class AbstractPagerRenderer
-    implements IPagerRenderer {
+public abstract class PagerRenderer {
+
+    private static final Logger LOGGER = Logger.getInstance(PagerRenderer.class);
 
-    private static final Logger LOGGER = Logger.getInstance(AbstractPagerRenderer.class);
-    /*
-     todo: need to switch to using the tag rendering infrastructure for anchors
-     */
     private PagerModel _pagerModel;
     private DataGridModel _gridModel;
     private HttpServletRequest _request = null;
     private TagRenderingBase _anchorTag = null;
     private AnchorTag.State _anchorState = new AnchorTag.State();
 
-    public AbstractPagerRenderer(DataGridModel gridModel) {
-        super();
-        assert gridModel != null;
-
-        _gridModel = gridModel;
-        _pagerModel = _gridModel.getPagerModel();
-        _request = JspUtil.getRequest(_gridModel.getJspContext());
-        _anchorTag = TagRenderingBase.Factory.getRendering(TagRenderingBase.ANCHOR_TAG, _request);
-    }
-
     public PagerModel getPagerModel() {
         return _pagerModel;
     }
@@ -68,6 +55,15 @@
         return _gridModel;
     }
 
+    public void setDataGridModel(DataGridModel gridModel) {
+        assert gridModel != null;
+
+        _gridModel = gridModel;
+        _pagerModel = _gridModel.getPagerModel();
+        _request = JspUtil.getRequest(_gridModel.getJspContext());
+        _anchorTag = TagRenderingBase.Factory.getRendering(TagRenderingBase.ANCHOR_TAG, _request);
+    }
+
     public String render() {
         if(_gridModel.getDataSet().getSize() == 0)
             return noDataRender();
@@ -75,7 +71,9 @@
             return internalRender();
     }
 
-    protected abstract String internalRender();
+    protected String internalRender() {
+        return "";
+    }
 
     protected String noDataRender() {
         return _gridModel.getMessage(IDataGridMessageKeys.DATAGRID_MSG_NODATA);

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/PreviousNextPagerRenderer.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/PreviousNextPagerRenderer.java?view=diff&r1=149415&r2=149416
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/PreviousNextPagerRenderer.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/rendering/pager/PreviousNextPagerRenderer.java Tue Feb  1 08:53:21 2005
@@ -22,11 +22,7 @@
 import org.apache.beehive.netui.databinding.datagrid.util.IDataGridMessageKeys;
 
 public class PreviousNextPagerRenderer
-    extends AbstractPagerRenderer {
-
-    public PreviousNextPagerRenderer(DataGridModel gridModel) {
-        super(gridModel);
-    }
+    extends PagerRenderer {
 
     protected String internalRender() {
         StringBuilder buf = new StringBuilder();

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/ConfigurePager.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/ConfigurePager.java?view=diff&r1=149415&r2=149416
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/ConfigurePager.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/ConfigurePager.java Tue Feb  1 08:53:21 2005
@@ -22,7 +22,7 @@
 
 import org.apache.beehive.netui.databinding.datagrid.model.DataGridModel;
 import org.apache.beehive.netui.databinding.datagrid.model.PagerModel;
-import org.apache.beehive.netui.databinding.datagrid.rendering.pager.IPagerRenderer;
+import org.apache.beehive.netui.databinding.datagrid.rendering.pager.PagerRenderer;
 import org.apache.beehive.netui.databinding.datagrid.rendering.pager.FirstPreviousNextLastPagerRenderer;
 import org.apache.beehive.netui.databinding.datagrid.rendering.pager.PreviousNextPagerRenderer;
 import org.apache.beehive.netui.databinding.datagrid.util.JspUtil;
@@ -117,7 +117,7 @@
         PagerModel pm = dgm.getPagerModel();
         assert pm != null;
 
-        IPagerRenderer pagerRenderer = null;
+        PagerRenderer pagerRenderer = null;
 
         dgm.setDisableDefaultPagerRendering(_disableDefaultPager);
 
@@ -126,7 +126,7 @@
 
         if(_pagerRendererClass != null) {
             try {
-                pagerRenderer = (IPagerRenderer)DataGridUtil.instantiateClass(_pagerRendererClass, IPagerRenderer.class);
+                pagerRenderer = (PagerRenderer)DataGridUtil.instantiateClass(_pagerRendererClass, PagerRenderer.class);
 
                 assert pagerRenderer != null : "Expected a non-null pager renderer of type \"" + _pagerRendererClass + "\"";
             }
@@ -136,15 +136,15 @@
         }
         else if(_pagerFormat != null) {
             if(_pagerFormat.equals(FIRST_LAST_PREV_NEXT))
-                pagerRenderer = new FirstPreviousNextLastPagerRenderer(dgm);
+                pagerRenderer = new FirstPreviousNextLastPagerRenderer();
             else if(_pagerFormat.equals(PREV_NEXT))
-                pagerRenderer = new PreviousNextPagerRenderer(dgm);
+                pagerRenderer = new PreviousNextPagerRenderer();
             else throw new JspException("The pagerFormat \"" + _pagerFormat + "\" is not supported");
         }
 
         if(pagerRenderer != null) {
-            /* todo: need to provide pager renderers some context here */
-            // pagerRenderer.setDataGridModel(pagerRenderer);
+            /* inject the DataGridModel into the PagerRenderer */
+            pagerRenderer.setDataGridModel(dgm);
             dgm.setPagerRenderer(pagerRenderer);
         }
 

Modified: incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/src/databinding/datagrid/renderer/HelloWorldPagerRenderer.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/src/databinding/datagrid/renderer/HelloWorldPagerRenderer.java?view=diff&r1=149415&r2=149416
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/src/databinding/datagrid/renderer/HelloWorldPagerRenderer.java (original)
+++ incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/src/databinding/datagrid/renderer/HelloWorldPagerRenderer.java Tue Feb  1 08:53:21 2005
@@ -17,7 +17,7 @@
  */
 package databinding.datagrid.renderer;
 
-import org.apache.beehive.netui.databinding.datagrid.rendering.pager.IPagerRenderer;
+import org.apache.beehive.netui.databinding.datagrid.rendering.pager.PagerRenderer;
 
 /**
  * Simple implementation of the IPagerRenderer interface.  This API is 
@@ -25,7 +25,7 @@
  * to obtain any information about its environment.
  */
 public class HelloWorldPagerRenderer 
-    implements IPagerRenderer {
+    extends PagerRenderer {
 
     public String render() {
         return "Hey, this codepath works!  Oh, yeah -- Hello World!";