public void Unsubscribe() { ITotpCallback callbackChannel = OperationContext.Current.GetCallbackChannel <ITotpCallback>(); try { lock (this._sycnRoot) { _callbackChannels.Remove(callbackChannel); } } catch { } }
public void Subscribe() { try { ITotpCallback callbackChannel = OperationContext.Current.GetCallbackChannel <ITotpCallback>(); lock (this._sycnRoot) { if (!_callbackChannels.Contains(callbackChannel)) { _callbackChannels.Add(callbackChannel); if (this.CanSendCallbacks) { callbackChannel.PasswordChanged(this.CurrentPassword, this.NextChange); } } } } catch { } }