in cassandra-analytics-core/src/main/java/org/apache/cassandra/spark/data/SidecarProvisionedSSTable.java [176:231]
private SSTableSource<SidecarProvisionedSSTable> source(String componentName, FileType fileType, long size)
{
SidecarProvisionedSSTable thisSSTable = this;
return new SSTableSource<SidecarProvisionedSSTable>()
{
@Override
public void request(long start, long end, StreamConsumer consumer)
{
sidecar.streamSSTableComponent(instance,
keyspace,
table,
snapshotName,
componentName,
HttpRange.of(start, end),
new SidecarStreamConsumerAdapter(consumer));
}
@Override
public long maxBufferSize()
{
return sidecarClientConfig.maxBufferSize(fileType);
}
@Override
public long chunkBufferSize()
{
return sidecarClientConfig.chunkBufferSize(fileType);
}
@Nullable
@Override
public Duration timeout()
{
int timeout = sidecarClientConfig.timeoutSeconds();
return timeout > 0 ? Duration.ofSeconds(timeout) : null;
}
@Override
public SidecarProvisionedSSTable sstable()
{
return thisSSTable;
}
@Override
public FileType fileType()
{
return fileType;
}
@Override
public long size()
{
return size;
}
};
}