コード例 #1
0
 private void AssertCorrectStoreId(StoreId storeId, StoreId myStoreId)
 {
     if (!myStoreId.Equals(storeId))
     {
         throw new MismatchingStoreIdException(myStoreId, storeId);
     }
 }
コード例 #2
0
ファイル: Store.cs プロジェクト: moran321/dotNetCourse
        public override bool Equals(object obj)
        {
            var duplicate = (Store)obj;

            return(Chain.ChainNumber.Equals(duplicate.Chain.ChainNumber) && StoreId.Equals(duplicate.StoreId));
            // return Chain.Id.Equals(duplicate.Chain.Id) && StoreId.Equals(duplicate.StoreId);
        }
コード例 #3
0
        // Token: 0x0600045D RID: 1117 RVA: 0x0001F3C4 File Offset: 0x0001D5C4
        private bool IsMigrationFolder(StoreObjectId sourceFolderId, out DefaultFolderType folderType)
        {
            bool result = false;

            folderType = DefaultFolderType.None;
            using (Folder folder = Folder.Bind(this.MailboxSession, sourceFolderId, new PropertyDefinition[]
            {
                FolderSchema.DisplayName,
                StoreObjectSchema.ParentItemId,
                FolderSchema.Id
            }))
            {
                if (string.Compare(folder.DisplayName, DefaultFolderType.Inbox.ToString(), true) == 0 || string.Compare(folder.DisplayName, DefaultFolderType.SentItems.ToString(), true) == 0)
                {
                    using (Folder folder2 = Folder.Bind(this.MailboxSession, folder.ParentId, new PropertyDefinition[]
                    {
                        FolderSchema.DisplayName,
                        StoreObjectSchema.ParentItemId
                    }))
                    {
                        StoreId defaultFolderId = this.MailboxSession.GetDefaultFolderId(DefaultFolderType.Configuration);
                        if (defaultFolderId.Equals(folder2.ParentId) && string.Compare(folder2.DisplayName, MigrateToArchiveEnforcer.MigrationFolderName, true) == 0)
                        {
                            result     = true;
                            folderType = ((string.Compare(folder.DisplayName, DefaultFolderType.Inbox.ToString(), true) == 0) ? DefaultFolderType.Inbox : DefaultFolderType.SentItems);
                        }
                    }
                }
            }
            return(result);
        }
コード例 #4
0
        private void UpdateFolderMap(StoreId sourceFolderId)
        {
            Stack <FolderNode> stack   = new Stack <FolderNode>();
            StoreId            storeId = sourceFolderId;

            while (!this.folderNodeMap.ContainsKey(storeId))
            {
                using (Folder folder = Folder.Bind(this.sourceMailbox, storeId, new PropertyDefinition[]
                {
                    StoreObjectSchema.ParentItemId,
                    FolderSchema.DisplayName,
                    StoreObjectSchema.IsSoftDeleted
                }))
                {
                    bool valueOrDefault = folder.GetValueOrDefault <bool>(StoreObjectSchema.IsSoftDeleted);
                    stack.Push(new FolderNode(storeId, null, folder.DisplayName, valueOrDefault, null));
                    if (storeId.Equals(folder.ParentId))
                    {
                        throw new CorruptDataException(Strings.CorruptedFolder(this.sourceMailbox.MailboxOwner.MailboxInfo.DisplayName));
                    }
                    storeId = folder.ParentId;
                }
            }
            FolderNode parent = this.folderNodeMap[storeId];

            while (stack.Count > 0)
            {
                FolderNode folderNode = stack.Pop();
                folderNode.Parent = parent;
                this.folderNodeMap.Add(folderNode.SourceFolderId, folderNode);
                parent = folderNode;
            }
        }
        public void ShouldExhibitValueTypeEquality()
        {
            StoreId<string> storeId1 = new StoreId<string>("A");
            StoreId<string> storeId2 = new StoreId<string>("A");
            StoreId<string> storeId3 = new StoreId<string>("B");

            Assert.True(storeId1.Equals(storeId2));
            Assert.False(storeId1.Equals(storeId3));
            Assert.True(storeId1.Equals(storeId1));
            Assert.False(storeId1.Equals(new object()));
            Assert.False(storeId1.Equals(null));

            Assert.True(storeId1.GetHashCode().Equals(storeId2.GetHashCode()));
            Assert.False(storeId1.GetHashCode().Equals(storeId3.GetHashCode()));
            Assert.True(storeId1.GetHashCode().Equals(storeId1.GetHashCode()));
            Assert.False(storeId1.GetHashCode().Equals(new object().GetHashCode()));
        }
