Interface HstSiteMapMatcher


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, ResolvedMount) , but is also allowed to return some catch all ResolvedSiteMapItem

  • Method Summary

    Modifier and Type
    Method
    Description
    void
    method that can be called if some event is triggered.
    match(String pathInfo, ResolvedMount resolvedMount)
    method to match the pathInfo for the hstSite to a HstSiteMapItem if possible.
  • Method Details

    • 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