twisted.internet._producer_helpersView Source (View In Hierarchy)
Implements interfaces: twisted.internet.interfaces.IPushProducer
An adapter that converts a non-streaming to a streaming producer.
Because of limitations of the producer API, this adapter requires the
cooperation of the consumer. When the consumer's
registerProducer is called with a non-streaming producer, it
must wrap it with
and then call
startStreaming on the resulting object. When the
unregisterProducer is called, it must call
stopStreaming on the
If the underlying producer throws an exception from
resumeProducing, the producer will be unregistered from the
|Method||startStreaming||This should be called by the consumer when the producer is registered.|
|Method||stopStreaming||This should be called by the consumer when the producer is unregistered.|
|Instance Variable||_producer||the underling non-streaming producer.|
|Instance Variable||_consumer||the consumer with which the underlying producer was registered.|
|Instance Variable||_coopTask||the result of calling
|Method||_pull||A generator that calls
cooperate, the task driving the streaming producer.
A generator that calls
resumeProducing on the underlying
resumeProducing throws an exception, the producer is
unregistered, which should result in streaming stopping.
This should be called by the consumer when the producer is registered.
Start streaming data to the consumer.
This should be called by the consumer when the producer is unregistered.
Stop streaming data to the consumer.