Пример #1
0
        // Token: 0x06001B18 RID: 6936 RVA: 0x00074838 File Offset: 0x00072A38
        public void EndDbSeed(Guid dbGuid)
        {
            ExTraceGlobals.SeederServerTracer.TraceDebug <Guid>((long)this.GetHashCode(), "SeedManager: EndDbSeed() called for DB ({0}).", dbGuid);
            SeederInstanceContainer seederInstanceContainer;

            if (!this.m_seederInstances.TryGetInstance(SafeInstanceTable <SeederInstanceContainer> .GetIdentityFromGuid(dbGuid), out seederInstanceContainer))
            {
                ExTraceGlobals.SeederServerTracer.TraceDebug <Guid>((long)this.GetHashCode(), "SeedManager: Did NOT find instance for DB ({0})!", dbGuid);
                throw new SeederInstanceNotFoundException(dbGuid.ToString());
            }
            SeederState seedState = seederInstanceContainer.SeedState;

            ExTraceGlobals.SeederServerTracer.TraceDebug <Guid, SeederState>((long)this.GetHashCode(), "SeedManager: Found instance for DB ({0}) in state '{1}'.", dbGuid, seedState);
            if (seedState == SeederState.SeedSuccessful || seedState == SeederState.SeedCancelled || seedState == SeederState.SeedFailed)
            {
                this.m_seederInstances.RemoveInstance(seederInstanceContainer);
                ExTraceGlobals.SeederServerTracer.TraceDebug <Guid>((long)this.GetHashCode(), "SeedManager: Removed seeder instance for DB ({0}) from table.", dbGuid);
                ReplayEventLogConstants.Tuple_SeedInstanceCleanupRequestedByAdmin.LogEvent(null, new object[]
                {
                    seederInstanceContainer.Name
                });
                return;
            }
            throw new SeederInstanceInvalidStateForEndException(dbGuid.ToString());
        }
Пример #2
0
        // Token: 0x06001B16 RID: 6934 RVA: 0x00074700 File Offset: 0x00072900
        public RpcSeederStatus GetDbSeedStatus(Guid dbGuid)
        {
            ExTraceGlobals.SeederServerTracer.TraceDebug <Guid>((long)this.GetHashCode(), "SeedManager: GetDbSeedStatus() called for DB ({0}).", dbGuid);
            SeederInstanceContainer seederInstanceContainer;

            if (this.m_seederInstances.TryGetInstance(SafeInstanceTable <SeederInstanceContainer> .GetIdentityFromGuid(dbGuid), out seederInstanceContainer))
            {
                ExTraceGlobals.SeederServerTracer.TraceDebug <Guid>((long)this.GetHashCode(), "SeedManager: Found instance for DB ({0}).", dbGuid);
                return(seederInstanceContainer.GetSeedStatus());
            }
            ExTraceGlobals.SeederServerTracer.TraceDebug <Guid>((long)this.GetHashCode(), "SeedManager: A SeederInstanceContainer does NOT already exist for DB ({0}).", dbGuid);
            throw new SeederInstanceNotFoundException(dbGuid.ToString());
        }
Пример #3
0
        // Token: 0x06001B17 RID: 6935 RVA: 0x00074784 File Offset: 0x00072984
        public void CancelDbSeed(Guid dbGuid, bool fAdminRequested)
        {
            ExTraceGlobals.SeederServerTracer.TraceDebug <Guid>((long)this.GetHashCode(), "SeedManager: CancelDbSeed() called for DB ({0}).", dbGuid);
            SeederInstanceContainer seederInstanceContainer;

            if (this.m_seederInstances.TryGetInstance(SafeInstanceTable <SeederInstanceContainer> .GetIdentityFromGuid(dbGuid), out seederInstanceContainer))
            {
                ExTraceGlobals.SeederServerTracer.TraceDebug <Guid>((long)this.GetHashCode(), "SeedManager: Found instance for DB ({0}).", dbGuid);
                seederInstanceContainer.CancelDbSeed();
                if (fAdminRequested)
                {
                    ReplayEventLogConstants.Tuple_SeedInstanceCancelRequestedByAdmin.LogEvent(null, new object[]
                    {
                        seederInstanceContainer.Name
                    });
                }
                ReplayCrimsonEvents.SeedingCancelled.Log <Guid, string, bool>(dbGuid, seederInstanceContainer.Name, fAdminRequested);
                return;
            }
            ExTraceGlobals.SeederServerTracer.TraceDebug <Guid>((long)this.GetHashCode(), "SeedManager: A SeederInstanceContainer does NOT already exist for DB ({0}).", dbGuid);
            throw new SeederInstanceNotFoundException(dbGuid.ToString());
        }
        // Token: 0x06000D1B RID: 3355 RVA: 0x00039C08 File Offset: 0x00037E08
        internal bool TryGetInstance(Guid guid, out T instance)
        {
            string identityFromGuid = SafeInstanceTable <T> .GetIdentityFromGuid(guid);

            return(this.TryGetInstance(identityFromGuid, out instance));
        }