Skip to content

Commit 8ce633e

Browse files
committed
wildcard generic type in AQL bindVars
1 parent a4e0438 commit 8ce633e

File tree

4 files changed

+11
-10
lines changed

4 files changed

+11
-10
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929

3030
<properties>
3131
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
32-
<arangodb-java-driver.version>7.21.0</arangodb-java-driver.version>
32+
<arangodb-java-driver.version>7.22.0-SNAPSHOT</arangodb-java-driver.version>
3333
<test.graph.type>simple</test.graph.type>
3434
<jpms.argLine/>
3535
</properties>

src/main/java/com/arangodb/tinkerpop/gremlin/client/ArangoDBGraphClient.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -191,16 +191,16 @@ public ArangoDB getArangoDriver() {
191191
return db.arango();
192192
}
193193

194-
public Iterator<Object> query(final String query, final Map<String, Object> parameters, final AqlQueryOptions options) {
194+
public Iterator<Object> query(final String query, final Map<String, ?> parameters, final AqlQueryOptions options) {
195195
Iterator<JsonNode> res = query(query, JsonNode.class, parameters, options);
196196
return IteratorUtils.map(res, aqlDeserializer::deserialize);
197197
}
198198

199-
private <V> ArangoCursor<V> query(String query, Class<V> type, Map<String, Object> parameters) {
199+
private <V> ArangoCursor<V> query(String query, Class<V> type, Map<String, ?> parameters) {
200200
return query(query, type, parameters, new AqlQueryOptions());
201201
}
202202

203-
private <V> ArangoCursor<V> query(String query, Class<V> type, Map<String, Object> parameters, AqlQueryOptions options) {
203+
private <V> ArangoCursor<V> query(String query, Class<V> type, Map<String, ?> parameters, AqlQueryOptions options) {
204204
logger.debug("Executing AQL query: {}, with parameters: {}, with options: {}", query, parameters, options);
205205
try {
206206
return db.query(query, type, parameters, options);

src/main/java/com/arangodb/tinkerpop/gremlin/structure/ArangoDBGraph.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,7 @@ public <E> GraphTraversal<?, E> aql(final String query, final AqlQueryOptions op
243243
* @param parameters the parameters of the AQL query
244244
* @return a fluent Gremlin traversal
245245
*/
246-
public <E> GraphTraversal<?, E> aql(final String query, final Map<String, Object> parameters) {
246+
public <E> GraphTraversal<?, E> aql(final String query, final Map<String, ?> parameters) {
247247
return aql(query, parameters, new AqlQueryOptions());
248248
}
249249

@@ -255,7 +255,7 @@ public <E> GraphTraversal<?, E> aql(final String query, final Map<String, Object
255255
* @param options query options
256256
* @return a fluent Gremlin traversal
257257
*/
258-
public <E> GraphTraversal<?, E> aql(final String query, final Map<String, Object> parameters, final AqlQueryOptions options) {
258+
public <E> GraphTraversal<?, E> aql(final String query, final Map<String, ?> parameters, final AqlQueryOptions options) {
259259
GraphTraversal.Admin<?, E> traversal = new DefaultGraphTraversal<>(this);
260260
traversal.addStep(new AQLStartStep(traversal, query, client.query(query, parameters, options)));
261261
return traversal;

src/test/java/com/arangodb/tinkerpop/gremlin/arangodb/simple/AqlTest.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818

1919
import com.arangodb.ArangoDBException;
2020
import com.arangodb.model.AqlQueryOptions;
21+
import com.arangodb.tinkerpop.gremlin.persistence.ElementId;
2122
import com.arangodb.tinkerpop.gremlin.structure.ArangoDBGraph;
2223
import org.apache.commons.lang3.tuple.Pair;
2324
import org.apache.tinkerpop.gremlin.AbstractGremlinTest;
@@ -55,7 +56,7 @@ private String edgeCollection() {
5556
public void shouldExecuteAqlWithArgs() {
5657
this.graph.addVertex("name", "marko");
5758
String query = "FOR d IN @@vCol FILTER d.name == @name RETURN d";
58-
Map<String, Object> bindings = new HashMap<>();
59+
Map<String, String> bindings = new HashMap<>();
5960
bindings.put("@vCol", vertexCollection());
6061
bindings.put("name", "marko");
6162
Iterator<String> result = graph().aql(query, bindings).values("name");
@@ -89,7 +90,7 @@ public void shouldReadVertex() {
8990
public void shouldReadNestedVertices() {
9091
Vertex a = graph.addVertex("name", "marko");
9192
Vertex b = graph.addVertex("name", "vadas");
92-
Map<String, Object> params = new HashMap<>();
93+
Map<String, ElementId> params = new HashMap<>();
9394
params.put("a", graph().elementId(a));
9495
params.put("b", graph().elementId(b));
9596
Map<String, Vertex> result = graph().<Map<String, Vertex>>aql(
@@ -105,7 +106,7 @@ public void shouldReadNestedVertices() {
105106
public void shouldReadArrayOfVertices() {
106107
Vertex a = graph.addVertex("name", "marko");
107108
Vertex b = graph.addVertex("name", "vadas");
108-
Map<String, Object> params = new HashMap<>();
109+
Map<String, ElementId> params = new HashMap<>();
109110
params.put("a", graph().elementId(a));
110111
params.put("b", graph().elementId(b));
111112
List<Vertex> result = graph().<List<Vertex>>aql(
@@ -166,7 +167,7 @@ public void shouldExecuteAqlAndBackToGremlin() {
166167
this.graph.addVertex("name", "marko", "age", 29, "color", "red");
167168
this.graph.addVertex("name", "marko", "age", 30, "color", "yellow");
168169
String query = "FOR d IN @@vCol FILTER d.name == @name RETURN d";
169-
Map<String, Object> bindings = new HashMap<>();
170+
Map<String, String> bindings = new HashMap<>();
170171
bindings.put("@vCol", vertexCollection());
171172
bindings.put("name", "marko");
172173
Traversal<?, ?> result = graph().aql(query, bindings).has("age", 29).values("color");

0 commit comments

Comments
 (0)