java.lang.Object
de.hybris.platform.solrfacetsearch.indexer.impl.DefaultIndexer
de.hybris.platform.solrfacetsearch.indexer.impl.TravelIndexer
All Implemented Interfaces:
de.hybris.platform.solrfacetsearch.indexer.spi.Indexer, org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanFactoryAware

public class TravelIndexer extends de.hybris.platform.solrfacetsearch.indexer.impl.DefaultIndexer
Overrides the DefaultIndexer class to include travel specific date based indexing
  • Constructor Details

    • TravelIndexer

      public TravelIndexer()
  • Method Details

    • indexItems

      public Collection<org.apache.solr.common.SolrInputDocument> indexItems(Collection<ItemModel> items, FacetSearchConfig facetSearchConfig, IndexedType indexedType) throws de.hybris.platform.solrfacetsearch.indexer.exceptions.IndexerException, InterruptedException
      Specified by:
      indexItems in interface de.hybris.platform.solrfacetsearch.indexer.spi.Indexer
      Overrides:
      indexItems in class de.hybris.platform.solrfacetsearch.indexer.impl.DefaultIndexer
      Throws:
      de.hybris.platform.solrfacetsearch.indexer.exceptions.IndexerException
      InterruptedException
    • indexItems

      public Collection<org.apache.solr.common.SolrInputDocument> indexItems(Collection<ItemModel> items, FacetSearchConfig facetSearchConfig, IndexedType indexedType, Collection<IndexedProperty> indexedProperties) throws de.hybris.platform.solrfacetsearch.indexer.exceptions.IndexerException, InterruptedException
      Specified by:
      indexItems in interface de.hybris.platform.solrfacetsearch.indexer.spi.Indexer
      Overrides:
      indexItems in class de.hybris.platform.solrfacetsearch.indexer.impl.DefaultIndexer
      Throws:
      de.hybris.platform.solrfacetsearch.indexer.exceptions.IndexerException
      InterruptedException
    • createInputDocument

      public org.apache.solr.common.SolrInputDocument createInputDocument(ItemModel model, IndexConfig indexConfig, IndexedType indexedType, Date documentDate) throws de.hybris.platform.solrfacetsearch.config.exceptions.FieldValueProviderException
      Throws:
      de.hybris.platform.solrfacetsearch.config.exceptions.FieldValueProviderException
    • createInputDocument

      public org.apache.solr.common.SolrInputDocument createInputDocument(ItemModel model, IndexConfig indexConfig, IndexedType indexedType, Collection<IndexedProperty> indexedProperties, Date documentDate) throws de.hybris.platform.solrfacetsearch.config.exceptions.FieldValueProviderException
      Throws:
      de.hybris.platform.solrfacetsearch.config.exceptions.FieldValueProviderException
    • addCommonFields

      protected void addCommonFields(org.apache.solr.common.SolrInputDocument document, de.hybris.platform.solrfacetsearch.indexer.IndexerBatchContext batchContext, ItemModel model, Date documentDate)
      Add common fields.
      Parameters:
      document - the document
      batchContext - the batch context
      model - the model
      documentDate - the document date
    • addIndexedPropertyFields

      protected void addIndexedPropertyFields(de.hybris.platform.solrfacetsearch.indexer.spi.InputDocument document, de.hybris.platform.solrfacetsearch.indexer.IndexerBatchContext batchContext, ItemModel model, Date documentDate) throws de.hybris.platform.solrfacetsearch.config.exceptions.FieldValueProviderException
      Add indexed property fields.
      Parameters:
      document - the document
      batchContext - the batch context
      model - the model
      documentDate - the document date
      Throws:
      de.hybris.platform.solrfacetsearch.config.exceptions.FieldValueProviderException - the field value provider exception
    • addIndexedPropertyFieldsForNewDateBasedApi

      protected void addIndexedPropertyFieldsForNewDateBasedApi(de.hybris.platform.solrfacetsearch.indexer.spi.InputDocument document, de.hybris.platform.solrfacetsearch.indexer.IndexerBatchContext batchContext, ItemModel model, Collection<IndexedProperty> indexedProperties, String valueProviderId, DateBasedValueResolver<ItemModel> valueProvider, Date documentDate) throws de.hybris.platform.solrfacetsearch.config.exceptions.FieldValueProviderException
      Add indexed property fields for new date based api.
      Parameters:
      document - the document
      batchContext - the batch context
      model - the model
      indexedProperties - the indexed properties
      valueProviderId - the value provider id
      valueProvider - the value provider
      documentDate - the document date
      Throws:
      de.hybris.platform.solrfacetsearch.config.exceptions.FieldValueProviderException - the field value provider exception
    • logDebug

      protected void logDebug(ItemModel itemModel)
    • isRoomRateAvailableOnRatePlans

      protected boolean isRoomRateAvailableOnRatePlans(Collection<RatePlanConfigModel> ratePlanConfigs, Date currentDate)
    • getTimeService

      protected de.hybris.platform.servicelayer.time.TimeService getTimeService()
    • setTimeService

      public void setTimeService(de.hybris.platform.servicelayer.time.TimeService timeService)
    • getCatalogVersionService

      protected de.hybris.platform.catalog.CatalogVersionService getCatalogVersionService()
    • setCatalogVersionService

      public void setCatalogVersionService(de.hybris.platform.catalog.CatalogVersionService catalogVersionService)
    • getConfigurationService

      protected de.hybris.platform.servicelayer.config.ConfigurationService getConfigurationService()
    • setConfigurationService

      public void setConfigurationService(de.hybris.platform.servicelayer.config.ConfigurationService configurationService)