org.opencms.jsp.util
Class CmsJspNavigationBean

java.lang.Object
  extended by org.opencms.jsp.util.CmsJspNavigationBean

public class CmsJspNavigationBean
extends Object

Allows access to the OpenCms navigation information in combination with the <cms:navigation> tag.

Since:
8.0
See Also:
CmsJspTagContentAccess

Nested Class Summary
 class CmsJspNavigationBean.CmsIsActiveTransformer
          Provides a Map with Booleans that indicate if the given URI is the currently active element in the navigation.
 class CmsJspNavigationBean.CmsIsParentTransformer
          Provides a Map with Booleans that indicate if the given navigation URI is a parent element of the current URI.
 
Field Summary
protected  CmsJspNavBuilder m_builder
          The navigation builder.
protected  CmsObject m_cms
          The OpenCms user context.
protected  CmsJspNavElement m_current
          The navigation element of the currently requested uri.
protected  int m_endLevel
          The optional end level for the navigation.
protected  Map<String,Boolean> m_isActive
          Indicates if a given navigation uri is currently active.
protected  Map<String,Boolean> m_isParent
          Indicates if the given navigation URI is a parent element of the current URI.
protected  List<CmsJspNavElement> m_items
          The result items from the navigation.
protected  String m_param
          The optional parameter for the navigation.
protected  String m_resource
          The optional resource for the navigation.
protected  int m_startLevel
          The optional start level for the navigation.
protected  CmsJspTagNavigation.Type m_type
          The selected navigation type.
 
Constructor Summary
CmsJspNavigationBean(CmsObject cms, CmsJspTagNavigation.Type type, int startLevel, int endLevel, String resource, String param)
          Base constructor.
 
Method Summary
 CmsJspNavElement getCurrent()
          Returns the navigation element of the currently requested uri.
 Map<String,Boolean> getIsActive()
          Returns a lazy initialized Map that provides Booleans that indicate if a given navigation uri is currently active.
 Map<String,Boolean> getIsParent()
          Returns a lazy initialized Map that provides Booleans that indicate if the given navigation URI is a parent element of the current URI.
 List<CmsJspNavElement> getItems()
          Returns the list of selected navigation elements.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_builder

protected CmsJspNavBuilder m_builder
The navigation builder.


m_cms

protected CmsObject m_cms
The OpenCms user context.


m_current

protected CmsJspNavElement m_current
The navigation element of the currently requested uri.


m_endLevel

protected int m_endLevel
The optional end level for the navigation.


m_isActive

protected Map<String,Boolean> m_isActive
Indicates if a given navigation uri is currently active.


m_isParent

protected Map<String,Boolean> m_isParent
Indicates if the given navigation URI is a parent element of the current URI.


m_items

protected List<CmsJspNavElement> m_items
The result items from the navigation.


m_param

protected String m_param
The optional parameter for the navigation.


m_resource

protected String m_resource
The optional resource for the navigation.


m_startLevel

protected int m_startLevel
The optional start level for the navigation.


m_type

protected CmsJspTagNavigation.Type m_type
The selected navigation type.

Constructor Detail

CmsJspNavigationBean

public CmsJspNavigationBean(CmsObject cms,
                            CmsJspTagNavigation.Type type,
                            int startLevel,
                            int endLevel,
                            String resource,
                            String param)
Base constructor.

Parameters:
cms - the current users OpenCms context to build the navigation for
type - the navigation type to generate
startLevel - the optional start level
endLevel - the optional end level
resource - the optional resource for the navigation
param - the optional parameter for the navigation
Method Detail

getCurrent

public CmsJspNavElement getCurrent()
Returns the navigation element of the currently requested uri.

Returns:
the navigation element of the currently requested uri

getIsActive

public Map<String,Boolean> getIsActive()
Returns a lazy initialized Map that provides Booleans that indicate if a given navigation uri is currently active.

The provided Map key is assumed to be a String that represents an absolute VFS path.

Usage example on a JSP with the JSTL:

 <cms:navigation  type="treeForFolder" startLevel="1" endLevel="3" var="nav" />
     <c:forEach var="entry" items="${nav.items}" ... >
     ...
     <c:if test="${nav.isActive[entry.resourceName]}" >
         This is the currently active navigation entry 
     </c:if>
 </c:forEach>

Returns:
a lazy initialized Map that provides Booleans that indicate if a given navigation uri is currently active

getIsParent

public Map<String,Boolean> getIsParent()
Returns a lazy initialized Map that provides Booleans that indicate if the given navigation URI is a parent element of the current URI.

The provided Map key is assumed to be a String that represents an absolute VFS path.

Usage example on a JSP with the JSTL:

 <cms:navigation  type="treeForFolder" startLevel="1" endLevel="3" var="nav" />
     <c:forEach var="entry" items="${nav.items}" ... >
     ...
     <c:if test="${nav.isParent[entry.resourceName]}" >
         The currently active navigation entry is a parent of the currently requested URI
     </c:if>
 </c:forEach>

Returns:
a lazy initialized Map that provides Booleans that indicate if the given navigation URI is a parent element of the current URI

getItems

public List<CmsJspNavElement> getItems()
Returns the list of selected navigation elements.

Returns:
the list of selected navigation elements