コード例 #1
0
        public async Task <IActionResult> GetSenderTest(string email)
        {
            await _sender.SendMessage(new MessagePayload()
            {
                EventName = "NewUserRegistered", UserEmail = email
            });

            return(Ok());
        }
コード例 #2
0
        public async Task <IActionResult> OnPostUploadAsync(List <IFormFile> files)
        {
            long size = files.Sum(f => f.Length);

            string filePath = string.Empty;
            string fileName = string.Empty;

            foreach (var formFile in files)
            {
                if (formFile.Length > 0)
                {
                    filePath = Path.GetTempFileName();
                    fileName = formFile.FileName;

                    using (var stream = System.IO.File.Create(filePath))
                    {
                        await formFile.CopyToAsync(stream);
                    }
                }
            }

            await _serviceBusSender.UploadFile(filePath, "BlobStorage");

            await _serviceBusSender.SendMessage("BlobStorage");

            return(Ok());
        }
コード例 #3
0
        public async Task <ActionResult <PatientDTO> > AddPatient(PatientDTO dto)
        {
            if (ModelState.IsValid)
            {
                var patient = _mapper.Map <Patient>(dto);

                using (var trans = _context.Database.BeginTransaction())
                {
                    _context.Patients.Add(patient);
                    await _context.SaveChangesAsync();

                    await _sender.SendMessage(new MessagePayload
                    {
                        EmailAddress = dto.Email ?? "*****@*****.**",
                        Message      = "Powiadomienie o kwarantannie.",
                        Title        = "COVID-19"
                    });

                    await trans.CommitAsync();

                    return(CreatedAtAction(nameof(GetPatient), new { id = patient.Id }, patient));
                }
            }

            return(BadRequest());
        }
コード例 #4
0
        public async Task <IActionResult> Create([Required] PayloadForServiceBus request)
        {
            await _serviceBusSender.SendMessage(new PayloadForServiceBus
            {
                Email   = request.Email,
                Message = request.Message
            });

            return(RedirectToAction("Index", "Home"));
        }
コード例 #5
0
        public async Task <IActionResult> Create([FromBody][Required] Payload request)
        {
            if (data.Any(d => d.Id == request.Id))
            {
                return(Conflict($"data with id {request.Id} already exists"));
            }

            data.Add(request);

            // Send this to the bus for the other services
            await _serviceBusSender.SendMessage(new MyPayload
            {
                Goals  = request.Goals,
                Name   = request.Name,
                Delete = false
            });

            return(Ok(request));
        }
コード例 #6
0
 public async Task Post([FromBody] SignUpModel signUp)
 {
     // Send this to the bus for the other services
     await _serviceBusSender.SendMessage(new SignUpModel
     {
         Name        = signUp.Name,
         Email       = signUp.Email,
         Age         = signUp.Age,
         DateOfBirth = signUp.DateOfBirth
     });
 }
コード例 #7
0
        public async Task <IActionResult> Add(Patient p)
        {
            _context.Patients.Add(p);
            _context.SaveChanges();

            await _sender.SendMessage(new MessagePayload()
            {
                EventName = "NewUserRegistered", UserEmail = "*****@*****.**"
            });

            return(Created("api/patients/", p));
        }
コード例 #8
0
ファイル: PatientsController.cs プロジェクト: AdiBier/Covid19
        public async Task <IActionResult> RegisterPatient(Patient patient)
        {
            _context.Patients.Add(patient);
            _context.SaveChanges();

            await _sender.SendMessage(new MessagePayLoad()
            {
                EventName = "NewUserRegistered",
                UserEmail = "*****@*****.**"
            });

            return(Created("/api/patients/", patient));
        }
コード例 #9
0
        public async Task <IActionResult> Add(Patient p)
        {
            _context.Patients.Add(p);
            _context.SaveChanges();

            await _sender.SendMessage(new MessagePayload()
            {
                EventName    = "NewUserRegistered",
                EmailAddress = "*****@*****.**",
                Title        = "COVID19",
                Message      = "Idziesz na kwarantanne!"
            });

            return(Created("/api/patients/", p));
        }
コード例 #10
0
        public async Task <ActionResult <string> > Get(string traceGuid)
        {
            const string controllerName = "Virgo";

            var metricName = $"{controllerName}Transactions";
            var message    = $"{controllerName} has been invoked. TraceGuid={traceGuid}";

            _telemetryClient.TrackEvent(message);
            _telemetryClient.GetMetric(metricName).TrackValue(1);
            _logger.LogInformation(message);
            var payload      = $"This is a message sent from Virgo on {System.DateTime.Now.ToShortDateString()} at {System.DateTime.Now.ToLongTimeString()}.  TraceGuid={traceGuid}";
            var messageModel = new MessageModel();

            messageModel.Payload   = payload;
            messageModel.TraceGuid = traceGuid;
            messageModel.Queue     = "virgo-queue";
            await _serviceBusSender.SendMessage(messageModel);

            return(payload);
        }
コード例 #11
0
        public async Task <ActionResult <object> > PosttoSB(int num)
        {
            try
            {
                //declare the Number
                BusinessLogic.Number numbr = new BusinessLogic.Number(num);

                //put it in the db.
                await _repository.PlaceNumberAsync(numbr);

                //then put a message into the service bus
                await _serviceBusSender.SendMessage(numbr);

                return(Ok());
            }

            catch (Exception e)
            {
                string danger = "The database was unable to post to DB for... reasons. : " + e.Message;
                return(StatusCode(StatusCodes.Status500InternalServerError, danger));
            }
        }
コード例 #12
0
 private Task QueueMessage(MessagePayLoad message)
 {
     return(_sender.SendMessage(message));
 }
コード例 #13
0
        public async Task <IActionResult> Create([FromBody][Required] ProductsPayloadDm request)
        {
            await _serviceBusSender.SendMessage(request);

            return(Ok(request));
        }
コード例 #14
0
        public async Task <IActionResult> SendMessage()
        {
            await _serviceBusSender.SendMessage();

            return(Ok());
        }