twisted.spread.utilView Source (View In Hierarchy)
Implements interfaces: twisted.internet.interfaces.IConsumer
Reads a file in chunks and sends the chunks as they come.
|Method||__init__||Create a pager with a Reference to a remote collector and an optional callable to invoke upon completion.|
|Method||registerProducer||Register to receive data from a producer.|
|Method||unregisterProducer||Stop consuming data from a producer, without disconnecting.|
|Method||write||The producer will write data by calling this method.|
|Method||sendNextPage||Get the first chunk read and send it to collector.|
Inherited from Pager:
|Method||stillPaging||(internal) Method called by Broker.|
|Method||nextPage||Override this to return an object to be sent to my collector.|
|Method||stopPaging||Call this when you're done paging.|
Create a pager with a Reference to a remote collector and an optional callable to invoke upon completion.
Register to receive data from a producer.
This sets self to be a consumer for a producer. When this object runs out of data (as when a send(2) call on a socket succeeds in moving the last data from a userspace buffer into a kernelspace buffer), it will ask the producer to resumeProducing().
resumeProducing will be called once each time data
pauseProducing will be called whenever the write
buffer fills up and
resumeProducing will only be called when
|Raises||RuntimeError||If a producer is already registered.|
Stop consuming data from a producer, without disconnecting.
The producer will write data by calling this method.
The implementation must be non-blocking and perform whatever buffering
is necessary. If the producer has provided enough data for now and it is a
the consumer may call its