Class PROSFilterSolutionByRuleHandler
java.lang.Object
de.hybris.platform.prosfacades.fare.search.handlers.impl.PROSFilterSolutionByRuleHandler
- All Implemented Interfaces:
ShoppingFlightSearchHandler
Handler to filter out the solution based on show bundle rule.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoFilter(List<String> bundlesToShow, FlightSearchResponseData flightSearchResponseData) Filter bundles, bundle products, solutions and fares.protected voidfilterBundleProducts(List<String> fareBundles, FlightSearchResponseData flightSearchResponseData) Remove bundle products associated with non eligible bundle(s).protected voidfilterBundles(List<String> bundlesToShow, FlightSearchResponseData flightSearchResponseData) Remove bundles which have ignore rules as false and the rule doesn't apply.protected voidfilterSolutions(List<String> fareBundles, FlightSearchResponseData flightSearchResponseData) Remove solutions that contains non eligible bundle(s).protected de.hybris.platform.configurablebundleservices.bundle.BundleTemplateServiceGets bundle template service.protected de.hybris.platform.servicelayer.dto.converter.Converter<FareShopMessage,FareSearchRequestData> Gets fare search request data converter.protected TravelRulesServiceGets travel rules service.voidhandle(SearchResponseMessage searchResponseMessage, FareShopMessage fareShopMessage, FlightSearchResponseData flightSearchResponseData, Map<String, TransportOfferingData> transportOfferingDataMap, Map<Integer, String> flightIdCodeMap, FlightSearchRequestData flightSearchRequestData) Handle methodprotected booleanisFareBundlesAllowed(BookingOptionData bookingOptionData, List<String> fareBundles) Checks if the booking option contains one of the non eligible bundlevoidsetBundleTemplateService(de.hybris.platform.configurablebundleservices.bundle.BundleTemplateService bundleTemplateService) Sets bundle template service.voidsetFareSearchRequestDataConverter(de.hybris.platform.servicelayer.dto.converter.Converter<FareShopMessage, FareSearchRequestData> fareSearchRequestDataConverter) Sets fare search request data converter.voidsetTravelRulesService(TravelRulesService travelRulesService) Sets travel rules service.protected voidshowBundles(FareShopMessage fareShopMessage, FlightSearchResponseData flightSearchResponseData) CallsTravelRulesServiceto get a list of bundles to show and filter out the non eligible bundles.
-
Constructor Details
-
PROSFilterSolutionByRuleHandler
public PROSFilterSolutionByRuleHandler()
-
-
Method Details
-
handle
public void handle(SearchResponseMessage searchResponseMessage, FareShopMessage fareShopMessage, FlightSearchResponseData flightSearchResponseData, Map<String, TransportOfferingData> transportOfferingDataMap, Map<Integer, String> flightIdCodeMap, FlightSearchRequestData flightSearchRequestData) Description copied from interface:ShoppingFlightSearchHandlerHandle method- Specified by:
handlein interfaceShoppingFlightSearchHandler- Parameters:
searchResponseMessage- the search response messagefareShopMessage- the fare shop messageflightSearchResponseData- the flightSearchResponseDatatransportOfferingDataMap- the transportOfferingDataMapflightIdCodeMap- the flightIdCodeMapflightSearchRequestData- the flight search request data
-
showBundles
protected void showBundles(FareShopMessage fareShopMessage, FlightSearchResponseData flightSearchResponseData) CallsTravelRulesServiceto get a list of bundles to show and filter out the non eligible bundles.- Parameters:
fareShopMessage- the fare shop messageflightSearchResponseData- the flight search response data
-
doFilter
protected void doFilter(List<String> bundlesToShow, FlightSearchResponseData flightSearchResponseData) Filter bundles, bundle products, solutions and fares.- Parameters:
bundlesToShow- the bundles to showflightSearchResponseData- the flight search response data
-
filterSolutions
protected void filterSolutions(List<String> fareBundles, FlightSearchResponseData flightSearchResponseData) Remove solutions that contains non eligible bundle(s).- Parameters:
fareBundles- the fare bundlesflightSearchResponseData- the flight search response data
-
isFareBundlesAllowed
protected boolean isFareBundlesAllowed(BookingOptionData bookingOptionData, List<String> fareBundles) Checks if the booking option contains one of the non eligible bundle- Parameters:
bookingOptionData- the booking option datafareBundles- the fare bundles- Returns:
- the boolean
-
filterBundles
protected void filterBundles(List<String> bundlesToShow, FlightSearchResponseData flightSearchResponseData) Remove bundles which have ignore rules as false and the rule doesn't apply.- Parameters:
bundlesToShow- the bundles to showflightSearchResponseData- the flight search response data
-
filterBundleProducts
protected void filterBundleProducts(List<String> fareBundles, FlightSearchResponseData flightSearchResponseData) Remove bundle products associated with non eligible bundle(s).- Parameters:
fareBundles- the fare bundlesflightSearchResponseData- the flight search response data
-
getTravelRulesService
Gets travel rules service.- Returns:
- the travel rules service
-
setTravelRulesService
Sets travel rules service.- Parameters:
travelRulesService- the travel rules service
-
getFareSearchRequestDataConverter
protected de.hybris.platform.servicelayer.dto.converter.Converter<FareShopMessage,FareSearchRequestData> getFareSearchRequestDataConverter()Gets fare search request data converter.- Returns:
- the fare search request data converter
-
setFareSearchRequestDataConverter
public void setFareSearchRequestDataConverter(de.hybris.platform.servicelayer.dto.converter.Converter<FareShopMessage, FareSearchRequestData> fareSearchRequestDataConverter) Sets fare search request data converter.- Parameters:
fareSearchRequestDataConverter- the fare search request data converter
-
getBundleTemplateService
protected de.hybris.platform.configurablebundleservices.bundle.BundleTemplateService getBundleTemplateService()Gets bundle template service.- Returns:
- the bundle template service
-
setBundleTemplateService
public void setBundleTemplateService(de.hybris.platform.configurablebundleservices.bundle.BundleTemplateService bundleTemplateService) Sets bundle template service.- Parameters:
bundleTemplateService- the bundle template service
-