The handler for the HorizontalRecordSpotlight
cartridge needs to return a set of product records that the renderer can use to render the product spotlights on the page. This functionality already exists in the /atg/endeca/assembler/cartridge/handler/RecordSpotlight
cartridge handler, so the Store.Endeca.Asssembler
module configures the HorizontalRecordSpotlight
cartridge to use the RecordSpotlight
handler in order to avoid redundant functionality. This configuration is specified in the NucleusAssemblerFactory.handlerMapping
property:
HorizontalRecordSpotlight=/atg/endeca/assembler/cartridge/handler/RecordSpotlight
The Store.Endeca.Assembler
module also changes the class of the RecordSpotlight
cartridge handler to atg.projects.store.assembler.cartridge.handler.FilteringRecordSpotlightHandler
, which is a subclass of com.endeca.infront.cartridge.RecordSpotlightHandler
. The FilteringRecordSpotlightHandler
class adds two properties, storeCartridgeTools
(for specifying the StoreCartridgeTools
component), and rangeFilterBuilders
(for specifying an array of range filter builders). The configuration added by the Store.Endeca.Assembler
module looks like this:
$class=atg.projects.store.assembler.cartridge.handler.FilteringRecordSpotlightHandler # Tools class to perform common cartridge specific tasks. storeCartridgeTools=/atg/endeca/assembler/cartridge/StoreCartridgeTools # Endeca RangeFilter list builders. rangeFilterBuilders=\ /atg/endeca/assembler/cartridge/manager/filter/RecordSpotlightDateRangeFilterBuilder
See the Range Filtering section for information about range filter builders.