diff --git a/.classpath b/.classpath
index ace8266..2d7c6a5 100644
--- a/.classpath
+++ b/.classpath
@@ -15,16 +15,19 @@
+
+
+
diff --git a/.project b/.project
index a9b54dd..805ba88 100644
--- a/.project
+++ b/.project
@@ -5,11 +5,21 @@
+
+ org.eclipse.wst.common.project.facet.core.builder
+
+
+
org.eclipse.jdt.core.javabuilder
+
+ org.eclipse.wst.validation.validationbuilder
+
+
+
org.eclipse.m2e.core.maven2Builder
@@ -17,7 +27,10 @@
+ org.eclipse.jem.workbench.JavaEMFNature
+ org.eclipse.wst.common.modulecore.ModuleCoreNature
org.eclipse.jdt.core.javanature
org.eclipse.m2e.core.maven2Nature
+ org.eclipse.wst.common.project.facet.core.nature
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
index 672496e..8445b6b 100644
--- a/.settings/org.eclipse.jdt.core.prefs
+++ b/.settings/org.eclipse.jdt.core.prefs
@@ -9,4 +9,5 @@ org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.release=disabled
org.eclipse.jdt.core.compiler.source=1.8
diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component
new file mode 100644
index 0000000..f9cfd7b
--- /dev/null
+++ b/.settings/org.eclipse.wst.common.component
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/.settings/org.eclipse.wst.common.project.facet.core.xml b/.settings/org.eclipse.wst.common.project.facet.core.xml
new file mode 100644
index 0000000..fb95c45
--- /dev/null
+++ b/.settings/org.eclipse.wst.common.project.facet.core.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/.settings/org.eclipse.wst.validation.prefs b/.settings/org.eclipse.wst.validation.prefs
new file mode 100644
index 0000000..04cad8c
--- /dev/null
+++ b/.settings/org.eclipse.wst.validation.prefs
@@ -0,0 +1,2 @@
+disabled=06target
+eclipse.preferences.version=1
diff --git a/src/main/java/org/gcube/common/storagehub/model/exceptions/BackendGenericError.java b/src/main/java/org/gcube/common/storagehub/model/exceptions/BackendGenericError.java
index a7d6360..35f4a32 100644
--- a/src/main/java/org/gcube/common/storagehub/model/exceptions/BackendGenericError.java
+++ b/src/main/java/org/gcube/common/storagehub/model/exceptions/BackendGenericError.java
@@ -26,5 +26,15 @@ public class BackendGenericError extends StorageHubException{
super(cause);
// TODO Auto-generated constructor stub
}
+
+ @Override
+ public String getErrorMessage() {
+ return "generic error in the backend";
+ }
+
+ @Override
+ public int getStatus() {
+ return 500;
+ }
}
diff --git a/src/main/java/org/gcube/common/storagehub/model/exceptions/IdNotFoundException.java b/src/main/java/org/gcube/common/storagehub/model/exceptions/IdNotFoundException.java
index 3147c23..56322de 100644
--- a/src/main/java/org/gcube/common/storagehub/model/exceptions/IdNotFoundException.java
+++ b/src/main/java/org/gcube/common/storagehub/model/exceptions/IdNotFoundException.java
@@ -17,6 +17,14 @@ public class IdNotFoundException extends StorageHubException {
// TODO Auto-generated constructor stub
}
-
+ @Override
+ public String getErrorMessage() {
+ return "item not found";
+ }
+
+ @Override
+ public int getStatus() {
+ return 404;
+ }
}
diff --git a/src/main/java/org/gcube/common/storagehub/model/exceptions/InvalidCallParameters.java b/src/main/java/org/gcube/common/storagehub/model/exceptions/InvalidCallParameters.java
index 92194a4..d0fc43b 100644
--- a/src/main/java/org/gcube/common/storagehub/model/exceptions/InvalidCallParameters.java
+++ b/src/main/java/org/gcube/common/storagehub/model/exceptions/InvalidCallParameters.java
@@ -27,4 +27,14 @@ public class InvalidCallParameters extends StorageHubException {
// TODO Auto-generated constructor stub
}
+ @Override
+ public String getErrorMessage() {
+ return "invalid call parameter";
+ }
+
+ @Override
+ public int getStatus() {
+ return 400;
+ }
+
}
diff --git a/src/main/java/org/gcube/common/storagehub/model/exceptions/InvalidItemException.java b/src/main/java/org/gcube/common/storagehub/model/exceptions/InvalidItemException.java
index 4a25ea7..0bd4d7b 100644
--- a/src/main/java/org/gcube/common/storagehub/model/exceptions/InvalidItemException.java
+++ b/src/main/java/org/gcube/common/storagehub/model/exceptions/InvalidItemException.java
@@ -27,6 +27,14 @@ public class InvalidItemException extends StorageHubException {
// TODO Auto-generated constructor stub
}
-
+ @Override
+ public String getErrorMessage() {
+ return "invalid item in request";
+ }
+
+ @Override
+ public int getStatus() {
+ return 500;
+ }
}
diff --git a/src/main/java/org/gcube/common/storagehub/model/exceptions/ItemAlreadyExistsException.java b/src/main/java/org/gcube/common/storagehub/model/exceptions/ItemAlreadyExistsException.java
index 7492d4e..18fa388 100644
--- a/src/main/java/org/gcube/common/storagehub/model/exceptions/ItemAlreadyExistsException.java
+++ b/src/main/java/org/gcube/common/storagehub/model/exceptions/ItemAlreadyExistsException.java
@@ -27,4 +27,13 @@ public class ItemAlreadyExistsException extends StorageHubException {
// TODO Auto-generated constructor stub
}
+ @Override
+ public String getErrorMessage() {
+ return "item already exists";
+ }
+
+ @Override
+ public int getStatus() {
+ return 400;
+ }
}
diff --git a/src/main/java/org/gcube/common/storagehub/model/exceptions/ItemLockedException.java b/src/main/java/org/gcube/common/storagehub/model/exceptions/ItemLockedException.java
new file mode 100644
index 0000000..e5865be
--- /dev/null
+++ b/src/main/java/org/gcube/common/storagehub/model/exceptions/ItemLockedException.java
@@ -0,0 +1,40 @@
+package org.gcube.common.storagehub.model.exceptions;
+
+public class ItemLockedException extends StorageHubException {
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 1L;
+
+ public ItemLockedException() {
+ super();
+ // TODO Auto-generated constructor stub
+ }
+
+ public ItemLockedException(String message, Throwable cause) {
+ super(message, cause);
+ // TODO Auto-generated constructor stub
+ }
+
+ public ItemLockedException(String message) {
+ super(message);
+ // TODO Auto-generated constructor stub
+ }
+
+ public ItemLockedException(Throwable cause) {
+ super(cause);
+ // TODO Auto-generated constructor stub
+ }
+
+ @Override
+ public String getErrorMessage() {
+ return "item locked";
+ }
+
+ @Override
+ public int getStatus() {
+ return 409;
+ }
+
+}
diff --git a/src/main/java/org/gcube/common/storagehub/model/exceptions/StorageHubException.java b/src/main/java/org/gcube/common/storagehub/model/exceptions/StorageHubException.java
index b1b7117..6b3764b 100644
--- a/src/main/java/org/gcube/common/storagehub/model/exceptions/StorageHubException.java
+++ b/src/main/java/org/gcube/common/storagehub/model/exceptions/StorageHubException.java
@@ -12,6 +12,10 @@ public abstract class StorageHubException extends Exception {
// TODO Auto-generated constructor stub
}
+ public abstract String getErrorMessage();
+
+ public abstract int getStatus();
+
public StorageHubException(String message, Throwable cause) {
super(message, cause);
// TODO Auto-generated constructor stub
diff --git a/src/main/java/org/gcube/common/storagehub/model/exceptions/UserNotAuthorizedException.java b/src/main/java/org/gcube/common/storagehub/model/exceptions/UserNotAuthorizedException.java
index b4ca6f3..9961c59 100644
--- a/src/main/java/org/gcube/common/storagehub/model/exceptions/UserNotAuthorizedException.java
+++ b/src/main/java/org/gcube/common/storagehub/model/exceptions/UserNotAuthorizedException.java
@@ -27,5 +27,14 @@ public class UserNotAuthorizedException extends StorageHubException {
// TODO Auto-generated constructor stub
}
+ @Override
+ public String getErrorMessage() {
+ return "user not authorized";
+ }
+
+ @Override
+ public int getStatus() {
+ return 401;
+ }
}