private async Task <AssetDto> InvokeCommandAsync(string app, ICommand command) { var context = await CommandBus.PublishAsync(command); var result = context.Result <IEnrichedAssetEntity>(); var response = AssetDto.FromAsset(result, this, app); return(response); }
private async Task <AssetDto> InvokeCommandAsync(ICommand command) { var context = await CommandBus.PublishAsync(command); if (context.PlainResult is AssetDuplicate created) { return(AssetDto.FromAsset(created.Asset, Resources, true)); } else { return(AssetDto.FromAsset(context.Result <IEnrichedAssetEntity>(), Resources)); } }
private async Task <AssetDto> InvokeCommandAsync(string app, ICommand command) { var context = await CommandBus.PublishAsync(command); if (context.PlainResult is AssetCreatedResult created) { return(AssetDto.FromAsset(created.Asset, this, app, created.IsDuplicate)); } else { return(AssetDto.FromAsset(context.Result <IEnrichedAssetEntity>(), this, app)); } }
public async Task <IActionResult> PostAsset(string app, [SwaggerIgnore] List <IFormFile> file) { var assetFile = await CheckAssetFileAsync(file); var command = new CreateAsset { File = assetFile }; var context = await CommandBus.PublishAsync(command); var result = context.Result <AssetCreatedResult>(); var response = AssetDto.FromAsset(result.Asset, this, app, result.IsDuplicate); return(CreatedAtAction(nameof(GetAsset), new { app, id = response.Id }, response)); }
public async Task <IActionResult> GetAsset(string app, DomainId id) { var asset = await assetQuery.FindAsync(Context, id, ct : HttpContext.RequestAborted); if (asset == null) { return(NotFound()); } var response = Deferred.Response(() => { return(AssetDto.FromAsset(asset, Resources)); }); return(Ok(response)); }
public async Task <IActionResult> GetAsset(string app, Guid id) { var asset = await assetQuery.FindAssetAsync(Context, id); if (asset == null) { return(NotFound()); } var response = Deferred.Response(() => { return(AssetDto.FromAsset(asset, this, app)); }); return(Ok(response)); }
public async Task <IActionResult> GetAsset(string app, Guid id) { var entity = await assetRepository.FindAssetAsync(id); if (entity == null) { return(NotFound()); } var response = AssetDto.FromAsset(entity); Response.Headers["ETag"] = entity.Version.ToString(); Response.Headers["Surrogate-Key"] = entity.Id.ToString(); return(Ok(response)); }
public async Task <IActionResult> GetAsset(string app, Guid id) { var asset = await assetQuery.FindAssetAsync(id); if (asset == null) { return(NotFound()); } var response = AssetDto.FromAsset(asset, this, app); if (controllerOptions.Value.EnableSurrogateKeys) { Response.Headers["Surrogate-Key"] = asset.Id.ToString(); } Response.Headers[HeaderNames.ETag] = asset.Version.ToString(); return(Ok(response)); }
public async Task <IActionResult> GetAsset(string app, Guid id) { var context = Context(); var entity = await assetQuery.FindAssetAsync(context, id); if (entity == null) { return(NotFound()); } var response = AssetDto.FromAsset(entity); if (controllerOptions.Value.EnableSurrogateKeys) { Response.Headers["Surrogate-Key"] = entity.Id.ToString(); } Response.Headers["ETag"] = entity.Version.ToString(); return(Ok(response)); }
public async Task <IActionResult> GetAsset(string app, Guid id) { var asset = await assetQuery.FindAssetAsync(Context, id); if (asset == null) { return(NotFound()); } var response = Deferred.Response(() => { return(AssetDto.FromAsset(asset, this, app)); }); if (controllerOptions.EnableSurrogateKeys) { Response.Headers["Surrogate-Key"] = asset.ToSurrogateKey(); } Response.Headers[HeaderNames.ETag] = asset.ToEtag(); return(Ok(response)); }