Interface CxCustomizationDaoStrategy
-
- All Superinterfaces:
CxDaoStrategy
- All Known Implementing Classes:
CxCustomizationCodeDaoStrategy
,CxCustomizationNameStatusesDaoStrategy
,CxCustomizationPageIdDaoStrategy
public interface CxCustomizationDaoStrategy extends CxDaoStrategy
Marker interface for extra filtering strategies for CxCustomization.Contains default methods helpful for making multicountry aware queries
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
CATALOGS
-
Method Summary
All Methods Instance Methods Default Methods Modifier and Type Method Description default java.lang.String
buildCaseFroMulticountry(java.util.List<CatalogVersionModel> catalogVersions, java.lang.String prefix)
Builds a case statement for multicountry query.default java.lang.String
buildCaseFroMulticountry(java.util.Map<java.lang.String,java.lang.Object> queryParams, java.lang.String prefix)
Builds a case statement for multicountry query.default java.lang.String
buildOrderByForMulticountry(java.util.Map<java.lang.String,java.lang.Object> queryParams)
Builds extra order by statement for multicountry for ordering by catalog version.default java.lang.String
buildOrderByForMulticountry(java.util.Map<java.lang.String,java.lang.Object> queryParams, java.lang.String prefix)
Builds extra order by statement for multicountry for ordering by catalog version.default java.lang.String
getMulticountryWhereOperator(java.util.Map<java.lang.String,java.lang.Object> queryParams)
Returns operator and parameter for catalog version of customization for "WHERE" part of the query.default boolean
isMulticountryEnabled(java.util.Map<java.lang.String,java.lang.Object> queryParams)
Checks if query should provide multicountry support.-
Methods inherited from interface de.hybris.platform.personalizationservices.dao.CxDaoStrategy
getQuery, getQuery, getRequiredParameters
-
-
-
-
Field Detail
-
CATALOGS
static final java.lang.String CATALOGS
- See Also:
- Constant Field Values
-
-
Method Detail
-
isMulticountryEnabled
default boolean isMulticountryEnabled(java.util.Map<java.lang.String,java.lang.Object> queryParams)
Checks if query should provide multicountry support.- Parameters:
queryParams
- query parameters- Returns:
- true if multicountry support is required
-
getMulticountryWhereOperator
default java.lang.String getMulticountryWhereOperator(java.util.Map<java.lang.String,java.lang.Object> queryParams)
Returns operator and parameter for catalog version of customization for "WHERE" part of the query.- Parameters:
queryParams
- query parameters- Returns:
- " IN (?catalogVersions)" for multicountry and " = ?catalogVersion" for single catalog query
-
buildOrderByForMulticountry
default java.lang.String buildOrderByForMulticountry(java.util.Map<java.lang.String,java.lang.Object> queryParams)
Builds extra order by statement for multicountry for ordering by catalog version. If query does not support multicountry returns empty string.- Parameters:
queryParams
- query parameters- Returns:
- order by statement or empty string if query does not support multicountry
-
buildOrderByForMulticountry
default java.lang.String buildOrderByForMulticountry(java.util.Map<java.lang.String,java.lang.Object> queryParams, java.lang.String prefix)
Builds extra order by statement for multicountry for ordering by catalog version. If query does not support multicountry returns empty string.- Parameters:
queryParams
- query parametersprefix
- prefix for customization table- Returns:
- order by statement or empty string if query does not support multicountry
-
buildCaseFroMulticountry
default java.lang.String buildCaseFroMulticountry(java.util.Map<java.lang.String,java.lang.Object> queryParams, java.lang.String prefix)
Builds a case statement for multicountry query. It can be used to add extra column into the results or to order results by catalog version.- Parameters:
queryParams
- query parametersprefix
- prefix for customization table- Returns:
- case statement
-
buildCaseFroMulticountry
default java.lang.String buildCaseFroMulticountry(java.util.List<CatalogVersionModel> catalogVersions, java.lang.String prefix)
Builds a case statement for multicountry query. It can be used to add extra column into the results or to order results by catalog version.- Parameters:
catalogVersions
- list of catalog versions that will be in case statement- Returns:
- case statement
-
-