public HttpHandlerResult SaveScript(HttpRequestParams request)
        {
            var id = request.GetGuid("id");
            var name = request.GetRequiredString("name");
            var body = request.GetRequiredString("body");

            using (var session = database.OpenSession())
            {
                UserScript script;

                if (id.HasValue)
                {
                    script = session.Set<UserScript>().Single(s => s.Id == id.Value);
                }
                else
                {
                    script = new UserScript { Id = Guid.NewGuid() };
                    session.Set<UserScript>().Add(script);
                }

                script.Name = name;
                script.Body = body;
                session.SaveChanges();

                return HttpHandlerResult.Json(new { scriptId = script.Id });
            }
        }
Exemple #2
0
 public HttpHandlerResult TmpHandlerMethod42(HttpRequestParams requestParams)
 {
     return(HttpHandlerResult.Json(new
     {
         answer = 42,
         name = requestParams.GetString("name")
     }));
 }
        public HttpHandlerResult GetScriptList(HttpRequestParams request)
        {
            using (var session = database.OpenSession())
            {
                var list = session.Set<UserScript>()
                    .Select(x => new { id = x.Id, name = x.Name })
                    .ToArray();

                return HttpHandlerResult.Json(list);
            }
        }
Exemple #4
0
        public HttpHandlerResult TmpHandlerMethod43(HttpRequestParams requestParams)
        {
            using (var db = database.OpenSession())
            {
                var list = db.Set <SmallPig>()
                           .Select(pig => new { id = pig.Id, name = pig.Name, size = pig.Size })
                           .ToList();

                return(HttpHandlerResult.Json(list));
            }
        }
Exemple #5
0
        public HttpHandlerResult LoadTask(HttpRequestParams request)
        {
            var id = request.GetRequiredGuid("id");

            using (var session = database.OpenSession())
            {
                var task = session.Set <CronTask>().Single(x => x.Id == id);

                return(HttpHandlerResult.Json(ToApiModel(task)));
            }
        }
        public HttpHandlerResult RunScript(HttpRequestParams request)
        {
            var id = request.GetRequiredGuid("id");

            using (var session = database.OpenSession())
            {
                var script = session.Set<UserScript>().Single(s => s.Id == id);

                object result = scripts.ExecuteScript(script);

                return HttpHandlerResult.Json(result);
            }
        }
        public HttpHandlerResult LoadScript(HttpRequestParams request)
        {
            var id = request.GetRequiredGuid("id");

            using (var session = database.OpenSession())
            {
                var script = session.Set<UserScript>()
                    .Select(x => new { id = x.Id, name = x.Name, body = x.Body })
                    .Single(x => x.id == id);

                return HttpHandlerResult.Json(script);
            }
        }
Exemple #8
0
        public HttpHandlerResult GetTaskList(HttpRequestParams request)
        {
            using (var session = database.OpenSession())
            {
                var list = session.Set <CronTask>()
                           .OrderBy(e => e.Month)
                           .ThenBy(e => e.Day)
                           .ThenBy(e => e.Hour)
                           .ThenBy(e => e.Minute)
                           .Select(ToApiModel)
                           .ToArray();

                return(HttpHandlerResult.Json(list));
            }
        }
        public HttpHandlerResult GetSubscriptionList(HttpRequestParams request)
        {
            using (var session = database.OpenSession())
            {
                var list = session.Set<ScriptEventHandler>()
                    .Select(x => new
                    {
                        id = x.Id,
                        scriptId = x.UserScript.Id,
                        scriptName = x.UserScript.Name,
                        eventAlias = x.EventAlias
                    })
                    .ToList();

                return HttpHandlerResult.Json(list);
            }
        }
Exemple #10
0
        public HttpHandlerResult SaveTask(HttpRequestParams request)
        {
            var id         = request.GetGuid("id");
            var name       = request.GetRequiredString("name");
            var eventAlias = request.GetString("eventAlias");
            var month      = request.GetInt32("month");
            var day        = request.GetInt32("day");
            var hour       = request.GetInt32("hour");
            var minute     = request.GetInt32("minute");
            var enabled    = request.GetRequiredBool("enabled");

            using (var session = database.OpenSession())
            {
                CronTask task;

                if (id.HasValue)
                {
                    task = session.Set <CronTask>().Single(s => s.Id == id.Value);
                }
                else
                {
                    task = new CronTask {
                        Id = Guid.NewGuid()
                    };
                    session.Set <CronTask>().Add(task);
                }

                task.Name       = name;
                task.EventAlias = eventAlias;
                task.Enabled    = enabled;
                task.Month      = month;
                task.Day        = day;
                task.Hour       = hour;
                task.Minute     = minute;
                session.SaveChanges();

                // reset cron event cache
                cron.ReloadTasks();

                return(HttpHandlerResult.Json(new { taskId = task.Id }));
            }
        }
        public HttpHandlerResult AddSubscription(HttpRequestParams request)
        {
            var scriptId = request.GetRequiredGuid("scriptId");
            var eventAlias = request.GetRequiredString("eventAlias");

            using (var session = database.OpenSession())
            {
                var subscriptionId = Guid.NewGuid();

                var subscription = new ScriptEventHandler
                {
                    Id = subscriptionId,
                    EventAlias = eventAlias,
                    UserScriptId = scriptId
                };

                session.Set<ScriptEventHandler>().Add(subscription);
                session.SaveChanges();

                return HttpHandlerResult.Json(new { subscriptionId }) ;
            }
        }