Ejemplo n.º 1
0
 private void Expand(string expand, GlobalSettings settings, GetByIdResponse <GlobalSettings> result)
 {
     // Add related entities
     if (expand != null)
     {
     }
 }
Ejemplo n.º 2
0
        public async Task <ActionResult <GetByIdResponse <Document> > > UpdateAssignment([FromQuery] UpdateAssignmentArguments args)
        {
            var serverTime = DateTimeOffset.UtcNow;
            var result     = await GetService().UpdateAssignment(args);

            if (args.ReturnEntities ?? false)
            {
                var entity = result.Entity;

                // Flatten and Trim
                var singleton = new List <Document> {
                    entity
                };
                var relatedEntities = Flatten(singleton, cancellation: default);

                // Prepare the result in a response object
                var response = new GetByIdResponse <Document>
                {
                    Result          = entity,
                    RelatedEntities = relatedEntities,
                    CollectionName  = ControllerUtilities.GetCollectionName(typeof(Document)),
                    Extras          = CreateExtras(result),
                    ServerTime      = serverTime,
                };

                return(Ok(response));
            }
            else
            {
                return(Ok());
            }
        }
Ejemplo n.º 3
0
        private void Expand(string expand, Settings settings, GetByIdResponse <Settings> result)
        {
            // Add related entities
            if (expand != null)
            {
                var cultures = new List <Culture>();
                if (expand.Contains("PrimaryLanguage"))
                {
                    if (!string.IsNullOrWhiteSpace(settings.PrimaryLanguageId))
                    {
                        var cultureDef = _culturesRepo.GetCulture(settings.PrimaryLanguageId);
                        var culture    = _mapper.Map <Culture>(cultureDef);
                        cultures.Add(culture);
                    }
                }

                if (expand.Contains("SecondaryLanguage"))
                {
                    if (!string.IsNullOrWhiteSpace(settings.SecondaryLanguageId))
                    {
                        var cultureDef = _culturesRepo.GetCulture(settings.SecondaryLanguageId);
                        var culture    = _mapper.Map <Culture>(cultureDef);
                        cultures.Add(culture);
                    }
                }

                if (cultures.Any())
                {
                    result.RelatedEntities = new Dictionary <string, IEnumerable <DtoBase> >
                    {
                        ["Cultures"] = cultures
                    };
                }
            }
        }
Ejemplo n.º 4
0
        public virtual async Task <ActionResult <GetByIdResponse <TEntity> > > GetById(TKey id, [FromQuery] GetByIdArguments args, CancellationToken cancellation)
        {
            // Calculate server time at the very beginning for consistency
            var serverTime = DateTimeOffset.UtcNow;

            // Load the data + extras
            var service = GetFactGetByIdService();
            var result  = await service.GetById(id, args, cancellation);

            var entity = result.Entity;

            // Flatten and Trim
            var singleton = new List <TEntity> {
                entity
            };
            var relatedEntities = Flatten(singleton, cancellation);

            // Prepare the result in a response object
            var response = new GetByIdResponse <TEntity>
            {
                Result          = entity,
                RelatedEntities = relatedEntities,
                CollectionName  = ControllerUtilities.GetCollectionName(typeof(TEntity)),
                Extras          = CreateExtras(result),
                ServerTime      = serverTime,
            };

            return(Ok(response));
        }
Ejemplo n.º 5
0
        public virtual async Task <ActionResult <GetByIdResponse <TEntity> > > GetById(TKey id, [FromQuery] GetByIdArguments args, CancellationToken cancellation)
        {
            return(await ControllerUtilities.InvokeActionImpl(async() =>
            {
                // Calculate server time at the very beginning for consistency
                var serverTime = DateTimeOffset.UtcNow;

                // Load the data
                var service = GetFactGetByIdService();
                var(entity, extras) = await service.GetById(id, args, cancellation);

                // Load the extras
                var singleton = new List <TEntity> {
                    entity
                };

                // Flatten and Trim
                var relatedEntities = FlattenAndTrim(singleton, cancellation);

                // Prepare the result in a response object
                var result = new GetByIdResponse <TEntity>
                {
                    Result = entity,
                    RelatedEntities = relatedEntities,
                    CollectionName = ControllerUtilities.GetCollectionName(typeof(TEntity)),
                    Extras = TransformExtras(extras, cancellation),
                    ServerTime = serverTime,
                };
                return Ok(result);
            }, _logger));
        }
Ejemplo n.º 6
0
        public async Task <ActionResult <GetByIdResponse <AdminUser> > > GetMyUser(CancellationToken cancellation)
        {
            var user = await _service.GetMyUser(cancellation);

            GetByIdResponse <AdminUser> result = TransformToResponse(user, cancellation);

            return(Ok(result));
        }
Ejemplo n.º 7
0
        public async Task <ActionResult <GetByIdResponse <AdminUser> > > SaveMyUser([FromBody] MyAdminUserForSave me)
        {
            var user = await _service.SaveMyUser(me);

            Response.Headers.Set("x-admin-user-settings-version", Constants.Stale);
            GetByIdResponse <AdminUser> result = TransformToResponse(user, cancellation: default);

            return(Ok(result));
        }
