org.richfaces.model
Class StackingTreeModel

java.lang.Object
  extended by javax.faces.model.DataModel
      extended by org.ajax4jsf.model.ExtendedDataModel
          extended by org.richfaces.model.AbstractTreeDataModel
              extended by org.richfaces.model.StackingTreeModel
Direct Known Subclasses:
VisualStackingTreeModel

public class StackingTreeModel
extends AbstractTreeDataModel

That is intended for internal use

Author:
Nick Belaevski mailto:nbelaevski@exadel.com created 25.07.2007

Field Summary
 
Fields inherited from class org.richfaces.model.AbstractTreeDataModel
SEPARATOR
 
Constructor Summary
StackingTreeModel()
           
StackingTreeModel(java.lang.String id, java.lang.String var, StackingTreeModelDataProvider dataProvider)
           
 
Method Summary
 void addStackingModel(StackingTreeModel model)
           
protected  java.lang.Object convert(javax.faces.context.FacesContext context, java.lang.String string, javax.faces.component.UIComponent component, javax.faces.convert.Converter converter)
           
 java.lang.Object convertToKey(javax.faces.context.FacesContext context, java.lang.String keyString, javax.faces.component.UIComponent component, javax.faces.convert.Converter converter)
           
protected  StackingTreeModel doSetupKey(java.util.Iterator<StackingTreeModelKey> keyIterator, java.util.Iterator<org.richfaces.model.StackingTreeModel.StackEntry> entriesIterator, javax.faces.context.FacesContext context, java.lang.Object modelKey)
           
protected  void doWalk(javax.faces.context.FacesContext context, DataVisitor dataVisitor, Range range, ListRowKey argumentKey, java.lang.Object argument, boolean last)
           
protected  StackingTreeModel getCurrentModel()
           
 ExtendedDataModel getDataModel()
           
 java.lang.String getId()
           
 StackingTreeModel getModelById(java.lang.String id)
           
 java.util.Iterator<StackingTreeModel> getModelsIterator()
           
 StackingTreeModel getParent()
           
protected  StackingTreeModel getRoot()
           
 java.lang.Object getRowData()
           
 java.lang.Object getRowKey()
           
 TreeNode getTreeNode()
          Get current tree node.
 java.lang.Object getWrappedData()
           
protected  boolean isActive()
           
protected  boolean isActiveData()
           
 boolean isEmpty()
           
 boolean isLeaf()
          returns whether this node is leaf
 boolean isRowAvailable()
           
 void removeStackingModel(StackingTreeModel model)
           
 void setParent(StackingTreeModel parent)
           
 void setRowKey(javax.faces.context.FacesContext context, java.lang.Object key)
           
 void setRowKey(java.lang.Object key)
          Instead of simple int for current state selection, this model can use any object for select current data.
protected  StackingTreeModel setupKey(java.lang.Object key, javax.faces.context.FacesContext context)
           
 boolean setupModel(java.lang.Object key, javax.faces.context.FacesContext facesContext)
           
 void setWrappedData(java.lang.Object data)
           
 void walk(javax.faces.context.FacesContext context, DataVisitor dataVisitor, Range range, java.lang.Object rowKey, java.lang.Object argument, boolean last)
          walk sub-model having row key argument as its root
 void walkModel(javax.faces.context.FacesContext facesContext, DataVisitor visitor, Range range, java.lang.Object key, java.lang.Object argument, boolean last)
          Walk backing sub-model having row key argument as its root.
 
Methods inherited from class org.richfaces.model.AbstractTreeDataModel
addNode, addNode, getChildNodeId, getModelTreeNode, getParentRowKey, getRowCount, getRowIndex, getTreeNodeRowKey, processElement, removeNode, setRowIndex, walk
 
Methods inherited from class org.ajax4jsf.model.ExtendedDataModel
getSerializableModel
 
Methods inherited from class javax.faces.model.DataModel
addDataModelListener, getDataModelListeners, removeDataModelListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StackingTreeModel

public StackingTreeModel(java.lang.String id,
                         java.lang.String var,
                         StackingTreeModelDataProvider dataProvider)

StackingTreeModel

public StackingTreeModel()
Method Detail

getDataModel

public ExtendedDataModel getDataModel()

getCurrentModel

protected StackingTreeModel getCurrentModel()

isEmpty

public boolean isEmpty()

doSetupKey

protected StackingTreeModel doSetupKey(java.util.Iterator<StackingTreeModelKey> keyIterator,
                                       java.util.Iterator<org.richfaces.model.StackingTreeModel.StackEntry> entriesIterator,
                                       javax.faces.context.FacesContext context,
                                       java.lang.Object modelKey)

setupKey

protected StackingTreeModel setupKey(java.lang.Object key,
                                     javax.faces.context.FacesContext context)

setupModel

public boolean setupModel(java.lang.Object key,
                          javax.faces.context.FacesContext facesContext)

