## 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

Field Summary

Fields inherited from class net.i2p.client.streaming.SchedulerImpl
`_context`

Constructor Summary
`SchedulerConnectedBulk(I2PAppContext ctx)`

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.

Methods inherited from class net.i2p.client.streaming.SchedulerImpl
`reschedule`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SchedulerConnectedBulk

    public SchedulerConnectedBulk(I2PAppContext ctx)

Method Detail

### 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.