net.i2p.client.streaming
Class SchedulerConnectedBulk
java.lang.Object
net.i2p.client.streaming.SchedulerImpl
net.i2p.client.streaming.SchedulerConnectedBulk
- All Implemented Interfaces:
- TaskScheduler
class SchedulerConnectedBulk
- extends SchedulerImpl
Scheduler used for after our SYN has been sent and ACKed but one
(or more) sides haven't closed the stream yet. In addition, the
stream must be using the BULK profile, rather than the INTERACTIVE
profile.
Entry conditions:
- Packets sent and ACKs received.
- At least one direction is not closed
Events:
- Packets received (which may or may not ACK the ones sent)
- Message flush (explicitly, through a full buffer, or stream closure)
- RESET received
- Message sending fails (error talking to the session)
- Message sending fails (too many resends)
Next states:
closing
- after both sending and receiving a CLOSE
closed
- after both sending and receiving ACKs on the CLOSE
dead
- after sending or receiving a RESET
Method Summary |
boolean |
accept(Connection con)
Determine whether this scheduler is fit to operate against the
given connection |
void |
eventOccurred(Connection con)
An event has occurred (timeout, message sent, or message received),
so schedule what to do next based on our current state. |
SchedulerConnectedBulk
public SchedulerConnectedBulk(I2PAppContext ctx)
accept
public boolean accept(Connection con)
- Description copied from interface:
TaskScheduler
- Determine whether this scheduler is fit to operate against the
given connection
eventOccurred
public void eventOccurred(Connection con)
- Description copied from interface:
TaskScheduler
- An event has occurred (timeout, message sent, or message received),
so schedule what to do next based on our current state.