setParent

public void setParent(StackingTreeModel parent)

getTreeNode

public TreeNode getTreeNode()
Description copied from class: AbstractTreeDataModel
Get current tree node. Note: valid only for classical TreeNode based tree data model implementation

Specified by:
getTreeNode in class AbstractTreeDataModel
Returns:
current tree node

isLeaf

public boolean isLeaf()
Description copied from class: AbstractTreeDataModel
returns whether this node is leaf

Specified by:
isLeaf in class AbstractTreeDataModel
Returns:

getRoot

protected StackingTreeModel getRoot()

doWalk

protected void doWalk(javax.faces.context.FacesContext context,
                      DataVisitor dataVisitor,
                      Range range,
                      ListRowKey argumentKey,
                      java.lang.Object argument,
                      boolean last)
               throws java.io.IOException
Throws:
java.io.IOException

getModelById

public StackingTreeModel getModelById(java.lang.String id)

getModelsIterator

public java.util.Iterator<StackingTreeModel> getModelsIterator()

walk

public void walk(javax.faces.context.FacesContext context,
                 DataVisitor dataVisitor,
                 Range range,
                 java.lang.Object rowKey,
                 java.lang.Object argument,
                 boolean last)
          throws java.io.IOException
Description copied from class: AbstractTreeDataModel
walk sub-model having row key argument as its root

Specified by:
walk in class AbstractTreeDataModel
Parameters:
context - faces context
dataVisitor - org.ajax4jsf.ajax.repeat.UIDataAdaptor.ComponentVisitor
range - TreeRange to constraint the walk
rowKey - row key to treat as root of sub-model
argument - implementation specific argument
last - boolean flag indicating whether we started our walk from last element
Throws:
java.io.IOException
See Also:
ExtendedDataModel#walk(FacesContext, DataVisitor, Range, Object)}

walkModel

public void walkModel(javax.faces.context.FacesContext facesContext,
                      DataVisitor visitor,
                      Range range,
                      java.lang.Object key,
                      java.lang.Object argument,
                      boolean last)
               throws java.io.IOException
Description copied from class: AbstractTreeDataModel
Walk backing sub-model having row key argument as its root. If there is no backing model configured, calling this method is equivalent to calling AbstractTreeDataModel.walk(FacesContext, DataVisitor, Range, Object, Object, boolean)

Specified by:
walkModel in class AbstractTreeDataModel
Parameters:
facesContext - faces context
visitor - org.ajax4jsf.ajax.repeat.UIDataAdaptor.ComponentVisitor instance
range - Range to constraint the walk
key - row key to treat as root of sub-model
argument - implementation-specific argument
Throws:
java.io.IOException
See Also:
#walk(FacesContext, DataVisitor, Range, TreeRowKey, Object, boolean)}

getRowKey

public java.lang.Object getRowKey()
Specified by:
getRowKey in class ExtendedDataModel
Returns:
key for selected data or null

setRowKey

public void setRowKey(java.lang.Object key)
Description copied from class: ExtendedDataModel

Instead of simple int for current state selection, this model can use any object for select current data. Implementation depend on model, with any restrictions :

  1. key must be Serializable.
  2. Object.toString() method must return representation compatible with UIComponent.getClientId(javax.faces.context.FacesContext), as far as this string will be appended to clientId of iterator component.

Specified by:
setRowKey in class ExtendedDataModel
Parameters:
key - key for select current data, or null for clear selection.

setRowKey

public void setRowKey(javax.faces.context.FacesContext context,
                      java.lang.Object key)

addStackingModel

public void addStackingModel(StackingTreeModel model)

removeStackingModel

public void removeStackingModel(StackingTreeModel model)

getRowData

public java.lang.Object getRowData()
Specified by:
getRowData in class javax.faces.model.DataModel

isRowAvailable

public boolean isRowAvailable()
Specified by:
isRowAvailable in class javax.faces.model.DataModel

getParent

public StackingTreeModel getParent()

isActiveData

protected boolean isActiveData()

isActive

protected boolean isActive()

getWrappedData

public java.lang.Object getWrappedData()
Specified by:
getWrappedData in class javax.faces.model.DataModel

setWrappedData

public void setWrappedData(java.lang.Object data)
Specified by:
setWrappedData in class javax.faces.model.DataModel

convertToKey

public java.lang.Object convertToKey(javax.faces.context.FacesContext context,
                                     java.lang.String keyString,
                                     javax.faces.component.UIComponent component,
                                     javax.faces.convert.Converter converter)
Specified by:
convertToKey in class AbstractTreeDataModel

convert

protected java.lang.Object convert(javax.faces.context.FacesContext context,
                                   java.lang.String string,
                                   javax.faces.component.UIComponent component,
                                   javax.faces.convert.Converter converter)

getId

public java.lang.String getId()


Copyright © 2010. All Rights Reserved.