public bool AddKey(string key, CallbackInfo updateCallback, CallbackInfo removeCallback) { lock (_interestedKeys) { if (!_interestedKeys.ContainsKey(key)) { _interestedKeys.Add(key, new NotificationEntry(updateCallback, removeCallback) { RegistrationTime = HPTime.Now }); return(true); } else { NotificationEntry entry = _interestedKeys[key]; entry.SetNotifications(updateCallback, removeCallback); _interestedKeys[key] = entry; } } return(false); }