internal CacheEventDescriptor RegisterGeneralEvents(CacheDataNotificationCallback callback, EventType eventType, EventDataFilter datafilter) { if (callback != null) { if (_addEventPool == null) { _addEventPool = new ResourcePool(); } if (_removeEventPool == null) { _removeEventPool = new ResourcePool(); } if (_updateEventPool == null) { _updateEventPool = new ResourcePool(); } CacheEventDescriptor discriptor = CacheEventDescriptor.CreateCacheDiscriptor(eventType, _cacheName, callback, datafilter); if (!RegisterGeneralDiscriptor(discriptor, eventType)) { return(null); } return(discriptor); } else { return(null); } }