Refs #11288: Made resource-registry more RESTful

Task-Url: https://support.d4science.org/issues/11288

git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/information-system/resource-registry@169083 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Luca Frosini 2018-06-12 15:24:19 +00:00
parent f4b358be2c
commit 1fcceb17c5
3 changed files with 11 additions and 16 deletions

View File

@ -429,16 +429,10 @@ public abstract class ERManagement<ERType extends ER, El extends Element> {
}
}
public boolean exists(boolean writer)
public boolean exists()
throws NotFoundException, AvailableInAnotherContextException, ResourceRegistryException {
try {
if(writer) {
// Exists is used to understand if it is a create or update.
// In any case the we need writing right on this instance
orientGraph = getWorkingContext().getGraph(PermissionMode.WRITER);
}else {
orientGraph = getWorkingContext().getGraph(PermissionMode.READER);
}
orientGraph = getWorkingContext().getGraph(PermissionMode.READER);
getElement();

View File

@ -209,7 +209,7 @@ public class Access {
try {
erManagement.setUUID(UUID.fromString(uuid));
boolean found = erManagement.exists(false);
boolean found = erManagement.exists();
if(found) {
return Response.status(Status.NO_CONTENT).build();
} else {

View File

@ -99,7 +99,7 @@ public class InstancesManager {
try {
erManagement.setUUID(UUID.fromString(uuid));
boolean found = erManagement.exists(false);
boolean found = erManagement.exists();
if(found) {
return Response.status(Status.NO_CONTENT).build();
} else {
@ -155,18 +155,19 @@ public class InstancesManager {
logger.trace("Requested to update/create {} with id {} with json {}", type, uuid, json);
setCalledMethod(HTTPMETHOD.PUT, type, true);
@SuppressWarnings("rawtypes")
ERManagement erManagement = ERManagementUtility.getERManagement(type);
erManagement.setUUID(UUID.fromString(uuid));
boolean create = false;
try {
erManagement.exists(true);
@SuppressWarnings("rawtypes")
ERManagement erManagement = ERManagementUtility.getERManagement(type);
erManagement.setUUID(UUID.fromString(uuid));
erManagement.exists();
} catch(NotFoundException e) {
create = true;
}
@SuppressWarnings("rawtypes")
ERManagement erManagement = ERManagementUtility.getERManagement(type);
erManagement.setUUID(UUID.fromString(uuid));
erManagement.setElementType(type);
erManagement.setJSON(json);
if(create) {