Class DefaultDealFacade

java.lang.Object
de.hybris.platform.travelfacades.facades.impl.DefaultDealFacade
All Implemented Interfaces:
DealFacade

public class DefaultDealFacade extends Object implements DealFacade
Default implementation of DealFacade
  • Constructor Details

    • DefaultDealFacade

      public DefaultDealFacade()
  • Method Details

    • getDealCategories

      public List<DealCategoryData> getDealCategories()
      Description copied from interface: DealFacade
      Returns a list of deal categories
      Specified by:
      getDealCategories in interface DealFacade
      Returns:
      list of deal categories
    • searchDeals

      public PackagesResponseData searchDeals(String dealCategoryCode)
      Description copied from interface: DealFacade
      Performs a search for the DealBundleTemplate based on the deal category and first available starting date.
      Specified by:
      searchDeals in interface DealFacade
      Parameters:
      dealCategoryCode - the deal category code
      Returns:
      the PackageRequestData with the deal bundle templates matching the deal category and the first available starting date
    • getAvailableDealDates

      public Set<Date> getAvailableDealDates(String dealId, Date startingDate, Date endingDate)
      Description copied from interface: DealFacade
      Evaluates valid dates for the availability of the deal based on the deal id and the given dates.
      Specified by:
      getAvailableDealDates in interface DealFacade
      Parameters:
      dealId - the deal id
      startingDate - the starting date which used in search of available dates
      endingDate - the ending date which used in search of available dates
      Returns:
      the list of valid dates
    • getAvailableDealDates

      protected Set<Date> getAvailableDealDates(DealBundleTemplateModel bundleTemplate, Date startingDate, Date endingDate)
      Evaluates valid dates for the availability of the deal based on the deal bundle and the given dates.
      Parameters:
      bundleTemplate - the bundleTemplate
      startingDate - the starting date which used in search of available dates
      endingDate - the ending date which used in search of available dates
      Returns:
      the list of valid dates
    • getDealDetails

      public PackageResponseData getDealDetails(String dealId, Date departureDate)
      Description copied from interface: DealFacade
      Returns details for the DealBundleTemplate based on the deal id and the given departure date.
      Specified by:
      getDealDetails in interface DealFacade
      Parameters:
      dealId - the deal id
      departureDate - the departure date
      Returns:
      the PackageResponseData with the deal bundle template matching the deal id and the given departure date
    • addDealToCart

      public List<CartModificationData> addDealToCart(AddDealToCartData addDealToCartData) throws TravelCartModificationException
      Description copied from interface: DealFacade
      This method allows to add a deal to the current cart
      Specified by:
      addDealToCart in interface DealFacade
      Parameters:
      addDealToCartData - the add deal to cart data
      Returns:
      list of cart modification data
      Throws:
      TravelCartModificationException
    • calculateDealDates

      protected void calculateDealDates(AddDealToCartData addDealToCartData, DealBundleTemplateModel bundleTemplate)
      This validates deal starting day over deal bundle template and populates ending date
      Parameters:
      addDealToCartData - the add deal to cart data
      bundleTemplate - the deal bundle template
    • getTimeService

      protected de.hybris.platform.servicelayer.time.TimeService getTimeService()
      Gets time service.
      Returns:
      the time service
    • setTimeService

      public void setTimeService(de.hybris.platform.servicelayer.time.TimeService timeService)
      Sets time service.
      Parameters:
      timeService - the time service
    • getDealService

      protected DealService getDealService()
      Gets deal service.
      Returns:
      the deal service
    • setDealService

      public void setDealService(DealService dealService)
      Sets deal service.
      Parameters:
      dealService - the deal service
    • getDealBundleTemplateService

      protected DealBundleTemplateService getDealBundleTemplateService()
      Gets deal bundle template service.
      Returns:
      the deal bundle template service
    • setDealBundleTemplateService

      public void setDealBundleTemplateService(DealBundleTemplateService dealBundleTemplateService)
      Sets deal bundle template service.
      Parameters:
      dealBundleTemplateService - the deal bundle template service
    • getDealSearchRequestPipelineManager

      protected DealSearchRequestPipelineManager getDealSearchRequestPipelineManager()
      Gets deal search request pipeline manager.
      Returns:
      the deal search request pipeline manager
    • setDealSearchRequestPipelineManager

      public void setDealSearchRequestPipelineManager(DealSearchRequestPipelineManager dealSearchRequestPipelineManager)
      Sets deal search request pipeline manager.
      Parameters:
      dealSearchRequestPipelineManager - the deal search request pipeline manager
    • getDealSearchResponsePipelineManager

      protected DealSearchResponsePipelineManager getDealSearchResponsePipelineManager()
      Gets deal search response pipeline manager.
      Returns:
      the deal search response pipeline manager
    • setDealSearchResponsePipelineManager

      public void setDealSearchResponsePipelineManager(DealSearchResponsePipelineManager dealSearchResponsePipelineManager)
      Sets deal search response pipeline manager.
      Parameters:
      dealSearchResponsePipelineManager - the deal search response pipeline manager
    • getDealCategoryConverter

      protected de.hybris.platform.servicelayer.dto.converter.Converter<DealCategoryModel,DealCategoryData> getDealCategoryConverter()
      Gets deal category converter.
      Returns:
      the deal category converter
    • setDealCategoryConverter

      public void setDealCategoryConverter(de.hybris.platform.servicelayer.dto.converter.Converter<DealCategoryModel,DealCategoryData> dealCategoryConverter)
      Sets deal category converter.
      Parameters:
      dealCategoryConverter - the deal category converter
    • getDealBundleTemplateFacade

      protected DealBundleTemplateFacade getDealBundleTemplateFacade()
      get dealBundleTemplateFacade
      Returns:
      dealBundleTemplateFacade
    • setDealBundleTemplateFacade

      public void setDealBundleTemplateFacade(DealBundleTemplateFacade dealBundleTemplateFacade)
      set dealBundleTemplateFacade
      Parameters:
      dealBundleTemplateFacade - the dealBundleTemplateFacade
    • getAddBundleByTypeStrategyMap

      protected Map<String,AddBundleToCartByTypeStrategy> getAddBundleByTypeStrategyMap()
      Gets add bundle by type strategy map.
      Returns:
      the add bundle by type strategy map
    • setAddBundleByTypeStrategyMap

      public void setAddBundleByTypeStrategyMap(Map<String,AddBundleToCartByTypeStrategy> addBundleByTypeStrategyMap)
      Sets add bundle by type strategy map.
      Parameters:
      addBundleByTypeStrategyMap - the add bundle by type strategy map
    • getCartFacade

      protected TravelCartFacade getCartFacade()
      Gets cart facade.
      Returns:
      the cart facade
    • setCartFacade

      public void setCartFacade(TravelCartFacade cartFacade)
      Sets cart facade.
      Parameters:
      cartFacade - the cart facade
    • getAddDealToCartValidationStrategy

      protected AddDealToCartValidationStrategy getAddDealToCartValidationStrategy()
      Gets add deal to cart validation strategy.
      Returns:
      add deal to cart validation strategy
    • setAddDealToCartValidationStrategy

      public void setAddDealToCartValidationStrategy(AddDealToCartValidationStrategy addDealToCartValidationStrategy)
      Sets add deal to cart validation strategy.
      Parameters:
      addDealToCartValidationStrategy - the add deal to cart validation strategy