예제 #1
0
        public static void ShowAddMessageForm()
        {
            AddMessageForm           addMessageForm           = new AddMessageForm();
            AddMessageFormManagement addMessageFormManagement = new AddMessageFormManagement(addMessageForm);

            addMessageForm.Show();
        }
예제 #2
0
        public async Task <PostResult> SendNewMessage(AddMessageForm form)
        {
            var validate = _validator.Validate(form);

            if (!validate.IsValid)
            {
                return(validate.Errors.ConvertToAlgoError());
            }

            var message = await _localMessages.AddMessage(form);

            if (!message.IsCorrect)
            {
                return(message);
            }

            var request = await _requestService.MakePostRequest <AddMessageForm, ServerMessage>(Options.SendUrl, form);

            if (!request.IsCorrect)
            {
                return(request);
            }

            if (request.IsCorrect)
            {
                await _localMessages.MarkAsDelivered(message.Result.Id);
            }
            else
            {
                await _localMessages.IncrementAttempt(message.Result.Id);
            }

            return(PostResult.Default);
        }
예제 #3
0
        public async Task <IActionResult> PostMessage([FromBody] AddMessageForm form)
        {
            var result = await _messagesService.AddMessage(form);

            if (!result.IsCorrect)
            {
                return(PostError(result.Error, StatusCodes.Status400BadRequest));
            }

            return(PostResult(result));
        }
        public async Task <PostResult <ClientMessage> > AddMessage(AddMessageForm form)
        {
            var validate = _validator.Validate(form);

            if (!validate.IsValid)
            {
                return(validate.Errors.ConvertToAlgoError <ClientMessage>());
            }

            return(await MessagesRepository.AddAsync(new PostClientMessage
            {
                Message = form.Message
            }));
        }
        public async Task <PostResult <ServerMessage> > AddMessage(AddMessageForm form)
        {
            var validate = _validator.Validate(form);

            if (!validate.IsValid)
            {
                return(validate.Errors.ConvertToAlgoError <ServerMessage>());
            }

            var ipAddress = _contextAccessor.HttpContext.Request.Host.ToString();

            return(await MessagesRepository.AddAsync(new PostServerMessage
            {
                IpAddress = ipAddress,
                Message = form.Message,
                CreatedAt = DateTimeOffset.UtcNow
            }));
        }
예제 #6
0
 public AddMessageFormManagement(AddMessageForm addMessageForm)
 {
     addMessageFormManagement = addMessageForm;
     addMessageFormManagement.AddMessageClick += AddMessageFormManagement_AddMessageClick;
     addMessageFormManagement.FormLoad        += AddMessageFormManagement_FormLoad;
 }