tech.ytsaurus.client.TableReader Maven / Gradle / Ivy
The newest version!
package tech.ytsaurus.client;
import java.util.List;
import java.util.concurrent.CompletableFuture;
import NYT.NChunkClient.NProto.DataStatistics;
import tech.ytsaurus.core.tables.TableSchema;
/**
* Prefer to use {@link AsyncReader} instead of it. See {@link ApiServiceClient#readTableV2}.
* @param row type.
*/
public interface TableReader {
/**
* Returns the starting row index within the table.
*/
long getStartRowIndex();
/**
* Returns the total (approximate) number of rows readable.
*/
long getTotalRowCount();
/**
* Returns various data statistics.
*/
DataStatistics.TDataStatistics getDataStatistics();
/**
* Returns schema of the table.
*/
TableSchema getTableSchema();
TableSchema getCurrentReadSchema();
List getOmittedInaccessibleColumns();
CompletableFuture readyEvent();
boolean canRead();
List read() throws Exception;
CompletableFuture close();
void cancel();
}