java.lang.Object
de.hybris.platform.travelfacades.facades.accommodation.search.handlers.impl.AbstractDefaultPropertyHandler
Direct Known Subclasses:
PropertyDataAccommodationInfoHandler, PropertyDataBasicHandler, PropertyDataPriceHandler, PropertyDataRatePlanConfigsHandler

public abstract class AbstractDefaultPropertyHandler extends Object
Abstract property handler performing validation when requested and implementing methods shared across property handlers. The handlingAttributes method will be implemented by concrete handlers which will use it to inject their own business logic.
  • Constructor Details

    • AbstractDefaultPropertyHandler

      public AbstractDefaultPropertyHandler()
  • Method Details

    • validateDayRatesAgainstRequest

      protected Boolean validateDayRatesAgainstRequest(Map<Integer,List<AccommodationOfferingDayRateData>> dayRatesForRoomStayCandidate, AccommodationSearchRequestData accommodationRequest)
    • validateDayRateAgainstRoomStayCandidates

      protected boolean validateDayRateAgainstRoomStayCandidates(Map<Integer,List<AccommodationOfferingDayRateData>> dayRatesForRoomStayCandidate, AccommodationSearchRequestData accommodationRequest)
      Document validation: check if documents refer to the correct number of room stay candidate that is there must be a list of documents of each room stay candidate requested
      Parameters:
      dayRatesForRoomStayCandidate - mapping between a room stay reference number and the related documents
      accommodationRequest - the request dto
      Returns:
      true if the list of documents is valid, false otherwise
    • validateDayRateAgainstDates

      protected boolean validateDayRateAgainstDates(Map<Integer,List<AccommodationOfferingDayRateData>> dayRatesForRoomStayCandidate, AccommodationSearchRequestData accommodationRequest)
      Document validation: check of the number of documents returned covers the duration of the journey that is there must be one and only one document for each room stay candidate, for each day
      Parameters:
      dayRatesForRoomStayCandidate - mapping between a room stay reference number and the related documents
      accommodationRequest - the request dto
      Returns:
      true if the list of documents is valid, false otherwise
    • getRequestedDuration

      protected long getRequestedDuration(AccommodationSearchRequestData accommodationRequest)
    • handlingAttributes

      protected abstract void handlingAttributes(Map<Integer,List<AccommodationOfferingDayRateData>> dayRatesForRoomStayCandidate, PropertyData propertyData)