Exemple #1
0
        public async Task SaveAsync(Subvault subvault)
        {
            if (subvault.Id == default(Guid))
            {
                var org = await _organizationRepository.GetByIdAsync(subvault.OrganizationId);

                if (org == null)
                {
                    throw new BadRequestException("Org not found");
                }

                if (org.MaxSubvaults.HasValue)
                {
                    var subvaultCount = await _subvaultRepository.GetCountByOrganizationIdAsync(org.Id);

                    if (org.MaxSubvaults.Value <= subvaultCount)
                    {
                        throw new BadRequestException("You have reached the maximum number of subvaults " +
                                                      $"({org.MaxSubvaults.Value}) for this organization.");
                    }
                }

                await _subvaultRepository.CreateAsync(subvault);
            }
            else
            {
                await _subvaultRepository.ReplaceAsync(subvault);
            }
        }
        public SubvaultResponseModel(Subvault subvault)
            : base("subvault")
        {
            if (subvault == null)
            {
                throw new ArgumentNullException(nameof(subvault));
            }

            Id             = subvault.Id.ToString();
            OrganizationId = subvault.OrganizationId.ToString();
            Name           = subvault.Name;
        }
Exemple #3
0
 public Subvault ToSubvault(Subvault existingSubvault)
 {
     existingSubvault.Name = Name;
     return(existingSubvault);
 }