Class UpdateStockLevelsToTransportOfferingJob

java.lang.Object
de.hybris.platform.servicelayer.cronjob.AbstractJobPerformable<UpdateStockLevelsToTransportOfferingCronJobModel>
de.hybris.platform.travelservices.cronjob.UpdateStockLevelsToTransportOfferingJob
All Implemented Interfaces:
de.hybris.platform.servicelayer.cronjob.JobPerformable<UpdateStockLevelsToTransportOfferingCronJobModel>

public class UpdateStockLevelsToTransportOfferingJob extends de.hybris.platform.servicelayer.cronjob.AbstractJobPerformable<UpdateStockLevelsToTransportOfferingCronJobModel>
A Cron job to set-up StockLevels to TransportOfferings.
  • Constructor Details

    • UpdateStockLevelsToTransportOfferingJob

      public UpdateStockLevelsToTransportOfferingJob()
  • Method Details

    • perform

      public de.hybris.platform.servicelayer.cronjob.PerformResult perform(UpdateStockLevelsToTransportOfferingCronJobModel updateStockLevelsToTransportOfferingCronJobModel)
      This method calls a DAO to get all configured TransportOfferings. For each TransportOffering check if the travelSector is domestic, if yes, set economy stockLevel, else(i.e international sector) set economy, economyplus & business stockLevels.
      Specified by:
      perform in interface de.hybris.platform.servicelayer.cronjob.JobPerformable<UpdateStockLevelsToTransportOfferingCronJobModel>
      Specified by:
      perform in class de.hybris.platform.servicelayer.cronjob.AbstractJobPerformable<UpdateStockLevelsToTransportOfferingCronJobModel>
      Parameters:
      updateStockLevelsToTransportOfferingCronJobModel - CronJob model with stockLevel data.
    • setupEcoPlusAndBusinessStockLevels

      protected void setupEcoPlusAndBusinessStockLevels(UpdateStockLevelsToTransportOfferingCronJobModel updateStockLevelsToTransportOfferingCronJobModel, TransportOfferingModel transportOffering)
    • setupEconomyAndAncillaryStockLevels

      protected void setupEconomyAndAncillaryStockLevels(UpdateStockLevelsToTransportOfferingCronJobModel updateStockLevelsToTransportOfferingCronJobModel, TransportOfferingModel transportOffering)
    • setupStockLevel

      protected void setupStockLevel(TransportOfferingModel transportOffering, Map<String,Integer> stockMap)
      For each Stock entry check if the product code exists, if yes, update(or reset) availability, else create a new stockLevel and assign availability
      Parameters:
      transportOffering - TransportOfferingModel to which the stockLevel has to be updated.
      stockMap - Fare Booking Class / Product Code and stockLevel.
    • updateTransportofferingWithStockLevel

      protected void updateTransportofferingWithStockLevel(TransportOfferingModel transportOffering, Map.Entry<String,Integer> entry)
    • getStockLevelForProductCode

      protected StockLevelModel getStockLevelForProductCode(TransportOfferingModel transportOffering, String productCode)
    • createStockLevel

      protected StockLevelModel createStockLevel(TransportOfferingModel transportOffering, String productCode)
    • getModelService

      protected de.hybris.platform.servicelayer.model.ModelService getModelService()
      Returns:
      the modelService
    • getTransportOfferingService

      protected TransportOfferingService getTransportOfferingService()
      Returns:
      the transportOfferingService
    • setTransportOfferingService

      public void setTransportOfferingService(TransportOfferingService transportOfferingService)
      Parameters:
      transportOfferingService - the transportOfferingService to set