* Fixing route for temp file * Adding missing ApiController attribute * Adding new filter view port * Creating base classes for member and user filters * Moving actual filter controllers to correct places * Update OpenApi.json
43 lines
1.8 KiB
C#
43 lines
1.8 KiB
C#
using Microsoft.AspNetCore.Http;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Umbraco.Cms.Api.Common.Builders;
|
|
using Umbraco.Cms.Api.Management.Routing;
|
|
using Umbraco.Cms.Core.Services.OperationStatus;
|
|
|
|
namespace Umbraco.Cms.Api.Management.Controllers.TemporaryFile;
|
|
|
|
[ApiController]
|
|
[VersionedApiBackOfficeRoute("temporary-file")]
|
|
[ApiExplorerSettings(GroupName = "Temporary File")]
|
|
public abstract class TemporaryFileControllerBase : ManagementApiControllerBase
|
|
{
|
|
protected IActionResult TemporaryFileStatusResult(TemporaryFileOperationStatus operationStatus) =>
|
|
operationStatus switch
|
|
{
|
|
TemporaryFileOperationStatus.FileExtensionNotAllowed => BadRequest(new ProblemDetailsBuilder()
|
|
.WithTitle("File extension not allowed")
|
|
.WithDetail("The file extension is not allowed.")
|
|
.Build()),
|
|
|
|
TemporaryFileOperationStatus.KeyAlreadyUsed => BadRequest(new ProblemDetailsBuilder()
|
|
.WithTitle("Key already used")
|
|
.WithDetail("The specified key is already used.")
|
|
.Build()),
|
|
|
|
TemporaryFileOperationStatus.NotFound => NotFound(new ProblemDetailsBuilder()
|
|
.WithTitle("The temporary file was not found")
|
|
.Build()),
|
|
TemporaryFileOperationStatus.UploadBlocked => NotFound(new ProblemDetailsBuilder()
|
|
.WithTitle("The temporary file was blocked by a validator")
|
|
.Build()),
|
|
_ => StatusCode(StatusCodes.Status500InternalServerError, new ProblemDetailsBuilder()
|
|
.WithTitle("Unknown temporary file operation status.")
|
|
.Build()),
|
|
};
|
|
|
|
|
|
protected IActionResult TemporaryFileNotFound() => NotFound(new ProblemDetailsBuilder()
|
|
.WithTitle("The temporary file could not be found")
|
|
.Build());
|
|
}
|