Browse Source

Fallback handling.

pull/637/head
Sebastian 5 years ago
parent
commit
3779c03873
  1. 13
      backend/src/Squidex/Areas/Api/Controllers/Assets/AssetContentController.cs
  2. 5
      backend/tests/Squidex.Domain.Apps.Entities.Tests/Contents/TestData/FakeUrlGenerator.cs

13
backend/src/Squidex/Areas/Api/Controllers/Assets/AssetContentController.cs

@ -34,6 +34,7 @@ namespace Squidex.Areas.Api.Controllers.Assets
{
private readonly IAssetFileStore assetFileStore;
private readonly IAssetQueryService assetQuery;
private readonly IAssetLoader assetLoader;
private readonly IAssetStore assetStore;
private readonly IAssetThumbnailGenerator assetThumbnailGenerator;
@ -41,12 +42,14 @@ namespace Squidex.Areas.Api.Controllers.Assets
ICommandBus commandBus,
IAssetFileStore assetFileStore,
IAssetQueryService assetQuery,
IAssetLoader assetLoader,
IAssetStore assetStore,
IAssetThumbnailGenerator assetThumbnailGenerator)
: base(commandBus)
{
this.assetFileStore = assetFileStore;
this.assetQuery = assetQuery;
this.assetLoader = assetLoader;
this.assetStore = assetStore;
this.assetThumbnailGenerator = assetThumbnailGenerator;
}
@ -119,10 +122,18 @@ namespace Squidex.Areas.Api.Controllers.Assets
return StatusCode(403);
}
if (asset != null && queries.Version > EtagVersion.Any && asset.Version != queries.Version && Context.App != null)
if (asset != null && queries.Version > EtagVersion.Any && asset.Version != queries.Version)
{
if (Context.App != null)
{
asset = await assetQuery.FindAsync(Context, asset.Id, queries.Version);
}
else
{
// Fallback for old endpoint. Does not set the surrogate key.
asset = await assetLoader.GetAsync(asset.AppId.Id, asset.Id, queries.Version);
}
}
if (asset == null)
{

5
backend/tests/Squidex.Domain.Apps.Entities.Tests/Contents/TestData/FakeUrlGenerator.cs

@ -36,11 +36,6 @@ namespace Squidex.Domain.Apps.Entities.Contents.TestData
return $"contents/{schemaId.Name}/{contentId}";
}
public string AppSettingsUI(NamedId<DomainId> appId)
{
throw new NotSupportedException();
}
public string AssetsUI(NamedId<DomainId> appId, string? query = null)
{
throw new NotSupportedException();

Loading…
Cancel
Save