Ejemplo n.º 8
0
 public async Task <ActionResult <GetByIdResponse <User> > > SaveMyUser([FromBody] MyUserForSave me)
 {
     return(await ControllerUtilities.InvokeActionImpl(async() =>
     {
         GetByIdResponse <User> result = await SaveMyUserImpl(me);
         Response.Headers.Set("x-user-settings-version", Constants.Stale);
         return Ok(result);
     }, _logger));
 }
Ejemplo n.º 9
0
 public async Task <ActionResult <GetByIdResponse <User> > > GetMyUser()
 {
     return(await ControllerUtilities.InvokeActionImpl(async() =>
     {
         GetByIdResponse <User> result = await GetMyUserImpl();
         return Ok(result);
     },
                                                       _logger));
 }
Ejemplo n.º 10
0
 public async Task <ActionResult <GetByIdResponse <AdminUser> > > SaveMyUser([FromBody] MyAdminUserForSave me)
 {
     return(await ControllerUtilities.InvokeActionImpl(async() =>
     {
         var user = await _service.SaveMyUser(me);
         Response.Headers.Set("x-admin-user-settings-version", Constants.Stale);
         GetByIdResponse <AdminUser> result = TransformToResponse(user, cancellation: default);
         return Ok(result);
     }, _logger));
 }
Ejemplo n.º 11
0
 public async Task <ActionResult <GetByIdResponse <AdminUser> > > GetMyUser(CancellationToken cancellation)
 {
     return(await ControllerUtilities.InvokeActionImpl(async() =>
     {
         var user = await _service.GetMyUser(cancellation);
         GetByIdResponse <AdminUser> result = TransformToResponse(user, cancellation);
         return Ok(result);
     },
                                                       _logger));
 }
Ejemplo n.º 12
0
        public GetByIdResponse <TDto> GetById(GetByIdRequest <TDto> request)
        {
            var response = new GetByIdResponse <TDto>();

            try
            {
                var result = _repository.Get(new GetByIdRequest <TEntity>(request.Key));
                if (result != null)
                {
                    response.Item      = MapToDto(result);
                    response.IsSuccess = true;
                    return(response);
                }

                response.Item      = new TDto();
                response.IsSuccess = false;
                return(response);
            }
            catch (DbEntityValidationException dbx)
            {
                // Retrieve the error messages as a list of strings.
                var errorMessages = dbx.EntityValidationErrors
                                    .SelectMany(x => x.ValidationErrors)
                                    .Select(x => x.ErrorMessage);

                // Join the list to a single string.
                var fullErrorMessage = string.Join("; ", errorMessages);

                // Combine the original exception message with the new one.
                var exceptionMessage = string.Concat(dbx.Message, " The validation errors are: ", fullErrorMessage);

                // Throw a new DbEntityValidationException with the improved exception message.
                throw new System.Exception(exceptionMessage);
            }
            catch (System.Exception ex)
            {
                ErrorHandler.LogException(ex);
                response.ErrorMessage = ErrorsEnum.ExceptionEncountered.FriendlyErrorMessage();
                response.IsSuccess    = false;
                response.ErrorCode    = (int)ErrorsEnum.ExceptionEncountered;
                return(response);
            }
        }
Ejemplo n.º 13
0
        public GetByIdResponse GetById(GetByIdRequest request)
        {
            GetByIdResponse response = new GetByIdResponse();

            try
            {
                response.User = new EFUserMethodsCAP().GetById(request.id);

                response.Result = new Ac4yProcessResult()
                {
                    Code = Ac4yProcessResult.SUCCESS
                };
            }
            catch (Exception exception)
            {
                response.Result = (new Ac4yProcessResult()
                {
                    Code = Ac4yProcessResult.FAIL, Message = exception.Message, Description = exception.StackTrace
                });
            }
            return(response);
        }
        public GetByIdResponse GetById(GetByIdRequest request)
        {
            GetByIdResponse response = new GetByIdResponse();

            try
            {
                response.AuthenticationRequest = new AuthenticationRequestCap().GetById(request.Id);

                response.Result = new Ac4yProcessResult()
                {
                    Code = Ac4yProcessResult.SUCCESS
                };
            }
            catch (Exception exception)
            {
                response.Result = (new Ac4yProcessResult()
                {
                    Code = Ac4yProcessResult.FAIL, Message = exception.Message, Description = exception.StackTrace
                });
            }

            return(response);
        } // GetById
Ejemplo n.º 15
0
        // Helper methods

        private async Task <GetByIdResponse <Settings> > GetImpl(GetByIdArguments args)
        {
            M.Settings mSettings = await _db.Settings.FirstOrDefaultAsync();

            if (mSettings == null)
            {
                // This should never happen
                throw new BadRequestException("Settings have not been initialized");
            }

            var settings = _mapper.Map <Settings>(mSettings);
            var result   = new GetByIdResponse <Settings>
            {
                CollectionName = "Settings",
                Entity         = settings,
            };

            if (!string.IsNullOrWhiteSpace(args.Expand))
            {
                Expand(args.Expand, settings, result);
            }

            return(result);
        }
Ejemplo n.º 16
0
 private void Expand(string expand, Settings settings, GetByIdResponse <Settings> result)
 {
 }