Class SearchSimilarVariantsController
- java.lang.Object
-
- de.hybris.platform.acceleratorstorefrontcommons.controllers.AbstractController
-
- de.hybris.platform.acceleratorstorefrontcommons.controllers.pages.AbstractPageController
-
- de.hybris.platform.sap.productconfig.frontend.controllers.AbstractProductConfigController
-
- de.hybris.platform.sap.productconfig.frontend.controllers.SearchSimilarVariantsController
-
@Controller @RequestMapping public class SearchSimilarVariantsController extends AbstractProductConfigController
Controller for variant search
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class de.hybris.platform.acceleratorstorefrontcommons.controllers.AbstractController
AbstractController.HttpNotFoundException
-
-
Field Summary
-
Fields inherited from class de.hybris.platform.sap.productconfig.frontend.controllers.AbstractProductConfigController
CMS_PAGE_TYPE, CMS_PC_PAGE_ID, CMS_PC_PAGE_TYPE
-
Fields inherited from class de.hybris.platform.acceleratorstorefrontcommons.controllers.pages.AbstractPageController
CMS_PAGE_MODEL, CMS_PAGE_TITLE, PAGE_ROOT, REDIRECT_TO_LOGIN_FOR_CHECKOUT, REDIRECT_TO_MULTISTEP_CHECKOUT, REGISTRATION_CONSENT_ID, UTF_8
-
Fields inherited from class de.hybris.platform.acceleratorstorefrontcommons.controllers.AbstractController
FORWARD_PREFIX, REDIRECT_PREFIX, ROOT
-
-
Constructor Summary
Constructors Constructor Description SearchSimilarVariantsController()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcheckForCartEntryLink(java.util.List<ConfigurationVariantData> variants, java.lang.String configId)protected ConfigurationVariantFacadegetVariantFacade()protected java.lang.StringgetViewName()org.springframework.web.servlet.ModelAndViewsearchVariant(java.lang.String configId, java.lang.String productCode, org.springframework.ui.Model model)Searches similar variants considering the value assignments of the given runtime configuration.voidsetVariantFacade(ConfigurationVariantFacade variantFacade)-
Methods inherited from class de.hybris.platform.sap.productconfig.frontend.controllers.AbstractProductConfigController
afterReloadConfiguration, cleanUpSessionAttribute, getAbstractOrderEntryLinkStrategy, getBindingResultForConfigAndSaveUiStatus, getBindingResultForConfiguration, getBreadcrumbBuilder, getCartEntryNumber, getCartEntryNumber, getCartFacade, getCartItemByConfigId, getCartItemByProductCode, getConfigCartFacade, getConfigFacade, getConfigurationErrorHandler, getGalleryImages, getOrderEntry, getOrderEntry, getPageId, getPageType, getProductCodeForCartItem, getProductConfigurationConflictChecker, getProductConfigurationValidator, getProductDataForProductCode, getProductFacade, getProductLinkStrategy, getProductService, getSessionAccessFacade, getUiRecorder, getUiStateHandler, getUiStatusForConfig, getUiStatusForConfigId, getUiStatusSync, handleRequestContext, initBinderConfigData, initializeUiStatus, isConfigLinkedToCart, isConfigRemoved, loadNewConfiguration, logConfigurationCheckDeviation, logLoadConfig, logModelmetaData, logRequestMetaData, populateCMSAttributes, populateProductData, populateProductData, populateProductDetailForDisplay, reloadConfigurationById, reloadConfigurationByKBKey, removeNullCstics, removeNullCsticsFromGroup, setAbstractOrderEntryLinkStrategy, setBreadcrumbBuilder, setCartEntryLinks, setCartFacade, setConfigCartFacade, setConfigFacade, setConfigurationErrorHandler, setProductConfigurationConflictChecker, setProductConfigurationValidator, setProductFacade, setProductLinkStrategy, setProductService, setSessionAccessFacade, setUiRecorder, setUiStateHandler, setUiStatusForConfig, setUiStatusSync, updatePageTitle
-
Methods inherited from class de.hybris.platform.acceleratorstorefrontcommons.controllers.pages.AbstractPageController
addRegistrationConsentDataToModel, checkRequestUrl, createMetaElement, decodeWithScheme, getBaseSiteService, getCheckoutRedirectUrl, getCmsPageService, getCmsPreviewService, getCmsSiteService, getConfigurationService, getConsentFacade, getContentPageForLabelOrId, getCurrencies, getCurrentCurrency, getCurrentLanguage, getCustomerFacade, getHostConfigService, getI18nService, getLanguages, getMessageSource, getPageTitleResolver, getRequestContextData, getSessionService, getSiteConfigService, getSiteName, getSiteUid, getStoreSessionFacade, getUser, getUserFacade, getViewForPage, getViewForPage, prepareNotFoundPage, setUpMetaData, setUpMetaDataForContentPage, storeCmsPageInModel, storeContentPageTitleInModel, storeContinueUrl, urlEncode
-
Methods inherited from class de.hybris.platform.acceleratorstorefrontcommons.controllers.AbstractController
addRequestToModel, getBean
-
-
-
-
Method Detail
-
searchVariant
@RequestMapping(value="/cpq/searchConfigVariant", method=POST) @ResponseBody public org.springframework.web.servlet.ModelAndView searchVariant(@RequestParam("configId") java.lang.String configId, @RequestParam("productCode") java.lang.String productCode, org.springframework.ui.Model model) throws BusinessExceptionSearches similar variants considering the value assignments of the given runtime configuration. Renders the results as variant carousel.- Parameters:
configId- configuration session idproductCode- code of the configurable productmodel- view model- Returns:
- view name
- Throws:
BusinessException
-
checkForCartEntryLink
protected void checkForCartEntryLink(java.util.List<ConfigurationVariantData> variants, java.lang.String configId) throws BusinessException
- Throws:
BusinessException
-
getViewName
protected java.lang.String getViewName()
-
getVariantFacade
protected ConfigurationVariantFacade getVariantFacade()
-
setVariantFacade
public void setVariantFacade(ConfigurationVariantFacade variantFacade)
- Parameters:
variantFacade- injects the facade object used by this controller for variant search
-
-