Warning
THIS MODULE DOES NOT HAVE STABLE PUBLIC API
This is a sort of “impedance matcher” that bridges the gap between something that expects to write strings to a stream and a stream that expects to receive bytes. Instead of using, for instance, an intermediate in-memory IO object, this decodes on the fly and has the same interface as a writable stream, so it can be initialized with the destination string stream and then passed to something (usually a dump-style function) that writes bytes.
Base class for “exporter” that write out the state of the session after all jobs have finished running, in a user-selected format. The intent is not to preserve everything that the session may hold but instead to present it to the user in the best format possible.
Each exporter can support a set of options that can alter the way it operates. Options can either be set boolean-like, or they can be assigned a value (a string). If an option contains a “=”, the part of the string on the right of the equal sign will be assigned as the option’s value; otherwise they operate in a boolean fashion.
It’s best to keep the list of exporter options under control to keep the user interface from becoming annoying.
Dump data to stream.
This method operates on data that was returned by get_session_data_subset(). It may not really process bytes or simple collections. Instead, for efficiency, anything is required.
As in get_session_data_subset() it’s essential to safely save arbitrarily large data sets (or actually, only where it matters the most, like in io_log).
Data is a text stream suitable for writing.
Compute a subset of session data.
The subset of the data that should be saved may depend on a particular saver class and options selected by the user.
Must return a collection that can be handled by dump(). Special care must be taken when processing io_log (and in the future, attachments) as those can be arbitrarily large.
plainbox.impl.depmgr – dependency solver
Enter search terms or a module, class or function name.