diff --git a/distro/changelog.xml b/distro/changelog.xml
index f09bc6d..67941f5 100644
--- a/distro/changelog.xml
+++ b/distro/changelog.xml
@@ -1,5 +1,10 @@
-
+
First Release
+
+ Fixed bug in QueryBox to prevented correct working of hashcode() and equals() in subclasses.
+ As a result, different queries appeared the same with consequences downstream where queries where used for caching.
+
+
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 069d133..9594dd5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -11,7 +11,7 @@
org.gcube.resources.discovery
discovery-client
- 1.0.0-SNAPSHOT
+ 1.0.1-SNAPSHOT
Discovery Client
Base API for resource discovery clients
diff --git a/src/main/java/org/gcube/resources/discovery/client/queries/impl/QueryBox.java b/src/main/java/org/gcube/resources/discovery/client/queries/impl/QueryBox.java
index c78a59d..9c01d69 100644
--- a/src/main/java/org/gcube/resources/discovery/client/queries/impl/QueryBox.java
+++ b/src/main/java/org/gcube/resources/discovery/client/queries/impl/QueryBox.java
@@ -26,7 +26,7 @@ public class QueryBox implements Query {
public int hashCode() {
final int prime = 31;
int result = 1;
- result = prime * result + ((expression == null) ? 0 : expression.hashCode());
+ result = prime * result + ((expression() == null) ? 0 : expression().hashCode());
return result;
}
@@ -39,10 +39,10 @@ public class QueryBox implements Query {
if (getClass() != obj.getClass())
return false;
QueryBox other = (QueryBox) obj;
- if (expression == null) {
- if (other.expression != null)
+ if (expression() == null) {
+ if (other.expression() != null)
return false;
- } else if (!expression.equals(other.expression))
+ } else if (!expression().equals(other.expression()))
return false;
return true;
}
diff --git a/src/main/java/org/gcube/resources/discovery/client/queries/impl/QueryTemplate.java b/src/main/java/org/gcube/resources/discovery/client/queries/impl/QueryTemplate.java
index de3a2c3..7a3f27e 100644
--- a/src/main/java/org/gcube/resources/discovery/client/queries/impl/QueryTemplate.java
+++ b/src/main/java/org/gcube/resources/discovery/client/queries/impl/QueryTemplate.java
@@ -181,4 +181,6 @@ public class QueryTemplate extends QueryBox implements Query {
throw new RuntimeException("cannot replace parameters " + parameters + " in query " + expression,e);
}
}
+
+
}