public PostMessage PushMessage(PostMessage message) { if (!Enabled) { throw new Exception("not available"); } if (message.CreateTime.Year <= 1900) { message.CreateTime = DateTime.Now.ToUniversalTime(); } if (message.StartTime.ToUniversalTime() < DateTime.Now.ToUniversalTime()) { message.StartTime = DateTime.Now.ToUniversalTime(); } if (message.SentTime.Year <= 1900) { message.SentTime = DateTime.MinValue.ToUniversalTime(); } if (string.IsNullOrWhiteSpace(message.Id)) { var json = message.stringify() + Guid.NewGuid(); message.Id = "M" + json.GetMd5(); } Store(message); return(message); }
public void CanStoreAndGet() { if (ignoreelastic) { Assert.Ignore("no elastic search"); } var mq = _container.Get <IMessageQueue>(); var message = new PostMessage { Addresses = new[] { "*****@*****.**" }, From = "support", Body = "<h1>Привет</h1>" }; message = mq.PushMessage(message); Assert.Less(10, message.Id.Length); Assert.Less(1990, message.CreateTime.Year); Assert.Less(1990, message.StartTime.Year); var message2 = mq.GetMessage(message.Id); Console.WriteLine(message2.stringify()); Console.WriteLine(message.stringify()); Assert.AreEqual(message.stringify(), message2.stringify()); }
public PostMessage PushMessage(PostMessage message) { if (!Enabled) { throw new Exception("not available"); } if (message.CreateTime.Year <= 1900) { message.CreateTime = DateTime.Now.ToUniversalTime(); } if (message.StartTime.ToUniversalTime() < DateTime.Now.ToUniversalTime()) { message.StartTime = DateTime.Now.ToUniversalTime(); } if (message.SentTime.Year <= 1900) { message.SentTime = DateTime.MinValue.ToUniversalTime(); } if (string.IsNullOrWhiteSpace(message.Id)) { var json = message.stringify() + Guid.NewGuid(); message.Id = "M" + json.GetMd5(); } Store(message); return message; }
private void Store(PostMessage message) { var result = EsClient.ExecuteCommand(BaseUrl() + "/" + message.Id + "?refresh=true", message.stringify()); if (null == result) { Logg.Error(new { error_in_es = EsClient.LastError.Message, urls = EsClient.Urls.ToArray() }.stringify()); throw EsClient.LastError; } }