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);
        }
Example #2
0
        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;
            }
        }
 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;
     }
 }