Loading...
Area: Optimizely B2B Commerce

PopulateProductStyles

Recommended reading 
Order Pipe Description
100 ValidateContext Returns an error if parameter.SiteContext, parameter.PerRequestCacheManager, parameter.ParentProductDto or parameter.GetProductSettingsResult is null.
200 GetStyledChildren Sets result.StyledChildren to products whose StyledParentId equals parameter.ParentProductDto.Id that are active and are not discontinued or are discontinued with TrackInventory true.
300 GetRestrictedStyledChildrenIds Sets result.RestrictedStyledChildrenIds to result of calling IProductUtilities.GetRestrictedProductIds (returns all ids for result.StyledChildren that are restricted for the current SiteContext).
400 FilterOutRestrictedChildren Removes products from result.StyledChildren whose ids are in result.RestrictedSyledChildrenIds.
500 CacheInventory Gets inventory for all products in result.StyledChildren in one call and caches the values in the per request cache manager to be used in the inventory provider.  If the inventory service is not Generic, this pipe is bypassed.
600 CacheLowStockQuantities Gets low stock quantities for all products in result.StyledChildren in one call and caches the values in the per request cache manager to be used in the populate availabilities pipeline.  If the ExcludeAvailability parameter is true, this pipe is bypassed.
700 CachePriceMatrixList Gets price matrix records for all products in result.StyledChildren in one call and caches the values in the per request cache manager to be used in the pricing service.  If the GetPrices parameter is false or the pricing service is not Generic, this pipe is bypassed.
800 GetInventory Calls the inventory service to get the inventory for all StyledChildren and stores the result in result.GetInventoryResult.
900 GetProductPricing Calls the pricing pipeline to get the pricing for all StyledChildren and stores the result in result.GetProductPricingResult.  If the GetPrices parameter is false, this pipe is bypassed.
1000 PopulateImages Calls the populate images pipeline to get the images for all StyledChildren and stores the result in result.PopulateImagesResult.
1100 PopulateAvailabilities Calls the populate availabilities pipeline to get the availability for all StyledChildren and stores the result in result.PopulateAvailabilitiesResult.  If the ExcludeAvailability parameter is true, this pipe is bypassed.
1200 CreateStyledProductDtos Goes through the result.StyledChildren (skipping products that are discontinued and have no available inventory) and all of the other data gathered in the pipeline to construct and populate result.StyledChildrenDtos.
Do you find this information helpful? Please log in to provide feedback.

Last updated: Dec 11, 2020

Recommended reading