public final class TestProvidingInputStream extends AbstractCommandStream
InputStream
that, when read, provides test class names out of a queue.
The Stream provides only one test at a time, but only after provideNewTest()
has been invoked.
After providing each test class name, followed by a newline character, a flush is performed on the
FlushReceiver
provided by the FlushReceiverProvider
that can be set using
AbstractForkInputStream.setFlushReceiverProvider(FlushReceiverProvider)
.
The instance is used only in reusable forks in ForkStarter
by one Thread.Constructor and Description |
---|
TestProvidingInputStream(Queue<String> testClassNames)
C'tor
|
Modifier and Type | Method and Description |
---|---|
protected void |
beforeNextCommand()
Possibly waiting for next command (see
AbstractCommandStream.nextCommand() ) unless the stream is atomically
closed (see AbstractCommandStream.isClosed() returns true ) before this method has returned. |
protected boolean |
canContinue()
Unnecessarily opposite to
AbstractCommandStream.isClosed() however may respect
last command and AbstractCommandStream.isClosed() . |
void |
close() |
protected boolean |
isClosed() |
protected Command |
nextCommand() |
void |
noop() |
void |
provideNewTest()
Signal that a new test is to be provided.
|
void |
shutdown(Shutdown shutdownType) |
void |
skipSinceNextTest()
Sends an event to a fork jvm in order to skip tests.
|
getLastCommand, invalidateInternalBuffer, read
setFlushReceiverProvider, tryFlush
available, mark, markSupported, read, read, reset, skip
public void skipSinceNextTest()
NotifiableTestStream
public void shutdown(Shutdown shutdownType)
public void noop()
protected Command nextCommand()
nextCommand
in class AbstractCommandStream
protected void beforeNextCommand() throws IOException
AbstractCommandStream
AbstractCommandStream.nextCommand()
) unless the stream is atomically
closed (see AbstractCommandStream.isClosed()
returns true
) before this method has returned.beforeNextCommand
in class AbstractCommandStream
IOException
protected boolean isClosed()
isClosed
in class AbstractCommandStream
protected boolean canContinue()
AbstractCommandStream
AbstractCommandStream.isClosed()
however may respect
last command
and AbstractCommandStream.isClosed()
.canContinue
in class AbstractCommandStream
public void provideNewTest()
public void close()
close
in interface Closeable
close
in interface AutoCloseable
close
in class InputStream
Copyright © 2004–2015 The Apache Software Foundation. All rights reserved.