org.hippoecm.hst.core.request
Interface HstSiteMapMatcher

All Known Implementing Classes:
BasicHstSiteMapMatcher

public interface HstSiteMapMatcher

Implementations should be able to match a path (pathInfo) in combination with a HstSite object to a ResolvedSiteMapItem. Typically a ResolvedSiteMapItem is a request context based instance of a HstSiteMapItem, where possibly property placeholders in HstSiteMapItem.getParameters() are replaced by their request context sensitive values. For example, a ${1} parameter value might be replaced by the value that matched to the first HstSiteMapItem containing a wildcard.

Note: the ResolvedSiteMapItem is accessible by every HstComponent instance through the HstRequestContext

When no HstSiteMapItem can be found to match the pathInfo, the implementation can return null for the #match(String, HstSite), but is also allowed to return some catch all ResolvedSiteMapItem


Method Summary
 void invalidate()
          method that can be called if some event is triggered.
 ResolvedSiteMapItem match(String pathInfo, ResolvedMount resolvedMount)
          method to match the pathInfo for the hstSite to a HstSiteMapItem if possible.
 

Method Detail

match

ResolvedSiteMapItem match(String pathInfo,
                          ResolvedMount resolvedMount)
                          throws NotFoundException
method to match the pathInfo for the hstSite to a HstSiteMapItem if possible.

Parameters:
pathInfo - the pathInfo that should be matched in the HstSiteMapItem tree
resolvedMount - the current ResolvedMount that must matches the request serverName and pathInfo
Returns:
a ResolvedSiteMapItem
Throws:
NotFoundException - when the pathInfo can not be matched to a HstSiteMapItem

invalidate

void invalidate()
method that can be called if some event is triggered. For example if the HstSiteMapMatcher implementing class holds a cache that needs to be flushed after a change in the HstSiteMap configuration



Copyright © 2008-2012 Hippo. All Rights Reserved.