Skip to content

Commit 8ba9ca5

Browse files
committed
feat: extend alias to async client
1 parent 26ee7db commit 8ba9ca5

2 files changed

Lines changed: 53 additions & 0 deletions

File tree

src/main/java/io/weaviate/client6/v1/api/WeaviateClientAsync.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import java.io.IOException;
55
import java.util.function.Function;
66

7+
import io.weaviate.client6.v1.api.alias.WeaviateAliasClientAsync;
78
import io.weaviate.client6.v1.api.collections.WeaviateCollectionsClientAsync;
89
import io.weaviate.client6.v1.internal.ObjectBuilder;
910
import io.weaviate.client6.v1.internal.grpc.DefaultGrpcTransport;
@@ -16,11 +17,13 @@ public class WeaviateClientAsync implements Closeable {
1617
private final GrpcTransport grpcTransport;
1718

1819
public final WeaviateCollectionsClientAsync collections;
20+
public final WeaviateAliasClientAsync alias;
1921

2022
public WeaviateClientAsync(Config config) {
2123
this.restTransport = new DefaultRestTransport(config.restTransportOptions());
2224
this.grpcTransport = new DefaultGrpcTransport(config.grpcTransportOptions());
2325

26+
this.alias = new WeaviateAliasClientAsync(restTransport);
2427
this.collections = new WeaviateCollectionsClientAsync(restTransport, grpcTransport);
2528
}
2629

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
package io.weaviate.client6.v1.api.alias;
2+
3+
import java.util.List;
4+
import java.util.Optional;
5+
import java.util.concurrent.CompletableFuture;
6+
import java.util.function.Function;
7+
8+
import io.weaviate.client6.v1.internal.ObjectBuilder;
9+
import io.weaviate.client6.v1.internal.rest.RestTransport;
10+
11+
public class WeaviateAliasClientAsync {
12+
private final RestTransport restTransport;
13+
14+
public WeaviateAliasClientAsync(RestTransport restTransport) {
15+
this.restTransport = restTransport;
16+
}
17+
18+
public CompletableFuture<Void> create(String collection, String alias) {
19+
return create(new Alias(collection, alias));
20+
}
21+
22+
public CompletableFuture<Void> create(Alias alias) {
23+
return this.restTransport.performRequestAsync(new CreateAliasRequest(alias), CreateAliasRequest._ENDPOINT);
24+
}
25+
26+
public CompletableFuture<List<Alias>> list() {
27+
return list(ListAliasRequest.of());
28+
}
29+
30+
public CompletableFuture<List<Alias>> list(Function<ListAliasRequest.Builder, ObjectBuilder<ListAliasRequest>> fn) {
31+
return list(ListAliasRequest.of(fn));
32+
}
33+
34+
private CompletableFuture<List<Alias>> list(ListAliasRequest request) {
35+
return this.restTransport.performRequestAsync(request, ListAliasRequest._ENDPOINT);
36+
}
37+
38+
public CompletableFuture<Optional<Alias>> get(String alias) {
39+
return this.restTransport.performRequestAsync(new GetAliasRequest(alias), GetAliasRequest._ENDPOINT);
40+
}
41+
42+
public CompletableFuture<Void> update(String alias, String newTargetCollection) {
43+
return this.restTransport.performRequestAsync(new UpdateAliasRequest(alias, newTargetCollection),
44+
UpdateAliasRequest._ENDPOINT);
45+
}
46+
47+
public CompletableFuture<Void> delete(String alias) {
48+
return this.restTransport.performRequestAsync(new DeleteAliasRequest(alias), DeleteAliasRequest._ENDPOINT);
49+
}
50+
}

0 commit comments

Comments
 (0)