Class AbstractPageRedirectSupplier
- java.lang.Object
-
- de.hybris.platform.cmsoccaddon.redirect.suppliers.impl.AbstractPageRedirectSupplier
-
- All Implemented Interfaces:
PageRedirectSupplier
- Direct Known Subclasses:
CategoryPageRedirectSupplier
,ContentPageRedirectSupplier
,ProductPageRedirectSupplier
public abstract class AbstractPageRedirectSupplier extends java.lang.Object implements PageRedirectSupplier
Abstract implementation ofPageRedirectSupplier
providing common functionalities for other supplier implementations.
-
-
Constructor Summary
Constructors Constructor Description AbstractPageRedirectSupplier()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected RequestParamData
buildRequestParamData(javax.servlet.http.HttpServletRequest request, PreviewDataModel previewData)
Creates aRequestParamData
object to store query and path parameters information which are used to build the redirect URL.java.util.function.Predicate<ItemModel>
getConstrainedBy()
Predicate to test if a given page model matches the page type supplier.protected java.util.function.Predicate<ItemModel>
getPagePredicate()
protected abstract java.lang.String
getPreviewCode(PreviewDataModel previewData)
Retrieves the category or product code from preview data.java.lang.String
getRedirectUrl(javax.servlet.http.HttpServletRequest request, PreviewDataModel previewData)
Constructs the redirect url given the http servlet request and the preview data.protected java.util.function.Predicate<java.lang.String>
getTypeCodePredicate()
protected abstract void
populateParams(PreviewDataModel previewData, RequestParamData paramData)
Populates the request parameters to make the request to redirect.void
setPagePredicate(java.util.function.Predicate<ItemModel> pagePredicate)
void
setTypeCodePredicate(java.util.function.Predicate<java.lang.String> typeCodePredicate)
boolean
shouldRedirect(javax.servlet.http.HttpServletRequest request, PreviewDataModel previewData)
Determines whether to redirect the request depending upon the logic in supplier.
-
-
-
Method Detail
-
populateParams
protected abstract void populateParams(PreviewDataModel previewData, RequestParamData paramData)
Populates the request parameters to make the request to redirect.- Parameters:
previewData
- - the preview dataparamData
- - the request path and query parameters
-
getPreviewCode
protected abstract java.lang.String getPreviewCode(PreviewDataModel previewData)
Retrieves the category or product code from preview data.- Parameters:
previewData
- - the preview data- Returns:
- the category code; can be
NULL
-
getConstrainedBy
public java.util.function.Predicate<ItemModel> getConstrainedBy()
Description copied from interface:PageRedirectSupplier
Predicate to test if a given page model matches the page type supplier.- Specified by:
getConstrainedBy
in interfacePageRedirectSupplier
- Returns:
true
if the supplier exists;false
otherwise.
-
shouldRedirect
public boolean shouldRedirect(javax.servlet.http.HttpServletRequest request, PreviewDataModel previewData)
Description copied from interface:PageRedirectSupplier
Determines whether to redirect the request depending upon the logic in supplier.- Specified by:
shouldRedirect
in interfacePageRedirectSupplier
- Parameters:
request
- - the http requestpreviewData
- - the preview data- Returns:
true
if it needs to redirect the request;false
otherwise.
-
buildRequestParamData
protected RequestParamData buildRequestParamData(javax.servlet.http.HttpServletRequest request, PreviewDataModel previewData)
Creates aRequestParamData
object to store query and path parameters information which are used to build the redirect URL.- Parameters:
request
- - the http requestpreviewData
- - the preview data- Returns:
- a
RequestParamData
object
-
getRedirectUrl
public java.lang.String getRedirectUrl(javax.servlet.http.HttpServletRequest request, PreviewDataModel previewData)
Description copied from interface:PageRedirectSupplier
Constructs the redirect url given the http servlet request and the preview data.- Specified by:
getRedirectUrl
in interfacePageRedirectSupplier
- Parameters:
request
- - the http servlet requestpreviewData
- - the preview data- Returns:
- the redirect url
-
getPagePredicate
protected java.util.function.Predicate<ItemModel> getPagePredicate()
-
setPagePredicate
public void setPagePredicate(java.util.function.Predicate<ItemModel> pagePredicate)
-
getTypeCodePredicate
protected java.util.function.Predicate<java.lang.String> getTypeCodePredicate()
-
setTypeCodePredicate
public void setTypeCodePredicate(java.util.function.Predicate<java.lang.String> typeCodePredicate)
-
-