Skip to content
Snippets Groups Projects
Commit 5a978d2f authored by L. Ellenbeck's avatar L. Ellenbeck
Browse files

Fíx: quota check for any resource (rpdm/issues#71)

parent ea5c8af4
Branches
No related tags found
1 merge request!46Hotfix/0071 fix resource create
......@@ -109,16 +109,20 @@ namespace Coscine.Api.Blob.Controllers
return BadRequest("User does not have permission to the resource.");
}
if ((resource.Type.DisplayName.ToLower() == "rds" || resource.Type.DisplayName.ToLower() == "rdss3") && resource.ResourceTypeOptionId.HasValue)
{
try
{
var resourceTypeOptions = _resourceModel.GetResourceTypeOptions(resource.Id);
var resourceTypeDefinition = ResourceTypeFactory.CreateResourceTypeObject(resource.Type.DisplayName, _configuration);
if (resourceTypeDefinition == null)
{
return BadRequest($"No provider for: \"{resource.Type.DisplayName}\".");
}
var resourceTypeInformation = resourceTypeDefinition.GetResourceTypeInformation().Result;
if (resource.ResourceTypeOptionId.HasValue && resourceTypeInformation.IsQuotaAvailable)
{
try
{
var totalFileSize = resourceTypeDefinition.GetResourceQuotaUsed(resourceId, resourceTypeOptions).Result;
return Ok($"{{ \"data\": {{ \"usedSizeByte\": {totalFileSize} }}}}");
}
......@@ -130,7 +134,7 @@ namespace Coscine.Api.Blob.Controllers
}
else
{
return BadRequest("The resource type must be rds.");
return BadRequest("The resource quota must be adjustable.");
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment