Class DefaultPreviewDateWebRequestResolver
- java.lang.Object
-
- com.broadleafcommerce.data.tracking.core.preview.context.DefaultPreviewDateWebRequestResolver
-
- All Implemented Interfaces:
PreviewDateWebRequestResolver
public class DefaultPreviewDateWebRequestResolver extends Object implements PreviewDateWebRequestResolver
The default implementation ofPreviewDateWebRequestResolverthat resolves a preview dateInstantfrom aNativeWebRequestwhen there is aPreviewTokenpresent.This resolver will look for a header named
getHeaderName()or a request parameter namedgetParameterName()to detect a preview dateString. If a date-string is found, it will useInstant.parse(CharSequence)to construct anInstantfrom the value. If successful, and thePreviewTokenis found, it will return theInstant.If this resolver either fails to detect a preview date, or fails to parse a found date-string, then it will return
null.- Author:
- Nick Crum (ncrum)
-
-
Field Summary
Fields Modifier and Type Field Description static StringDEFAULT_HEADER_NAMEstatic StringDEFAULT_PARAMETER_NAME
-
Constructor Summary
Constructors Constructor Description DefaultPreviewDateWebRequestResolver()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected StringgetHeaderName()protected StringgetParameterName()protected StringparseRequestHeader(org.springframework.web.context.request.NativeWebRequest webRequest)protected StringparseRequestParameter(org.springframework.web.context.request.NativeWebRequest webRequest)Instantresolve(org.springframework.web.context.request.NativeWebRequest webRequest)Attempts to resolve a preview date for the provided request and preview token.voidsetHeaderName(String headerName)voidsetParameterName(String parameterName)
-
-
-
Field Detail
-
DEFAULT_HEADER_NAME
public static final String DEFAULT_HEADER_NAME
- See Also:
- Constant Field Values
-
DEFAULT_PARAMETER_NAME
public static final String DEFAULT_PARAMETER_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
resolve
public Instant resolve(org.springframework.web.context.request.NativeWebRequest webRequest)
Description copied from interface:PreviewDateWebRequestResolverAttempts to resolve a preview date for the provided request and preview token.If no preview date is found this method is expected to return
null.- Specified by:
resolvein interfacePreviewDateWebRequestResolver- Parameters:
webRequest- the current web request- Returns:
- a preview date
Instantornull
-
parseRequestHeader
protected String parseRequestHeader(org.springframework.web.context.request.NativeWebRequest webRequest)
-
parseRequestParameter
protected String parseRequestParameter(org.springframework.web.context.request.NativeWebRequest webRequest)
-
getHeaderName
protected String getHeaderName()
-
setHeaderName
public void setHeaderName(String headerName)
-
getParameterName
protected String getParameterName()
-
setParameterName
public void setParameterName(String parameterName)
-
-