/// <summary> /// Handle messages sent by the client.</summary> protected override Task OnReceivedAsync(string connectionId, string data) { var post = JsonConvert.DeserializeObject<Post>(data); var command = new ExecuteCommand { ClientId = connectionId, Code = post.Content, Classes = post.Classes, Submitted = DateTime.UtcNow, TimeoutPeriod = ExecutionTimeout }; var message = command.GetBytes(); var gateway = DependencyResolver.Current.GetService<RedisConnectionGateway>(); var redis = gateway.GetConnection(); return redis.Lists.AddLast(0, "queue:execute", message) .ContinueWith(t => { if (t.IsFaulted) { return Send(new { status = "error", message = t.Exception != null ? t.Exception.Message : null }); } return Send(new { status = "ok" }); }); }
/// <summary> /// Handle messages sent by the client.</summary> protected override Task OnReceivedAsync(string connectionId, string data) { var command = new ExecuteCommand { ClientId = connectionId, Code = data }; var message = Convert.ToBase64String(command.GetBytes()); var gateway = DependencyResolver.Current.GetService<RedisConnectionGateway>(); var redis = gateway.GetConnection(); return redis.Lists.AddLast(0, "queue:execute", message) .ContinueWith(t => { if (t.IsFaulted) { return Send(new { status = "error", message = t.Exception != null ? t.Exception.Message : null }); } return Send(new { status = "ok" }); }); }
/// <summary> /// Handle messages sent by the client.</summary> protected override Task OnReceivedAsync(string connectionId, string data) { var post = JsonConvert.DeserializeObject <Post>(data); var command = new ExecuteCommand { ClientId = connectionId, Code = post.Content, Classes = post.Classes, Submitted = DateTime.UtcNow, TimeoutPeriod = ExecutionTimeout }; var message = command.GetBytes(); var gateway = DependencyResolver.Current.GetService <RedisConnectionGateway>(); var redis = gateway.GetConnection(); return(redis.Lists.AddLast(0, "queue:execute", message) .ContinueWith(t => { if (t.IsFaulted) { return Send(new { status = "error", message = t.Exception != null ? t.Exception.Message : null }); } return Send(new { status = "ok" }); })); }