Example #1
0
        private async Task Synchronise(PackageStorageEntity original, PackageStorageEntity updated)
        {
            original.Author          = updated.Author;
            original.Description     = updated.Description;
            original.DownloadUrl     = updated.DownloadUrl;
            original.InfoUrl         = updated.InfoUrl;
            original.License         = updated.License;
            original.PublicationDate = updated.PublicationDate;
            original.Version         = updated.Version;

            await Update(original);
        }
Example #2
0
        public async Task <int> AddOrUpdate(PackageStorageEntity package)
        {
            PackageStorageEntity existingEntity = await TryFindPackage(package.Name, package.RepositoryId);

            if (existingEntity != null && existingEntity.Id > 0)
            {
                await Synchronise(existingEntity, package);

                return(existingEntity.Id);
            }

            await _dbSet.AddAsync(package);

            await _context.SaveChangesAsync();

            return(package.Id);
        }
Example #3
0
 public async Task Update(PackageStorageEntity package)
 {
     _dbSet.Update(package);
     await _context.SaveChangesAsync();
 }