Package com.yandex.ydb.table.rpc.grpc
Class GrpcTableRpc
- java.lang.Object
-
- com.yandex.ydb.table.rpc.grpc.GrpcTableRpc
-
- All Implemented Interfaces:
Rpc,TableRpc,AutoCloseable
@ParametersAreNonnullByDefault public final class GrpcTableRpc extends Object implements TableRpc
- Author:
- Sergey Polovko
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description CompletableFuture<Result<com.yandex.ydb.table.YdbTable.AlterTableResponse>>alterTable(com.yandex.ydb.table.YdbTable.AlterTableRequest request, long deadlineAfter)Modifies schema of given table.CompletableFuture<Result<com.yandex.ydb.table.YdbTable.BeginTransactionResponse>>beginTransaction(com.yandex.ydb.table.YdbTable.BeginTransactionRequest request, long deadlineAfter)Begins new transaction.CompletableFuture<Result<com.yandex.ydb.table.YdbTable.BulkUpsertResponse>>bulkUpsert(com.yandex.ydb.table.YdbTable.BulkUpsertRequest request, long deadlineAfter)Execute bulk upsertvoidclose()CompletableFuture<Result<com.yandex.ydb.table.YdbTable.CommitTransactionResponse>>commitTransaction(com.yandex.ydb.table.YdbTable.CommitTransactionRequest request, long deadlineAfter)Commits specified active transaction.CompletableFuture<Result<com.yandex.ydb.table.YdbTable.CopyTableResponse>>copyTable(com.yandex.ydb.table.YdbTable.CopyTableRequest request, long deadlineAfter)Creates copy of given table.CompletableFuture<Result<com.yandex.ydb.table.YdbTable.CreateSessionResponse>>createSession(com.yandex.ydb.table.YdbTable.CreateSessionRequest request, long deadlineAfter)Create new session.CompletableFuture<Result<com.yandex.ydb.table.YdbTable.CreateTableResponse>>createTable(com.yandex.ydb.table.YdbTable.CreateTableRequest request, long deadlineAfter)Creates new table.CompletableFuture<Result<com.yandex.ydb.table.YdbTable.DeleteSessionResponse>>deleteSession(com.yandex.ydb.table.YdbTable.DeleteSessionRequest request, long deadlineAfter)Ends a session, releasing server resources associated with it.CompletableFuture<Result<com.yandex.ydb.table.YdbTable.DescribeTableResponse>>describeTable(com.yandex.ydb.table.YdbTable.DescribeTableRequest request, long deadlineAfter)Returns information about given table (metadata).CompletableFuture<Result<com.yandex.ydb.table.YdbTable.DropTableResponse>>dropTable(com.yandex.ydb.table.YdbTable.DropTableRequest request, long deadlineAfter)Drop table.CompletableFuture<Result<com.yandex.ydb.table.YdbTable.ExecuteDataQueryResponse>>executeDataQuery(com.yandex.ydb.table.YdbTable.ExecuteDataQueryRequest request, long deadlineAfter)Executes data query.CompletableFuture<Result<com.yandex.ydb.table.YdbTable.ExecuteSchemeQueryResponse>>executeSchemeQuery(com.yandex.ydb.table.YdbTable.ExecuteSchemeQueryRequest request, long deadlineAfter)Executes scheme query.CompletableFuture<Result<com.yandex.ydb.table.YdbTable.ExplainDataQueryResponse>>explainDataQuery(com.yandex.ydb.table.YdbTable.ExplainDataQueryRequest request, long deadlineAfter)Explains data query.StringgetDatabase()OperationTraygetOperationTray()CompletableFuture<Result<com.yandex.ydb.table.YdbTable.KeepAliveResponse>>keepAlive(com.yandex.ydb.table.YdbTable.KeepAliveRequest request, long deadlineAfter)Idle sessions can be kept alive by calling KeepAlive periodically.static GrpcTableRpcownTransport(RpcTransport transport)CompletableFuture<Result<com.yandex.ydb.table.YdbTable.PrepareDataQueryResponse>>prepareDataQuery(com.yandex.ydb.table.YdbTable.PrepareDataQueryRequest request, long deadlineAfter)Prepares data query, returns query id.CompletableFuture<Result<com.yandex.ydb.table.YdbTable.RollbackTransactionResponse>>rollbackTransaction(com.yandex.ydb.table.YdbTable.RollbackTransactionRequest request, long deadlineAfter)Performs a rollback of the specified active transaction.StreamControlstreamExecuteScanQuery(com.yandex.ydb.table.YdbTable.ExecuteScanQueryRequest request, StreamObserver<com.yandex.ydb.table.YdbTable.ExecuteScanQueryPartialResponse> observer, long deadlineAfter)Streaming execute scan query.StreamControlstreamReadTable(com.yandex.ydb.table.YdbTable.ReadTableRequest request, StreamObserver<com.yandex.ydb.table.YdbTable.ReadTableResponse> observer, long deadlineAfter)Streaming read table.static GrpcTableRpcuseTransport(RpcTransport transport)
-
-
-
Method Detail
-
useTransport
@Nullable public static GrpcTableRpc useTransport(@WillNotClose RpcTransport transport)
-
ownTransport
@Nullable public static GrpcTableRpc ownTransport(@WillClose RpcTransport transport)
-
createSession
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.CreateSessionResponse>> createSession(com.yandex.ydb.table.YdbTable.CreateSessionRequest request, long deadlineAfter)
Description copied from interface:TableRpcCreate new session. Implicit session creation is forbidden, so user must create new session before execute any query, otherwise BAD_SESSION status wil be returned. Simultaneous execution of requests are forbidden. Sessions are volatile, can be invalidated by server, e.g. in case of fatal errors. All requests with this session will fail with BAD_SESSION status. So, client must be able to handle BAD_SESSION status.- Specified by:
createSessionin interfaceTableRpc
-
deleteSession
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.DeleteSessionResponse>> deleteSession(com.yandex.ydb.table.YdbTable.DeleteSessionRequest request, long deadlineAfter)
Description copied from interface:TableRpcEnds a session, releasing server resources associated with it.- Specified by:
deleteSessionin interfaceTableRpc
-
keepAlive
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.KeepAliveResponse>> keepAlive(com.yandex.ydb.table.YdbTable.KeepAliveRequest request, long deadlineAfter)
Description copied from interface:TableRpcIdle sessions can be kept alive by calling KeepAlive periodically.
-
createTable
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.CreateTableResponse>> createTable(com.yandex.ydb.table.YdbTable.CreateTableRequest request, long deadlineAfter)
Description copied from interface:TableRpcCreates new table.- Specified by:
createTablein interfaceTableRpc
-
dropTable
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.DropTableResponse>> dropTable(com.yandex.ydb.table.YdbTable.DropTableRequest request, long deadlineAfter)
Description copied from interface:TableRpcDrop table.
-
alterTable
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.AlterTableResponse>> alterTable(com.yandex.ydb.table.YdbTable.AlterTableRequest request, long deadlineAfter)
Description copied from interface:TableRpcModifies schema of given table.- Specified by:
alterTablein interfaceTableRpc
-
copyTable
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.CopyTableResponse>> copyTable(com.yandex.ydb.table.YdbTable.CopyTableRequest request, long deadlineAfter)
Description copied from interface:TableRpcCreates copy of given table.
-
describeTable
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.DescribeTableResponse>> describeTable(com.yandex.ydb.table.YdbTable.DescribeTableRequest request, long deadlineAfter)
Description copied from interface:TableRpcReturns information about given table (metadata).- Specified by:
describeTablein interfaceTableRpc
-
explainDataQuery
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.ExplainDataQueryResponse>> explainDataQuery(com.yandex.ydb.table.YdbTable.ExplainDataQueryRequest request, long deadlineAfter)
Description copied from interface:TableRpcExplains data query. SessionId of previously created session must be provided.- Specified by:
explainDataQueryin interfaceTableRpc
-
prepareDataQuery
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.PrepareDataQueryResponse>> prepareDataQuery(com.yandex.ydb.table.YdbTable.PrepareDataQueryRequest request, long deadlineAfter)
Description copied from interface:TableRpcPrepares data query, returns query id. SessionId of previously created session must be provided.- Specified by:
prepareDataQueryin interfaceTableRpc
-
executeDataQuery
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.ExecuteDataQueryResponse>> executeDataQuery(com.yandex.ydb.table.YdbTable.ExecuteDataQueryRequest request, long deadlineAfter)
Description copied from interface:TableRpcExecutes data query. SessionId of previously created session must be provided.- Specified by:
executeDataQueryin interfaceTableRpc
-
executeSchemeQuery
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.ExecuteSchemeQueryResponse>> executeSchemeQuery(com.yandex.ydb.table.YdbTable.ExecuteSchemeQueryRequest request, long deadlineAfter)
Description copied from interface:TableRpcExecutes scheme query. SessionId of previously created session must be provided.- Specified by:
executeSchemeQueryin interfaceTableRpc
-
beginTransaction
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.BeginTransactionResponse>> beginTransaction(com.yandex.ydb.table.YdbTable.BeginTransactionRequest request, long deadlineAfter)
Description copied from interface:TableRpcBegins new transaction.- Specified by:
beginTransactionin interfaceTableRpc
-
commitTransaction
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.CommitTransactionResponse>> commitTransaction(com.yandex.ydb.table.YdbTable.CommitTransactionRequest request, long deadlineAfter)
Description copied from interface:TableRpcCommits specified active transaction.- Specified by:
commitTransactionin interfaceTableRpc
-
rollbackTransaction
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.RollbackTransactionResponse>> rollbackTransaction(com.yandex.ydb.table.YdbTable.RollbackTransactionRequest request, long deadlineAfter)
Description copied from interface:TableRpcPerforms a rollback of the specified active transaction.- Specified by:
rollbackTransactionin interfaceTableRpc
-
streamReadTable
public StreamControl streamReadTable(com.yandex.ydb.table.YdbTable.ReadTableRequest request, StreamObserver<com.yandex.ydb.table.YdbTable.ReadTableResponse> observer, long deadlineAfter)
Description copied from interface:TableRpcStreaming read table.- Specified by:
streamReadTablein interfaceTableRpc
-
streamExecuteScanQuery
public StreamControl streamExecuteScanQuery(com.yandex.ydb.table.YdbTable.ExecuteScanQueryRequest request, StreamObserver<com.yandex.ydb.table.YdbTable.ExecuteScanQueryPartialResponse> observer, long deadlineAfter)
Description copied from interface:TableRpcStreaming execute scan query.- Specified by:
streamExecuteScanQueryin interfaceTableRpc
-
bulkUpsert
public CompletableFuture<Result<com.yandex.ydb.table.YdbTable.BulkUpsertResponse>> bulkUpsert(com.yandex.ydb.table.YdbTable.BulkUpsertRequest request, long deadlineAfter)
Description copied from interface:TableRpcExecute bulk upsert- Specified by:
bulkUpsertin interfaceTableRpc
-
getDatabase
public String getDatabase()
- Specified by:
getDatabasein interfaceRpc
-
getOperationTray
public OperationTray getOperationTray()
- Specified by:
getOperationTrayin interfaceRpc
-
close
public void close()
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceRpc
-
-