internal override void CoreObjectUpdate(CoreItem coreItem, CoreItemOperation operation)
 {
     base.CoreObjectUpdate(coreItem, operation);
     MessageItem.CoreObjectUpdateConversationTopic(coreItem);
     MessageItem.CoreObjectUpdateConversationIndex(coreItem);
     MessageItem.CoreObjectUpdateConversationIndexFixup(coreItem, operation);
     MessageItem.CoreObjectUpdateIconIndex(coreItem);
     MessageItem.CoreObjectUpdateMimeSkeleton(coreItem);
     if (operation == CoreItemOperation.Send && coreItem != null && coreItem.Session != null && coreItem.Session.ActivitySession != null)
     {
         StoreObjectId internalStoreObjectId = ((ICoreObject)coreItem).InternalStoreObjectId;
         string        name = base.GetType().Name;
         coreItem.Session.ActivitySession.CaptureMessageSent(internalStoreObjectId, name);
     }
 }