コード例 #1
0
        public async Task AddPackageOwnerAsync(PackageRegistration package, User newOwner)
        {
            package.Owners.Add(newOwner);
            await _packageRepository.CommitChangesAsync();

            var request = _packageOwnerRequestService.GetPackageOwnershipRequests(package: package, newOwner: newOwner).FirstOrDefault();

            if (request != null)
            {
                await _packageOwnerRequestService.DeletePackageOwnershipRequest(request);
            }

            await _auditingService.SaveAuditRecordAsync(
                new PackageRegistrationAuditRecord(package, AuditedPackageRegistrationAction.AddOwner, newOwner.Username));
        }
        public async Task DeletePackageOwnershipRequestAsync(PackageRegistration packageRegistration, User newOwner)
        {
            if (packageRegistration == null)
            {
                throw new ArgumentNullException(nameof(packageRegistration));
            }

            if (newOwner == null)
            {
                throw new ArgumentNullException(nameof(newOwner));
            }

            var request = _packageOwnerRequestService.GetPackageOwnershipRequests(package: packageRegistration, newOwner: newOwner).FirstOrDefault();

            if (request != null)
            {
                await _packageOwnerRequestService.DeletePackageOwnershipRequest(request);
            }
        }