示例#1
0
        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);
        }
示例#2
0
 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);
     }
 }
示例#3
0
        public void UpdateTagInOwner(TagInOwner tagInOwner)
        {
            Document doc = TagIndexDocument.Convert(tagInOwner);

            searchEngine.Update(doc, tagInOwner.Id.ToString(), TagIndexDocument.TagInOwnerId);
        }
示例#4
0
 public void InsertTagInOwner(TagInOwner tagInOwner)
 {
     InsertTagInOwner(new TagInOwner[] { tagInOwner });
 }