コード例 #1
0
 internal MdbDocumentAdapter(MdbCompositeItemIdentity id, PropertyDefinition[] propertiesToLoad, IItem item, MailboxSession session, MdbPropertyMap propertyMap, bool allowItemBind = true)
 {
     Util.ThrowOnNullArgument(id, "id");
     Util.ThrowOnNullArgument(propertyMap, "propertyMap");
     this.id          = id;
     this.propertyMap = propertyMap;
     this.mappedPropertiesToLoadOnBind = MdbDocumentAdapter.GetMappings(this.propertyMap, propertiesToLoad);
     ExAssert.RetailAssert(this.mappedPropertiesToLoadOnBind != null, "Store Properties to load is null");
     this.Item    = item;
     this.Session = session;
     if (this.Item == null && this.Session == null)
     {
         throw new ArgumentException("session and item are both null");
     }
     this.shouldDisposeItem  = false;
     this.allowItemBind      = allowItemBind;
     this.diagnosticsSession = DiagnosticsSession.CreateComponentDiagnosticsSession("MdbDocumentAdapter", ComponentInstance.Globals.Search.ServiceName, ExTraceGlobals.MdbDocumentAdapterTracer, (long)this.GetHashCode());
 }
コード例 #2
0
ファイル: MdbDocument.cs プロジェクト: YHZX2013/exchange_diff
 internal MdbDocument(MdbCompositeItemIdentity identity, DocumentOperation operation, MdbDocumentAdapter documentAdapter) : base(identity, operation, documentAdapter)
 {
     Util.ThrowOnNullArgument(documentAdapter, "documentAdapter");
     this.disposeTracker = this.GetDisposeTracker();
 }
コード例 #3
0
ファイル: MdbDocument.cs プロジェクト: YHZX2013/exchange_diff
 internal MdbDocument(MdbCompositeItemIdentity identity, PropertyDefinition[] propertiesToPreload, Item item, MailboxSession session, MdbPropertyMap propertyMap, DocumentOperation operation) : this(identity, operation, new MdbDocumentAdapter(identity, propertiesToPreload, item, session, propertyMap, true))
 {
 }
コード例 #4
0
ファイル: MdbDocument.cs プロジェクト: YHZX2013/exchange_diff
 internal MdbDocument(MdbCompositeItemIdentity identity, PropertyDefinition[] propertiesToPreload, Item item, MdbPropertyMap propertyMap, DocumentOperation operation) : this(identity, propertiesToPreload, item, null, propertyMap, operation)
 {
 }
コード例 #5
0
ファイル: MdbDocument.cs プロジェクト: YHZX2013/exchange_diff
 internal MdbDocument(MdbCompositeItemIdentity identity, PropertyDefinition[] propertiesToPreload, MailboxSession session, MdbPropertyMap propertyMap, DocumentOperation operation) : this(identity, propertiesToPreload, null, session, propertyMap, operation)
 {
 }
コード例 #6
0
 private bool Equals(MdbCompositeItemIdentity other)
 {
     return(other != null && (object.ReferenceEquals(other, this) || (this.MdbGuid.Equals(other.MdbGuid) && this.MailboxGuid.Equals(other.MailboxGuid) && this.MailboxNumber.Equals(other.MailboxNumber) && this.ItemId.Equals(other.ItemId) && this.DocumentId.Equals(other.DocumentId))));
 }
コード例 #7
0
 internal MdbDocumentAdapter(MdbCompositeItemIdentity id, PropertyDefinition[] propertiesToLoad, IItem item, MdbPropertyMap propertyMap) : this(id, propertiesToLoad, item, null, propertyMap, true)
 {
 }
コード例 #8
0
 internal MdbDocumentAdapter(MdbCompositeItemIdentity id, PropertyDefinition[] propertiesToLoad, MailboxSession session, MdbPropertyMap propertyMap) : this(id, propertiesToLoad, null, session, propertyMap, true)
 {
 }