public static PackageMapIdentityQueryDTO From(PackageMap data, string mapType)
        {
            var dto = new PackageMapIdentityQueryDTO
            {
                Id           = data.Id,
                Package      = data.Package,
                ResourceId   = data.ResourceId,
                ResourceType = data.ResourceType,
                Property     = data.Property
            };

            if (mapType.Contains("source"))
            {
                dto.Dependencies = DependencyMap.From(data.DependencyAssetUrlsOfSource);
            }
            if (mapType.Contains("uncooked"))
            {
                dto.Dependencies = DependencyMap.From(data.DependencyAssetUrlsOfUnCooked);
            }
            else if (mapType.Contains("ios"))
            {
                dto.Dependencies = DependencyMap.From(data.DependencyAssetUrlsOfIOSCooked);
            }
            else if (mapType.Contains("android"))
            {
                dto.Dependencies = DependencyMap.From(data.DependencyAssetUrlsOfAndroidCooked);
            }
            else
            {
                dto.Dependencies = DependencyMap.From(data.DependencyAssetUrlsOfWin64Cooked);
            }

            return(dto);
        }
Ejemplo n.º 2
0
        public async Task <string> Handle(PackageMapCreateCommand request, CancellationToken cancellationToken)
        {
            var newItem = false;
            var entity  = await packageMapRepository.Get(new GetMapByPackageNameSpecification(request.Package)).FirstOrDefaultAsync();

            if (entity == null)
            {
                newItem = true;
                entity  = new PackageMap(request.Package, request.ResourceId, request.ResourceType);
            }

            entity.UpdatePackage(request.Dependencies, request.SourceAssetUrl, request.UnCookedAssetUrl, request.Win64CookedAssetUrl, request.AndroidCookedAssetUrl, request.IOSCookedAssetUrl, request.DependencyAssetUrlsOfSource, request.DependencyAssetUrlsOfUnCooked, request.DependencyAssetUrlsOfWin64Cooked, request.DependencyAssetUrlsOfAndroidCooked, request.DependencyAssetUrlsOfIOSCooked, request.Property);

            if (newItem)
            {
                await packageMapRepository.AddAsync(entity);
            }
            else
            {
                await packageMapRepository.UpdateAsync(entity);
            }
            return(entity.Id);
        }
 public async Task UpdateAsync(PackageMap entity)
 {
     _context.Set <PackageMap>().Update(entity);
     await _context.SaveEntitiesAsync();
 }
 public async Task AddAsync(PackageMap entity)
 {
     _context.Set <PackageMap>().Add(entity);
     await _context.SaveEntitiesAsync();
 }