コード例 #1
0
        private List <ITemplateBuilder> CreateTemplateBuilders()
        {
            // Setup templates
            var storeTemplateBuilder     = new ProductCatalogGroupTemplateBuilder(_log);
            var categoryTemplateBuilder  = new ProductCategoryTemplateBuilder(_log);
            var catalogTemplateBuilder   = new ProductCatalogTemplateBuilder(_log);
            var uCommerceTemplateBuilder = new UCommerceTemplateBuilder();
            var storesTemplateBuilder    = new StoresTemplateBuilder();

            var builders = new List <ITemplateBuilder>
            {
                uCommerceTemplateBuilder,
                storesTemplateBuilder,
                storeTemplateBuilder,
                catalogTemplateBuilder,
                categoryTemplateBuilder
            };

            // Include product and variant templates if product item data is included in the data provider.
            if (_dataProviderSettings.IncludeProductData)
            {
                var productTemplateBuilder = new ProductTemplatesBuilder(_log);
                var variantTemplateBuilder = new ProductVariantTemplatesBuilder(_log);

                builders.Add(productTemplateBuilder);
                builders.Add(variantTemplateBuilder);
            }

            return(builders);
        }
コード例 #2
0
        public ContentNodeDataProvider(ILoggingService log, ContentNodeSitecoreItemFactory factory, IList <ITemplateFieldValueProvider> providers)
        {
            _log         = log;
            _itemFactory = factory;

            _categoryValueProvider = providers.OfType <ProductCategoryTemplateBuilder>().First();
            _catalogValueProvider  = providers.OfType <ProductCatalogTemplateBuilder>().First();

            _sitecoreItems = new Dictionary <ID, ISitecoreItem>();
        }