public static Document Convert(TagInOwner tagInOwner) { Document doc = new Document(); doc.Add(new Field(TagIndexDocument.TagName, tagInOwner.TagName, Field.Store.YES, Field.Index.ANALYZED)); doc.Add(new Field(TagIndexDocument.TenantTypeId, tagInOwner.TenantTypeId, Field.Store.YES, Field.Index.NOT_ANALYZED)); doc.Add(new Field(TagIndexDocument.ItemCount, tagInOwner.ItemCount.ToString(), Field.Store.YES, Field.Index.NOT_ANALYZED)); doc.Add(new Field(TagIndexDocument.OwnerId, tagInOwner.OwnerId.ToString(), Field.Store.YES, Field.Index.NOT_ANALYZED)); doc.Add(new Field(TagIndexDocument.TagId, "0", Field.Store.YES, Field.Index.NOT_ANALYZED)); doc.Add(new Field(TagIndexDocument.TagInOwnerId, tagInOwner.Id.ToString(), Field.Store.YES, Field.Index.NOT_ANALYZED)); return(doc); }
private void TagInOwner_After(TagInOwner sender, CommonEventArgs eventArgs) { if (sender == null) { return; } if (tagSearcher == null) { tagSearcher = (TagSearcher)SearcherFactory.GetSearcher(TagSearcher.CODE); } if (eventArgs.EventOperationType == EventOperationType.Instance().Create()) { tagSearcher.InsertTagInOwner(sender); } else if (eventArgs.EventOperationType == EventOperationType.Instance().Delete()) { tagSearcher.DeleteTagInOwner(sender.Id); } else if (eventArgs.EventOperationType == EventOperationType.Instance().Update()) { tagSearcher.UpdateTagInOwner(sender); } }
public void UpdateTagInOwner(TagInOwner tagInOwner) { Document doc = TagIndexDocument.Convert(tagInOwner); searchEngine.Update(doc, tagInOwner.Id.ToString(), TagIndexDocument.TagInOwnerId); }
public void InsertTagInOwner(TagInOwner tagInOwner) { InsertTagInOwner(new TagInOwner[] { tagInOwner }); }