Skip to content

Commit 56037f0

Browse files
authored
Merge branch 'v6' into v6-weaviate-object
2 parents 17cade1 + b4af659 commit 56037f0

30 files changed

Lines changed: 995 additions & 985 deletions

README.md

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -430,8 +430,8 @@ songs.query.hybrid(
430430
Objects can be filtered by property or reference values. In the latter case you need to pass the "path" to the property in the referenced collection.
431431

432432
```java
433-
.where(Where.property("year").gte(1969))
434-
.where(Where.reference("hasAwards", "GrammyAwards", "category").eq("New Artist"))
433+
.filters(Filter.property("year").gte(1969))
434+
.filters(Filter.reference("hasAwards", "GrammyAwards", "category").eq("New Artist"))
435435
```
436436

437437
Supported **comparison operators**:
@@ -451,15 +451,15 @@ Supported **comparison operators**:
451451
Comparison operators can be grouped using **logical operators** with arbitrarily deep nesting.
452452

453453
```java
454-
.where(
455-
Where.or(
456-
Where.and(
457-
Where.property("year").gt(2000),
458-
Where.property("year").lt(2017)
454+
.filters(
455+
Filter.or(
456+
Filter.and(
457+
Filter.property("year").gt(2000),
458+
Filter.property("year").lt(2017)
459459
),
460-
Where.or(
461-
Where.property("artist").like("Boys"),
462-
Where.property("genres").containsAny("#rock", "#rocknroll", "#grunge")
460+
Filter.or(
461+
Filter.property("artist").like("Boys"),
462+
Filter.property("genres").containsAny("#rock", "#rocknroll", "#grunge")
463463
)
464464
)
465465
)
@@ -471,23 +471,23 @@ Supported **logical operators**:
471471
- Or: `.or`
472472
- Not: `.not`
473473

474-
Operators passed in subsequent calls to `.where` are concatenated with the `.and` operartor.
474+
Operators passed in subsequent calls to `.filters` are concatenated with the `.and` operartor.
475475
These 3 calls are equivalent:
476476

477477
```java
478-
.where(Where.and(cond1, cond2))
479-
.where(cond1, cond2)
480-
.where(cond1).where(cond2)
478+
.filters(Filter.and(cond1, cond2))
479+
.filters(cond1, cond2)
480+
.filters(cond1).filters(cond2)
481481
```
482482

483-
To negate an operator, wrap it in `Where.not(...)` or use the negation shorthand.
483+
To negate an operator, wrap it in `Filter.not(...)` or use the negation shorthand.
484484

485485
```java
486-
Where.not(Where.property("title").like("summer"));
487-
Where.property("title").like("summer").not();
486+
Filter.not(Filter.property("title").like("summer"));
487+
Filter.property("title").like("summer").not();
488488
```
489489

490-
Passing `null` and and empty `Where[]` to any of the logical operators as well as to the `.where()` method is safe -- the empty operators will simply be ignored.
490+
Passing `null` and empty `Filter[]` to any of the logical operators as well as to the `.filters()` method is safe -- the empty operators will simply be ignored.
491491

492492

493493
#### Grouping results

src/it/java/io/weaviate/integration/DataITest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
import io.weaviate.client6.v1.api.collections.query.QueryMetadata;
2929
import io.weaviate.client6.v1.api.collections.query.QueryReference;
3030
import io.weaviate.client6.v1.api.collections.query.ReadWeaviateObject;
31-
import io.weaviate.client6.v1.api.collections.query.Where;
31+
import io.weaviate.client6.v1.api.collections.query.Filter;
3232
import io.weaviate.containers.Container;
3333

3434
public class DataITest extends ConcurrentTest {
@@ -303,7 +303,7 @@ public void testDeleteMany() throws IOException {
303303

304304
// Act (dry run)
305305
things.data.deleteMany(
306-
Where.property("last_used").gte(4),
306+
Filter.property("last_used").gte(4),
307307
opt -> opt.dryRun(true));
308308

309309
// Assert
@@ -312,7 +312,7 @@ public void testDeleteMany() throws IOException {
312312

313313
// Act (live run)
314314
var deleted = things.data.deleteMany(
315-
Where.property("last_used").gte(4),
315+
Filter.property("last_used").gte(4),
316316
opt -> opt.verbose(true));
317317

318318
// Assert

src/it/java/io/weaviate/integration/ORMITest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import io.weaviate.client6.v1.api.collections.annotations.Property;
2222
import io.weaviate.client6.v1.api.collections.data.InsertManyResponse.InsertObject;
2323
import io.weaviate.client6.v1.api.collections.query.ReadWeaviateObject;
24-
import io.weaviate.client6.v1.api.collections.query.Where;
24+
import io.weaviate.client6.v1.api.collections.query.Filter;
2525
import io.weaviate.containers.Container;
2626

2727
public class ORMITest extends ConcurrentTest {
@@ -318,7 +318,7 @@ public void test_insertManyAndQuery() throws Exception {
318318

319319
// Assert
320320
var uuids = inserted.responses().stream().map(InsertObject::uuid).toArray(String[]::new);
321-
var got = things.query.fetchObjects(q -> q.where(Where.uuid().containsAny(uuids)));
321+
var got = things.query.fetchObjects(q -> q.filters(Filter.uuid().containsAny(uuids)));
322322
Assertions.assertThat(got.objects())
323323
.hasSize(3)
324324
.usingRecursiveComparison(COMPARISON_CONFIG)

src/it/java/io/weaviate/integration/SearchITest.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
import io.weaviate.client6.v1.api.collections.query.ReadWeaviateObject;
3737
import io.weaviate.client6.v1.api.collections.query.SortBy;
3838
import io.weaviate.client6.v1.api.collections.query.Target;
39-
import io.weaviate.client6.v1.api.collections.query.Where;
39+
import io.weaviate.client6.v1.api.collections.query.Filter;
4040
import io.weaviate.client6.v1.api.collections.vectorindex.Hnsw;
4141
import io.weaviate.client6.v1.api.collections.vectorindex.MultiVector;
4242
import io.weaviate.containers.Container;
@@ -251,12 +251,12 @@ public void testFetchObjectsWithFilters() throws IOException {
251251
var hugeHat = hats.data.insert(Map.of("colour", "orange", "size", 40));
252252

253253
var got = hats.query.fetchObjects(
254-
query -> query.where(
255-
Where.or(
256-
Where.property("colour").eq("orange"),
257-
Where.and(
258-
Where.property("size").gte(1),
259-
Where.property("size").lt(6)))));
254+
query -> query.filters(
255+
Filter.or(
256+
Filter.property("colour").eq("orange"),
257+
Filter.and(
258+
Filter.property("size").gte(1),
259+
Filter.property("size").lt(6)))));
260260

261261
Assertions.assertThat(got.objects())
262262
.extracting(hat -> hat.metadata().uuid())

src/main/java/io/weaviate/client6/v1/api/collections/data/DeleteManyRequest.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import java.util.function.Function;
44

55
import io.weaviate.client6.v1.api.collections.CollectionHandleDefaults;
6-
import io.weaviate.client6.v1.api.collections.query.Where;
6+
import io.weaviate.client6.v1.api.collections.query.Filter;
77
import io.weaviate.client6.v1.internal.ObjectBuilder;
88
import io.weaviate.client6.v1.internal.grpc.ByteStringUtil;
99
import io.weaviate.client6.v1.internal.grpc.Rpc;
@@ -13,7 +13,7 @@
1313
import io.weaviate.client6.v1.internal.grpc.protocol.WeaviateProtoBatchDelete;
1414
import io.weaviate.client6.v1.internal.orm.CollectionDescriptor;
1515

16-
public record DeleteManyRequest(Where where, Boolean verbose, Boolean dryRun) {
16+
public record DeleteManyRequest(Filter filters, Boolean verbose, Boolean dryRun) {
1717

1818
public static Rpc<DeleteManyRequest, WeaviateProtoBatchDelete.BatchDeleteRequest, DeleteManyResponse, WeaviateProtoBatchDelete.BatchDeleteReply> rpc(
1919
CollectionDescriptor<?> collection,
@@ -37,7 +37,7 @@ public static Rpc<DeleteManyRequest, WeaviateProtoBatchDelete.BatchDeleteRequest
3737
}
3838

3939
var filters = WeaviateProtoBase.Filters.newBuilder();
40-
request.where.appendTo(filters);
40+
request.filters.appendTo(filters);
4141
message.setFilters(filters);
4242

4343
return message.build();
@@ -62,30 +62,30 @@ public static Rpc<DeleteManyRequest, WeaviateProtoBatchDelete.BatchDeleteRequest
6262
() -> WeaviateFutureStub::batchDelete);
6363
}
6464

65-
public static DeleteManyRequest of(Where where) {
66-
return of(where, ObjectBuilder.identity());
65+
public static DeleteManyRequest of(Filter filters) {
66+
return of(filters, ObjectBuilder.identity());
6767
}
6868

6969
public DeleteManyRequest(Builder builder) {
7070
this(
71-
builder.where,
71+
builder.filters,
7272
builder.verbose,
7373
builder.dryRun);
7474
}
7575

76-
public static DeleteManyRequest of(Where where, Function<Builder, ObjectBuilder<DeleteManyRequest>> fn) {
77-
return fn.apply(new Builder(where)).build();
76+
public static DeleteManyRequest of(Filter filters, Function<Builder, ObjectBuilder<DeleteManyRequest>> fn) {
77+
return fn.apply(new Builder(filters)).build();
7878
}
7979

8080
public static class Builder implements ObjectBuilder<DeleteManyRequest> {
8181
// Required request parameters;
82-
private final Where where;
82+
private final Filter filters;
8383

8484
private Boolean verbose;
8585
private Boolean dryRun;
8686

87-
public Builder(Where where) {
88-
this.where = where;
87+
public Builder(Filter filters) {
88+
this.filters = filters;
8989
}
9090

9191
public Builder verbose(boolean verbose) {

src/main/java/io/weaviate/client6/v1/api/collections/data/WeaviateDataClient.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77

88
import io.weaviate.client6.v1.api.collections.CollectionHandleDefaults;
99
import io.weaviate.client6.v1.api.collections.query.WeaviateQueryClient;
10-
import io.weaviate.client6.v1.api.collections.query.Where;
11-
import io.weaviate.client6.v1.api.collections.query.WhereOperand;
10+
import io.weaviate.client6.v1.api.collections.query.Filter;
11+
import io.weaviate.client6.v1.api.collections.query.FilterOperand;
1212
import io.weaviate.client6.v1.internal.ObjectBuilder;
1313
import io.weaviate.client6.v1.internal.grpc.GrpcTransport;
1414
import io.weaviate.client6.v1.internal.orm.CollectionDescriptor;
@@ -105,18 +105,18 @@ public void delete(String uuid) throws IOException {
105105

106106
public DeleteManyResponse deleteMany(String... uuids) {
107107
var either = Arrays.stream(uuids)
108-
.map(uuid -> (WhereOperand) Where.uuid().eq(uuid))
108+
.map(uuid -> (FilterOperand) Filter.uuid().eq(uuid))
109109
.toList();
110-
return deleteMany(DeleteManyRequest.of(Where.or(either)));
110+
return deleteMany(DeleteManyRequest.of(Filter.or(either)));
111111
}
112112

113-
public DeleteManyResponse deleteMany(Where where) {
114-
return deleteMany(DeleteManyRequest.of(where));
113+
public DeleteManyResponse deleteMany(Filter filters) {
114+
return deleteMany(DeleteManyRequest.of(filters));
115115
}
116116

117-
public DeleteManyResponse deleteMany(Where where,
117+
public DeleteManyResponse deleteMany(Filter filters,
118118
Function<DeleteManyRequest.Builder, ObjectBuilder<DeleteManyRequest>> fn) {
119-
return deleteMany(DeleteManyRequest.of(where, fn));
119+
return deleteMany(DeleteManyRequest.of(filters, fn));
120120
}
121121

122122
public DeleteManyResponse deleteMany(DeleteManyRequest request) {

src/main/java/io/weaviate/client6/v1/api/collections/data/WeaviateDataClientAsync.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99

1010
import io.weaviate.client6.v1.api.collections.CollectionHandleDefaults;
1111
import io.weaviate.client6.v1.api.collections.query.WeaviateQueryClientAsync;
12-
import io.weaviate.client6.v1.api.collections.query.Where;
13-
import io.weaviate.client6.v1.api.collections.query.WhereOperand;
12+
import io.weaviate.client6.v1.api.collections.query.Filter;
13+
import io.weaviate.client6.v1.api.collections.query.FilterOperand;
1414
import io.weaviate.client6.v1.internal.ObjectBuilder;
1515
import io.weaviate.client6.v1.internal.grpc.GrpcTransport;
1616
import io.weaviate.client6.v1.internal.orm.CollectionDescriptor;
@@ -99,18 +99,18 @@ public CompletableFuture<Void> delete(String uuid) {
9999

100100
public CompletableFuture<DeleteManyResponse> deleteMany(String... uuids) {
101101
var either = Arrays.stream(uuids)
102-
.map(uuid -> (WhereOperand) Where.uuid().eq(uuid))
102+
.map(uuid -> (FilterOperand) Filter.uuid().eq(uuid))
103103
.toList();
104-
return deleteMany(DeleteManyRequest.of(Where.or(either)));
104+
return deleteMany(DeleteManyRequest.of(Filter.or(either)));
105105
}
106106

107-
public CompletableFuture<DeleteManyResponse> deleteMany(Where where) {
108-
return deleteMany(DeleteManyRequest.of(where));
107+
public CompletableFuture<DeleteManyResponse> deleteMany(Filter filters) {
108+
return deleteMany(DeleteManyRequest.of(filters));
109109
}
110110

111-
public CompletableFuture<DeleteManyResponse> deleteMany(Where where,
111+
public CompletableFuture<DeleteManyResponse> deleteMany(Filter filters,
112112
Function<DeleteManyRequest.Builder, ObjectBuilder<DeleteManyRequest>> fn) {
113-
return deleteMany(DeleteManyRequest.of(where, fn));
113+
return deleteMany(DeleteManyRequest.of(filters, fn));
114114
}
115115

116116
public CompletableFuture<DeleteManyResponse> deleteMany(DeleteManyRequest request) {

0 commit comments

Comments
 (0)