public static void RemoveMonitor(SPChangeMonitor monitor)
        {
            CommonHelper.ConfirmNotNull(monitor, "monitor");
            SPChangeQueryExecutor instance = factory.GetInstance(monitor.SiteId, () => new SPChangeQueryExecutor(monitor.SiteId));

            instance.monitors.Remove(monitor);
        }
        public static IEnumerable <T> GetMonitors <T>(Guid siteId) where T : SPChangeMonitor
        {
            SPChangeQueryExecutor instance = factory.GetInstance(siteId, () => new SPChangeQueryExecutor(siteId));

            return(instance.monitors.OfType <T>());
        }