Package io.stargate.sgv2.api.common.grpc
Class RetriableStargateBridge
java.lang.Object
io.stargate.sgv2.api.common.grpc.RetriableStargateBridge
- All Implemented Interfaces:
io.quarkus.grpc.MutinyService,StargateBridge
An implementation of the
StargateBridge that executes retries based on the
GrpcConfig.Retries configuration.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionio.smallrye.mutiny.Uni<io.stargate.bridge.proto.Schema.AuthorizeSchemaReadsResponse>authorizeSchemaReads(io.stargate.bridge.proto.Schema.AuthorizeSchemaReadsRequest request) Checks whether the client is authorized to describe one or more schema elements.io.smallrye.mutiny.Uni<io.stargate.bridge.proto.Schema.CqlKeyspaceDescribe>describeKeyspace(io.stargate.bridge.proto.Schema.DescribeKeyspaceQuery request) Similar to CQL "DESCRIBE KEYSPACE".io.smallrye.mutiny.Uni<io.stargate.bridge.proto.QueryOuterClass.Response>executeBatch(io.stargate.bridge.proto.QueryOuterClass.Batch request) Executes a batch of CQL queries.io.smallrye.mutiny.Uni<io.stargate.bridge.proto.QueryOuterClass.Response>executeQuery(io.stargate.bridge.proto.QueryOuterClass.Query request) Executes a single CQL query.io.smallrye.mutiny.Uni<io.stargate.bridge.proto.Schema.QueryWithSchemaResponse>executeQueryWithSchema(io.stargate.bridge.proto.Schema.QueryWithSchema request) Executes a single CQL query, assuming that a keyspace with the given version hash exists on the bridge side.io.smallrye.mutiny.Uni<io.stargate.bridge.proto.Schema.SupportedFeaturesResponse>getSupportedFeatures(io.stargate.bridge.proto.Schema.SupportedFeaturesRequest request) Checks which features are supported by the persistence backend.
-
Constructor Details
-
RetriableStargateBridge
-
-
Method Details
-
executeQuery
public io.smallrye.mutiny.Uni<io.stargate.bridge.proto.QueryOuterClass.Response> executeQuery(io.stargate.bridge.proto.QueryOuterClass.Query request) Description copied from interface:StargateBridgeExecutes a single CQL query.
- Specified by:
executeQueryin interfaceStargateBridge
-
executeQueryWithSchema
public io.smallrye.mutiny.Uni<io.stargate.bridge.proto.Schema.QueryWithSchemaResponse> executeQueryWithSchema(io.stargate.bridge.proto.Schema.QueryWithSchema request) Description copied from interface:StargateBridgeExecutes a single CQL query, assuming that a keyspace with the given version hash exists on the bridge side. This is an optimization when the client builds a query based on a keyspace's contents: with this operation, it can use its local version of the keyspace (therefore avoiding an extra network hop to fetch it), and execute the query optimistically. If the keyspace has changed, the bridge will reply with the new version, allowing the client to retry.
- Specified by:
executeQueryWithSchemain interfaceStargateBridge
-
executeBatch
public io.smallrye.mutiny.Uni<io.stargate.bridge.proto.QueryOuterClass.Response> executeBatch(io.stargate.bridge.proto.QueryOuterClass.Batch request) Description copied from interface:StargateBridgeExecutes a batch of CQL queries.
- Specified by:
executeBatchin interfaceStargateBridge
-
describeKeyspace
public io.smallrye.mutiny.Uni<io.stargate.bridge.proto.Schema.CqlKeyspaceDescribe> describeKeyspace(io.stargate.bridge.proto.Schema.DescribeKeyspaceQuery request) Description copied from interface:StargateBridgeSimilar to CQL "DESCRIBE KEYSPACE". Note that this operation does not perform any authorization check. The rationale is that, most of the time, client services use schema metadata to build another query that will be immediately executed with `ExecuteQuery` (which does check authorization). If that is not the case (e.g. you return the metadata directly to the client), you can check authorization explicitly with `AuthorizeSchemaReads`.
- Specified by:
describeKeyspacein interfaceStargateBridge
-
authorizeSchemaReads
public io.smallrye.mutiny.Uni<io.stargate.bridge.proto.Schema.AuthorizeSchemaReadsResponse> authorizeSchemaReads(io.stargate.bridge.proto.Schema.AuthorizeSchemaReadsRequest request) Description copied from interface:StargateBridgeChecks whether the client is authorized to describe one or more schema elements.
- Specified by:
authorizeSchemaReadsin interfaceStargateBridge
-
getSupportedFeatures
public io.smallrye.mutiny.Uni<io.stargate.bridge.proto.Schema.SupportedFeaturesResponse> getSupportedFeatures(io.stargate.bridge.proto.Schema.SupportedFeaturesRequest request) Description copied from interface:StargateBridgeChecks which features are supported by the persistence backend.
- Specified by:
getSupportedFeaturesin interfaceStargateBridge
-