Exemple #1
0
        public async Task <IActionResult> Run(
            [HttpTrigger(
                 "post",
                 Route = Routes.SuspendTransfer
                 )] GetTransferRequest getTransferRequest,
            IDictionary <string, string> headers
            )
        {
            try
            {
                AccessTokenResult = await accessTokenValidator.ValidateToken(headers);

                switch (AccessTokenResult)
                {
                case ValidAccessTokenResult _:
                    var(transferToken, _, _, _) = getTransferRequest;

                    await transfersService.SuspendTransfer(new GetTransferParameters
                    {
                        TransferToken = transferToken
                    });

                    return(LogOk());

                default:
                    return(LogUnauthorized());
                }
            }
            catch (Exception ex)
            {
                return(LogException(ex));
            }
        }
        public Result <IList <BlogPost> > GetPostsOfCurrentUser(string token)
        {
            var user =
                _tokenValidator.ValidateToken(token);

            if (user == null)
            {
                return(Result <IList <BlogPost> > .Unauthorized);
            }

            return(new Result <IList <BlogPost> >(_blogPostRepository.GetByUserId(user.Id)));
        }
Exemple #3
0
        public async Task <IActionResult> Run(
            [HttpTrigger(
                 "post",
                 Route = Routes.ListTransfers
                 )] HttpRequest request,
            IDictionary <string, string> headers,
            string specificRegion
            )
        {
            try
            {
                AccessTokenResult = await accessTokenValidator.ValidateToken(headers);

                switch (AccessTokenResult)
                {
                case ValidAccessTokenResult _:
                    var regions = !string.IsNullOrWhiteSpace(specificRegion)
                            ? new[] { specificRegion }
                            : coreContext.Regions;

                    List <Transfer> transfers = new List <Transfer>();

                    if (regions == default)
                    {
                        throw new ArgumentNullException(nameof(regions));
                    }

                    foreach (var region in regions)
                    {
                        coreContext.SetRegion(region);

                        transfers.AddRange(await transfersService.ListTransfers());
                    }

                    return(LogOkObject(transfers));

                default:
                    return(LogUnauthorized());
                }
            }
            catch (Exception ex)
            {
                return(LogException(ex));
            }
        }
Exemple #4
0
        public async Task <IActionResult> Run(
            [HttpTrigger(
                 "post",
                 Route = Routes.UpdateTransfer
                 )] UpdateTransferRequest updateTransferRequest,
            IDictionary <string, string> headers
            )
        {
            try
            {
                AccessTokenResult = await accessTokenValidator.ValidateToken(headers);

                switch (AccessTokenResult)
                {
                case ValidAccessTokenResult _:
                case NoAccessTokenResult _:
                    var(transferToken, field, type, messageItemCodename, localization) = updateTransferRequest;

                    if (localization != null)
                    {
                        coreContext.Localization = localization;
                    }

                    var updateType = Enum.Parse <UpdateType>(type ?? "", true);

                    await transfersService.UpdateTransfer(new UpdateTransferParameters
                    {
                        TransferToken       = transferToken,
                        Field               = field,
                        Type                = updateType,
                        MessageItemCodename = messageItemCodename
                    });

                    return(LogOk());

                default:
                    return(LogUnauthorized());
                }
            }
            catch (Exception ex)
            {
                return(LogException(ex));
            }
        }
Exemple #5
0
        public async Task <IActionResult> Run(
            [HttpTrigger(
                 "post",
                 Route = Routes.CreateTransfer
                 )] CreateTransferRequest createTransferRequest,
            IDictionary <string, string> headers,
            string region
            )
        {
            try
            {
                coreContext.SetRegion(region);

                AccessTokenResult = await accessTokenValidator.ValidateToken(headers);

                switch (AccessTokenResult)
                {
                case ValidAccessTokenResult _:
                    var(name, customer, template, localization) = createTransferRequest;

                    if (localization != null)
                    {
                        coreContext.Localization = localization;
                    }

                    var transfer = await transfersService.CreateTransfer(new CreateTransferParameters
                    {
                        Name                 = name,
                        Customer             = customer,
                        TemplateItemCodename = template
                    });

                    return(LogOkObject(transfer));

                default:
                    return(LogUnauthorized());
                }
            }
            catch (Exception ex)
            {
                return(LogException(ex));
            }
        }
Exemple #6
0
        public async Task <IActionResult> Run(
            [HttpTrigger(
                 "post",
                 Route = Routes.GetTransfer
                 )] GetTransferRequest getTransferRequest,
            IDictionary <string, string> headers
            )
        {
            try
            {
                AccessTokenResult = await accessTokenValidator.ValidateToken(headers);

                switch (AccessTokenResult)
                {
                case ValidAccessTokenResult _:
                case NoAccessTokenResult _:
                    var(transferToken, files, fields, containerUrl) = getTransferRequest;

                    var transfer = await transfersService.GetTransfer(new GetTransferParameters
                    {
                        TransferToken     = transferToken,
                        Files             = files,
                        Fields            = fields,
                        ContainerUrl      = containerUrl,
                        AccessTokenResult = AccessTokenResult
                    });

                    return(LogOkObject(transfer));

                default:
                    return(LogUnauthorized());
                }
            }
            catch (Exception ex)
            {
                return(LogException(ex));
            }
        }