|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
javax.faces.model.DataModel
org.apache.myfaces.trinidad.model.CollectionModel
org.apache.myfaces.trinidad.model.TreeModel
org.apache.myfaces.trinidad.model.MenuModel
org.apache.myfaces.trinidad.model.BaseMenuModel
org.apache.myfaces.trinidad.model.XMLMenuModel
public class XMLMenuModel
Creates a Menu Model from a TreeModel where nodes in the treeModel contain viewId information.
Each node must have either a bean getter method or a Map property that returns a viewId. There are several restrictions on the data:
The getFocusRowKey method
The Model is created by specifying it in the faces-config.xml file as follows
<managed-bean>
<managed-bean-name>hr_menu</managed-bean-name>
<managed-bean-class>
org.apache.myfaces.trinidad.model.XMLMenuModel
</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<managed-property>
<property-name>source</property-name>
<property-class>java.lang.String</property-class>
<value>/WEB-INF/hr-menu.xml</value>
</managed-property>
</managed-bean>
Objects of this class are not thread safe and should be used only in request scope.
| Nested Class Summary | |
|---|---|
static interface |
XMLMenuModel.MenuContentHandler |
| Nested classes/interfaces inherited from interface org.apache.myfaces.trinidad.model.LocalRowKeyIndex |
|---|
LocalRowKeyIndex.Confidence, LocalRowKeyIndex.LocalCachingStrategy |
| Field Summary | |
|---|---|
static java.lang.String |
SHARED_MODEL_INDICATOR_KEYThis key is used to store information about the included xml menu models which are constructed during parsing. |
| Constructor Summary | |
|---|---|
XMLMenuModel() |
|
| Method Summary | |
|---|---|
void |
addViewId(java.lang.String newViewId, java.lang.String aliasedViewId)Maps the focusPath returned when the viewId is newViewId to the focusPath returned when the viewId is aliasedViewId. |
protected java.lang.Object |
getCacheKey() |
protected int |
getContentHandlerId() |
protected java.util.Map<java.lang.Object,java.util.List<XMLMenuModel.MenuContentHandler>> |
getContentHandlerMap()Returns the map of content handlers which hold the state of one XML tree. |
boolean |
getCreateHiddenNodes()Gets the boolean value that determines whether or not to create nodes whose rendered attribute value is false. |
java.lang.Object |
getCustomProperty(java.lang.Object node, java.lang.String propName)Gets the list of custom properties from the node and returns the value of propName. |
java.lang.Object |
getFocusRowKey()Returns the rowKey to the current viewId, or in the case of where the model has nodes with duplicate viewId's and one is encountered, we return the rowKey of the currently selected node. |
java.lang.Object |
getNode(java.lang.String id)Get a the MenuNode corresponding to the key "id" from the node id hashmap. |
java.lang.String |
getSource()Gets the URI to the XML menu metadata. |
java.io.InputStream |
getStream(java.lang.String uri)getStream - Opens an InputStream to the provided URI. |
java.util.Map<java.lang.String,java.util.List<java.lang.Object>> |
getViewIdFocusPathMap()Get the Model's viewIdFocusPathMap |
protected boolean |
isCompatibilityMode()This needs to be overriden by classes extending XmlMenuModel and using APIs for the nodes of XmlMenuModel. |
void |
setCreateHiddenNodes(boolean createHiddenNodes)Sets the boolean value that determines whether or not to create nodes whose rendered attribute value is false. |
void |
setCurrentlyPostedNode(java.lang.Object currentNode)Sets the currently selected node and the request method. |
void |
setSource(java.lang.String menuMetadataUri)setSource - specifies the XML metadata and creates the XML Menu Model. |
void |
setWrappedData(java.lang.Object data)Makes the TreeModel part of the menu model. |
| Methods inherited from class org.apache.myfaces.trinidad.model.BaseMenuModel |
|---|
enterContainer, exitContainer, getContainerRowKey, getRowCount, getRowData, getRowIndex, getRowKey, getWrappedData, isContainer, isRowAvailable, setRowIndex, setRowKey |
| Methods inherited from class org.apache.myfaces.trinidad.model.TreeModel |
|---|
areRowsLocallyAvailable, areRowsLocallyAvailable, areRowsLocallyAvailable, getAllAncestorContainerRowKeys, getContainerRowKey, getDepth, getDepth, isChildCollectionLocallyAvailable, isChildCollectionLocallyAvailable, isChildCollectionLocallyAvailable, isContainerEmpty |
| Methods inherited from class org.apache.myfaces.trinidad.model.CollectionModel |
|---|
areRowsLocallyAvailable, areRowsLocallyAvailable, areRowsLocallyAvailable, clearCachedRow, clearCachedRow, clearCachedRows, clearCachedRows, clearLocalCache, ensureRowsAvailable, getCachingStrategy, getEstimatedRowCount, getEstimatedRowCountConfidence, getRowData, getRowData, getSortCriteria, isRowAvailable, isRowLocallyAvailable, isRowLocallyAvailable, isSortable, setSortCriteria |
| 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 |
| Field Detail |
|---|
public static final java.lang.String SHARED_MODEL_INDICATOR_KEY
| Constructor Detail |
|---|
public XMLMenuModel()
| Method Detail |
|---|
protected boolean isCompatibilityMode()
public void setSource(java.lang.String menuMetadataUri)
menuMetadataUri - - String URI to the XML metadata.public void setWrappedData(java.lang.Object data)
setWrappedData in class BaseMenuModeldata - The Tree Model instancepublic java.lang.Object getFocusRowKey()
The getFocusRowKey method
getFocusRowKey in class MenuModelpublic java.lang.String getSource()
public void setCreateHiddenNodes(boolean createHiddenNodes)
public boolean getCreateHiddenNodes()
public void addViewId(java.lang.String newViewId,
java.lang.String aliasedViewId)
newViewId - the view id to add a focus path for.aliasedViewId - the view id to use to get the focusPath to use for newViewId.public void setCurrentlyPostedNode(java.lang.Object currentNode)
currentNode - The currently selected node in the menupublic java.lang.Object getNode(java.lang.String id)
id - - String node id key for the hashmap entry.
public java.lang.Object getCustomProperty(java.lang.Object node,
java.lang.String propName)
node - Object used to get its list of custom propertiespropName - String name of the property whose value is desiredpublic java.io.InputStream getStream(java.lang.String uri)
uri - - String uri to a data source.public java.util.Map<java.lang.String,java.util.List<java.lang.Object>> getViewIdFocusPathMap()
protected java.util.Map<java.lang.Object,java.util.List<XMLMenuModel.MenuContentHandler>> getContentHandlerMap()
scopeMap -protected int getContentHandlerId()
protected java.lang.Object getCacheKey()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
Copyright © 2001-2012 The Apache Software Foundation. All Rights Reserved.