Interface FilterChainAwareHstSiteMapItemHandler
- All Superinterfaces:
HstSiteMapItemHandler
- All Known Implementing Classes:
AbstractFilterChainAwareHstSiteMapItemHandler
FilterChainAwareHstSiteMapItemHandler extends HstSiteMapItemHandler interface.
If a sitemap item handler implements this interface, then {
process(ResolvedSiteMapItem, HttpServletRequest, HttpServletResponse, FilterChain)
is always invoked,
instead of HstSiteMapItemHandler.process(ResolvedSiteMapItem, HttpServletRequest, HttpServletResponse)
, by HstFilter.-
Method Summary
Modifier and TypeMethodDescriptionprocess
(ResolvedSiteMapItem resolvedSiteMapItem, jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, jakarta.servlet.FilterChain filterChain) Does custom request processing.Methods inherited from interface org.hippoecm.hst.core.sitemapitemhandler.HstSiteMapItemHandler
destroy, init, process
-
Method Details
-
process
ResolvedSiteMapItem process(ResolvedSiteMapItem resolvedSiteMapItem, jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, jakarta.servlet.FilterChain filterChain) throws HstSiteMapItemHandlerException Does custom request processing.This method can return the original resolvedSiteMapItem or a new resolved sitemap item to serve a different one. Or it can return null when it completes the custom request processing by itself so HstFilter needs to stop the request processing.
This method also receives
FilterChain
instance so it can short circuit HST request processing and continue processing nextFilter
s by invoking filterChain.doFilter(..). If you invoke filterChain.doFilter(..) you must returnnull
fromprocess(org.hippoecm.hst.core.request.ResolvedSiteMapItem, jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse, jakarta.servlet.FilterChain)
because the HST rendering must be short-circuited- Parameters:
resolvedSiteMapItem
-request
-response
-filterChain
-- Returns:
- a new or the original
ResolvedSiteMapItem
, ornull
when the handler did for example already write the entireresponse
and request processing can be stopped - Throws:
HstSiteMapItemHandlerException
-