@Generated(value="org.yamcs.protoc.ServiceGenerator",
date="2023-09-18T00:21:24.540569605Z")
public class TableApiClient
extends AbstractTableApi<Void>
Service for reading and writing to Yamcs tables and streams
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionfinal void
executeSql
(Void ctx, Table.ExecuteSqlRequest request, Observer<Table.ResultSet> observer) Execute SQLfinal void
executeStreamingSql
(Void ctx, Table.ExecuteSqlRequest request, Observer<Table.ResultSet> observer) Execute streaming SQLfinal void
getStream
(Void ctx, Table.GetStreamRequest request, Observer<Table.StreamInfo> observer) Get a streamfinal void
getTable
(Void ctx, Table.GetTableRequest request, Observer<Table.TableInfo> observer) Get a tablefinal void
getTableData
(Void ctx, Table.GetTableDataRequest request, Observer<Table.TableData> observer) Get table datafinal void
listStreams
(Void ctx, Table.ListStreamsRequest request, Observer<Table.ListStreamsResponse> observer) List streams Note that this will only list the fixed columns of the stream.final void
listTables
(Void ctx, Table.ListTablesRequest request, Observer<Table.ListTablesResponse> observer) List tables The response will only include fixed columns of the table.final void
readRows
(Void ctx, Table.ReadRowsRequest request, Observer<Table.Row> observer) Streams back the contents of all rows in key order The ``ColumnInfo`` message assigns an integer ``id`` for each column and the ``id`` is present in each cell belonging to that column (this is done in order to avoid sending the ``ColumnInfo`` with each ``Cell``).final void
rebuildHistogram
(Void ctx, Table.RebuildHistogramRequest request, Observer<Table.RebuildHistogramResponse> observer) Rebulds histograms - this is required after a table load.final void
subscribeStream
(Void ctx, Table.SubscribeStreamRequest request, Observer<Table.StreamData> observer) Receive stream updatesfinal void
subscribeStreamStatistics
(Void ctx, Table.SubscribeStreamStatisticsRequest request, Observer<StreamEvent> observer) Receive updates on stream statsfinal Observer<Table.WriteRowsRequest>
writeRows
(Void ctx, Observer<Table.WriteRowsResponse> observer) Imports a stream of rows The table has to exist in order to load data into it.Methods inherited from class org.yamcs.protobuf.AbstractTableApi
callMethod, callMethod, getDescriptorForType, getRequestPrototype, getResponsePrototype
-
Constructor Details
-
TableApiClient
-
-
Method Details
-
executeSql
public final void executeSql(Void ctx, Table.ExecuteSqlRequest request, Observer<Table.ResultSet> observer) Execute SQL
- Specified by:
executeSql
in classAbstractTableApi<Void>
-
executeStreamingSql
public final void executeStreamingSql(Void ctx, Table.ExecuteSqlRequest request, Observer<Table.ResultSet> observer) Execute streaming SQL
- Specified by:
executeStreamingSql
in classAbstractTableApi<Void>
-
listStreams
public final void listStreams(Void ctx, Table.ListStreamsRequest request, Observer<Table.ListStreamsResponse> observer) List streams Note that this will only list the fixed columns of the stream. Tuples may always have extra columns.
- Specified by:
listStreams
in classAbstractTableApi<Void>
-
subscribeStreamStatistics
public final void subscribeStreamStatistics(Void ctx, Table.SubscribeStreamStatisticsRequest request, Observer<StreamEvent> observer) Receive updates on stream stats
- Specified by:
subscribeStreamStatistics
in classAbstractTableApi<Void>
-
getStream
public final void getStream(Void ctx, Table.GetStreamRequest request, Observer<Table.StreamInfo> observer) Get a stream
- Specified by:
getStream
in classAbstractTableApi<Void>
-
subscribeStream
public final void subscribeStream(Void ctx, Table.SubscribeStreamRequest request, Observer<Table.StreamData> observer) Receive stream updates
- Specified by:
subscribeStream
in classAbstractTableApi<Void>
-
listTables
public final void listTables(Void ctx, Table.ListTablesRequest request, Observer<Table.ListTablesResponse> observer) List tables The response will only include fixed columns of the table. Tuples may always add extra value columns.
- Specified by:
listTables
in classAbstractTableApi<Void>
-
getTable
public final void getTable(Void ctx, Table.GetTableRequest request, Observer<Table.TableInfo> observer) Get a table
- Specified by:
getTable
in classAbstractTableApi<Void>
-
getTableData
public final void getTableData(Void ctx, Table.GetTableDataRequest request, Observer<Table.TableData> observer) Get table data
- Specified by:
getTableData
in classAbstractTableApi<Void>
-
readRows
Streams back the contents of all rows in key order The ``ColumnInfo`` message assigns an integer ``id`` for each column and the ``id`` is present in each cell belonging to that column (this is done in order to avoid sending the ``ColumnInfo`` with each ``Cell``). The column id starts from 0 and are incremented with each new column found. The ids are only valid during one single dump. The dumped data does not contain information on any table characteristics such as (primary) key, partitioning or other storage options.
- Specified by:
readRows
in classAbstractTableApi<Void>
-
writeRows
public final Observer<Table.WriteRowsRequest> writeRows(Void ctx, Observer<Table.WriteRowsResponse> observer) Imports a stream of rows The table has to exist in order to load data into it. As soon as the server detects an error with one of the written rows, it will forcefully close the connection and send back an early error message. The client should stop streaming and handle the error. Note that the erratic condition causes the connection to be closed even if the ``Keep-Alive`` request header was enabled. The error response is of type ``ExceptionMessage`` and contains a detail message of type ``WriteRowsExceptionDetail`` that provides the number of rows that were successfully written by the client. The client can use this information to link the error message to a row (i.e. the bad row is at position ``count + 1`` of the stream). One possible error could be that the table has defined a (primary) key and one of the loaded rows contains no value for one of the columns of the key. The table load will overwrite any data existing in the table with the same key as the imported row. The table load will not update the historgrams so a histogram rebuild is required after the load.
- Specified by:
writeRows
in classAbstractTableApi<Void>
-
rebuildHistogram
public final void rebuildHistogram(Void ctx, Table.RebuildHistogramRequest request, Observer<Table.RebuildHistogramResponse> observer) Rebulds histograms - this is required after a table load. Turrently the time interval passed in the request will be used to select the partitions which will be rebuild - any partition overlapping with the interval will be rebuilt. If the table is not partitioned by time, the histogram for the entire table will be rebuild.
- Specified by:
rebuildHistogram
in classAbstractTableApi<Void>
-