in cassandra-bridge/src/main/java/org/apache/cassandra/spark/utils/streaming/SSTableInputStream.java [535:565]
private int checkState() throws IOException
{
switch (state)
{
case Closed:
throw new IOException("Stream is closed");
case End:
return -1;
case Init:
// First request: start requesting bytes & schedule timeout
requestMore();
state = StreamState.NextBuffer;
case NextBuffer:
nextBuffer();
if (currentBuffer == END_MARKER)
{
return handleEndMarker();
}
else if (currentBuffer == FINISHED_MARKER)
{
return handleFinishedMarker();
}
else if (currentBuffer == ERROR_MARKER)
{
throw new IOException(throwable);
}
default:
// Do nothing
}
return 0;
}