private TransientErrorInfoPeriodic GetExistingOrNewErrorInfo(TKey key) { TransientErrorInfoPeriodic transientErrorInfoPeriodic = null; if (!this.m_errorTable.TryGetValue(key, out transientErrorInfoPeriodic)) { transientErrorInfoPeriodic = new TransientErrorInfoPeriodic(this.m_successTransitionSuppression, this.m_successPeriodicInterval, this.m_failureTransitionSuppression, this.m_failurePeriodicInterval, this.m_initialState); this.m_errorTable[key] = transientErrorInfoPeriodic; } return(transientErrorInfoPeriodic); }
public bool ReportFailurePeriodic(TKey key, out TransientErrorInfo.ErrorType currentState) { TransientErrorInfoPeriodic existingOrNewErrorInfo = this.GetExistingOrNewErrorInfo(key); return(existingOrNewErrorInfo.ReportFailurePeriodic(out currentState)); }