//END: part 4
        public void Add(IIndexable indexable, IProviderUpdateContext context, ProviderIndexConfiguration indexConfiguration)
        {
            var doc = GetDocument(indexable, context);

            //START: post 4
            if (doc == null)
            {
                Event.RaiseEvent("indexing:excludedfromindex", new object[] { _index.Name, indexable.Id });
                return;
            }
            //END: post 4
            context.AddDocument(doc, null);
        }
        public void Add(IIndexable indexable, IProviderUpdateContext context, ProviderIndexConfiguration indexConfiguration)
        {
            Assert.ArgumentNotNull(indexable, "indexable");
            Assert.ArgumentNotNull(context, "context");
            var data = BuildDataToIndex(context, indexable);
            if (data == null)
                return;
            if (data.IsEmpty)
                CrawlingLog.Log.Warn(string.Format("AzureIndexOperations.Add(): IndexVersion produced a NULL doc for version {0}. Skipping.", indexable.UniqueId));
            var document = data.BuildDocument();

            ((IAzureProviderIndex)context.Index).AzureSchema.ReconcileAzureIndexSchema(document);

            LogIndexOperation(() => string.Format("Adding indexable UniqueId:{0}, Culture:{1}, DataSource:{2}, Index:{3}", indexable.UniqueId, indexable.Culture, indexable.DataSource, context.Index.Name), data, document);
            context.AddDocument(document, data.Culture != null ? new CultureExecutionContext(data.Culture) : null);
        }
Пример #3
0
 private void ApplyPermissionsThenIndex(IProviderUpdateContext context, IIndexable version, IIndexable latestVersion)
 {
     if (InboundIndexFilterPipeline.Run(new InboundIndexFilterArgs(version)))
     {
         Event.RaiseEvent("indexing:excludedfromindex", new object[] { _index.Name, version.UniqueId });
     }
     else
     {
         var itemToAdd = IndexVersion(version, latestVersion, context);
         if (itemToAdd == null)
         {
             CrawlingLog.Log.Warn(string.Format("ElasticIndexOperations : AddItem : IndexVersion produced a NULL doc for version {0}. Skipping.", version.UniqueId));
         }
         else
         {
             context.AddDocument(itemToAdd, null);
         }
     }
 }
        public void Add(IIndexable indexable, IProviderUpdateContext context,
                        ProviderIndexConfiguration indexConfiguration)
        {
            if (indexable == null)
            {
                throw new ArgumentNullException(nameof(indexable));
            }

            CrawlingLog.Log.Debug($"{LogPreffix} {_index.Name} Add {indexable.Id}");

            var doc = BuildDataToIndex(context, indexable);

            if (doc == null)
            {
                Event.RaiseEvent("indexing:excludedfromindex", new object[] { context.Index.Name, indexable.Id });
                return;
            }

            context.AddDocument(doc, (IExecutionContext)null);
        }
Пример #5
0
        public virtual void Add(IIndexable indexable, IProviderUpdateContext context, ProviderIndexConfiguration indexConfiguration)
        {
            Assert.ArgumentNotNull(indexable, "indexable");
            Assert.ArgumentNotNull(context, "context");

            bool valid = ItemIsValid(indexable);

            if (!valid)
            {
                return;
            }

            Document document = GetIndexData(indexable, context);
            if (document == null)
            {
                return;
            }

            context.AddDocument(document, indexable.Culture != null ? new CultureExecutionContext(indexable.Culture) : null);
        }
Пример #6
0
        public void Add(IIndexable indexable, IProviderUpdateContext context, ProviderIndexConfiguration indexConfiguration)
        {
            Assert.ArgumentNotNull(indexable, "indexable");
            Assert.ArgumentNotNull(context, "context");
            var data = BuildDataToIndex(context, indexable);

            if (data == null)
            {
                return;
            }
            if (data.IsEmpty)
            {
                CrawlingLog.Log.Warn(string.Format("AzureIndexOperations.Add(): IndexVersion produced a NULL doc for version {0}. Skipping.", indexable.UniqueId));
            }
            var document = data.BuildDocument();

            ((IAzureProviderIndex)context.Index).AzureSchema.ReconcileAzureIndexSchema(document);

            LogIndexOperation(() => string.Format("Adding indexable UniqueId:{0}, Culture:{1}, DataSource:{2}, Index:{3}", indexable.UniqueId, indexable.Culture, indexable.DataSource, context.Index.Name), data, document);
            context.AddDocument(document, data.Culture != null ? new CultureExecutionContext(data.Culture) : null);
        }