public async Task <User> Add(User model)
        {
            var entity = model.ToEntity();

            _authorizationDbContext.Users.Add(entity);
            await _authorizationDbContext.SaveChangesAsync();

            return(entity.ToModel());
        }
        public async Task <Permission> Add(Permission model)
        {
            var entity = model.ToEntity();

            entity.PermissionId  = Guid.NewGuid();
            entity.SecurableItem =
                _authorizationDbContext.SecurableItems.First(s => !s.IsDeleted && s.Name == model.SecurableItem);
            _authorizationDbContext.Permissions.Add(entity);
            await _authorizationDbContext.SaveChangesAsync();

            return(entity.ToModel());
        }
        public async Task <Client> Add(Client model)
        {
            Grain grain = null;

            if (model.TopLevelSecurableItem != null)
            {
                grain = await _grainStore.Get(model.TopLevelSecurableItem.Grain);
            }

            var clientEntity = model.ToEntity();

            clientEntity.TopLevelSecurableItem.GrainId = grain?.Id;

            _authorizationDbContext.Clients.Add(clientEntity);
            await _authorizationDbContext.SaveChangesAsync();

            return(model);
        }
Example #4
0
        public async Task <Group> Add(Group model)
        {
            var alreadyExists = await Exists(model.Name);

            if (alreadyExists)
            {
                throw new AlreadyExistsException <Group>($"Group {model.Name} already exists. Please use a different GroupName.");
            }

            model.Id = Guid.NewGuid().ToString();
            var groupEntity = model.ToEntity();

            _authorizationDbContext.Groups.Add(groupEntity);
            await _authorizationDbContext.SaveChangesAsync();

            return(groupEntity.ToModel());
        }
Example #5
0
        public async Task <Group> Add(Group model)
        {
            var alreadyExists = await Exists(model.Name);

            if (alreadyExists)
            {
                throw new AlreadyExistsException <Group>($"Group {model.Name} already exists. Please use a different GroupName.");
            }

            /*if (!string.IsNullOrEmpty(model.Id))
             * {
             *  throw new BadRequestException<Group>("Id is generated internally and cannot be supplied by the caller.");
             * }*/

            model.Id = Guid.NewGuid().ToString();
            var groupEntity = model.ToEntity();

            _authorizationDbContext.Groups.Add(groupEntity);
            await _authorizationDbContext.SaveChangesAsync();

            return(groupEntity.ToModel());
        }