コード例 #6
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
//ORIGINAL LINE: private void ensureSameStoreIdAs(org.neo4j.causalclustering.identity.MemberId upstream) throws org.neo4j.causalclustering.catchup.storecopy.StoreIdDownloadFailedException, org.neo4j.causalclustering.core.state.snapshot.TopologyLookupException
        private void EnsureSameStoreIdAs(MemberId upstream)
        {
            StoreId localStoreId = _localDatabase.storeId();
            AdvertisedSocketAddress advertisedSocketAddress = _topologyService.findCatchupAddress(upstream).orElseThrow(() => new TopologyLookupException(upstream));
            StoreId remoteStoreId = _remoteStore.getStoreId(advertisedSocketAddress);

            if (!localStoreId.Equals(remoteStoreId))
            {
                throw new System.InvalidOperationException(format("This read replica cannot join the cluster. " + "The local database is not empty and has a mismatching storeId: expected %s actual %s.", remoteStoreId, localStoreId));
            }
        }
コード例 #7
0
        internal virtual void CheckMyStoreIdAndMastersStoreId(StoreId myStoreId, URI masterUri)
        {
            ClusterMembers clusterMembers       = ResolveDatabaseDependency(typeof(ClusterMembers));
            InstanceId     serverId             = HighAvailabilityModeSwitcher.getServerId(masterUri);
            IEnumerable <ClusterMember> members = clusterMembers.Members;
            ClusterMember master = firstOrNull(filter(hasInstanceId(serverId), members));

            if (master == null)
            {
                throw new System.InvalidOperationException("Cannot find the master among " + members + " with master serverId=" + serverId + " and uri=" + masterUri);
            }

            StoreId masterStoreId = master.StoreId;

            if (!myStoreId.Equals(masterStoreId))
            {
                throw new MismatchingStoreIdException(myStoreId, master.StoreId);
            }
            else if (!myStoreId.EqualsByUpgradeId(master.StoreId))
            {
                throw new BranchedDataException("My store with " + myStoreId + " was updated independently from " + "master's store " + masterStoreId);
            }
        }
コード例 #8
0
        /*  public override int GetHashCode()
         * {
         *    return id;
         * }*/

        public bool Equals(Item item)
        {
            return(Id.Equals(item.Id) && StoreId.Equals(item.StoreId));
        }
コード例 #9
0
        public override bool Equals(object obj)
        {
            Price priceObj = (Price)obj;

            return(StoreId.Equals(priceObj.StoreId) && ItemCode.Equals(priceObj.ItemCode) && UpdateTime.Equals(priceObj.UpdateTime));
        }
コード例 #10
0
        public override bool Equals(object obj)
        {
            Store storeObj = (Store)obj;

            return(StoreId.Equals(storeObj.StoreId) && ChainId.Equals(storeObj.ChainId));
        }
コード例 #11
0
        private static UniqueItemHash CalculateUniqueItemHash(StoreSession mailboxSession, object[] row, PagingInfo pagingInfo, StoreId sentItemsFolderId)
        {
            UniqueItemHash result = null;
            Dictionary <PropertyDefinition, object> dictionary = new Dictionary <PropertyDefinition, object>(4);
            int num = 0;

            foreach (PropertyDefinition key in pagingInfo.DataColumns)
            {
                dictionary.Add(key, row[num]);
                num++;
            }
            object obj  = null;
            object obj2 = null;
            object obj3 = null;
            object obj4 = null;
            object obj5 = null;
            object obj6 = null;
            object obj7 = null;

            dictionary.TryGetValue(ItemSchema.Id, out obj);
            dictionary.TryGetValue(StoreObjectSchema.ParentItemId, out obj2);
            dictionary.TryGetValue(ItemSchema.InternetMessageId, out obj3);
            dictionary.TryGetValue(ItemSchema.ConversationId, out obj4);
            dictionary.TryGetValue(ItemSchema.ConversationTopic, out obj5);
            dictionary.TryGetValue(ItemSchema.BodyTag, out obj6);
            dictionary.TryGetValue(StoreObjectSchema.ItemClass, out obj7);
            if (obj != null && obj2 != null && obj3 != null && obj4 != null && obj5 != null)
            {
                StoreId storeId       = (StoreId)obj;
                string  internetMsgId = obj3 as string;
                string  text          = obj5 as string;
                StoreId storeId2      = obj2 as StoreId;
                bool    flag          = storeId2 != null && sentItemsFolderId != null && storeId2.Equals(sentItemsFolderId);
                if (obj6 == null && !flag && ObjectClass.IsMessage(obj7 as string, false))
                {
                    using (Item item = Item.Bind(mailboxSession, storeId))
                    {
                        if (item.Body != null)
                        {
                            obj6 = item.Body.CalculateBodyTag();
                        }
                    }
                }
                byte[] array = obj6 as byte[];
                result = new UniqueItemHash(internetMsgId, text ?? string.Empty, (array != null) ? BodyTagInfo.FromByteArray(array) : null, flag);
            }
            return(result);
        }