public static Response Execute(RelativeUri url, Func <ISchedulerWrapper> getScheduler)
        {
            var scheduler = getScheduler();
            var p         = GetMethodParameters(url.ParseQueryString());

            p.method.Invoke(scheduler, p.parameters.ToArray());
            return(new Response.RedirectResponse(p.redirect));
        }
        public static Response Execute(RelativeUri url)
        {
            var querystring = url.ParseQueryString();
            var resource    = querystring["r"];

            resource = string.Format("{0}.Resources.{1}", assembly.FullName.Split(',')[0], resource);
            var content = ReadResource(resource);

            return(new Response.ContentResponse(content: content, contentType: querystring["t"]));
        }
        public static Response Execute(RelativeUri url, Func <ISchedulerWrapper> getScheduler)
        {
            var scheduler = getScheduler();
            var qs        = url.ParseQueryString();
            var highlight = qs["highlight"];
            var group     = qs["group"];
            var triggers  = GetTriggers(scheduler, group);
            var paused    = scheduler.IsTriggerGroupPaused(group);
            var v         = Views.Views.TriggerGroup(group, paused, url.PathAndQuery, highlight, triggers);

            return(new Response.XDocumentResponse(Helpers.XHTML(v)));
        }
        public static Response Execute(RelativeUri url, Func <ISchedulerWrapper> getScheduler)
        {
            var scheduler   = getScheduler();
            var querystring = url.ParseQueryString();
            var highlight   = querystring["highlight"];
            var group       = querystring["group"];
            var job         = querystring["job"];
            var jobKey      = new JobKey(job, group);
            var triggers    = GetTriggers(scheduler, jobKey);
            var m           = new TriggersByJobModel(triggers, url.PathAndQuery, group, job, highlight);

            return(new Response.XDocumentResponse(Helpers.XHTML(Views.Views.TriggersByJob(m))));
        }
        public static Response Execute(RelativeUri url)
        {
            var thisUrl    = url.PathAndQuery.Split('?')[0];
            var qs         = url.ParseQueryString();
            var pageSize   = GetPageSize(qs);
            var pagination = new PaginationInfo(
                firstItemIndex: GetStartIndex(qs),
                pageSize: pageSize,
                totalItemCount: logsQ.Count(),
                pageUrl: "log.ashx?start=!0&max=" + pageSize);
            var logs = logsQ.Skip(pagination.FirstItemIndex).Take(pagination.PageSize).ToList();
            var v    = GetView(qs.AllKeys);
            var view = v.Value(logs, pagination, thisUrl);

            return(new Response.XDocumentResponse(view, v.Key));
        }