The Free and Open Productivity Suite
Apache OpenOffice 4.1.5 released

Developer's Guide



Tips 'n' Tricks


:: com :: sun :: star :: io ::

unpublished interface XAsyncOutputMonitor
Usage Restrictions
not published
An optional companion interface to XOutputStream that supports scenarios where XOutputStream::writeBytes operates asynchronously and does not necessarily report any errors.

A typical scenario where this interface is useful is when an XOutputStream is used to write to a file via NFS. Normally, any calls to XOutputStream::writeBytes will execute asynchronously then, in that any potential errors might only be reported by later calls to XOutputStream::writeBytes or XOutputStream::closeOutput. If such an output stream shall not be closed immediately after one or more calls to XOutputStream::writeBytes, but the client wants to know as soon as possible whether writing was successful, then XAsyncOutputMonitor::waitForCompletion should be called after the series of calls to XOutputStream::writeBytes.

OOo 2.0

Methods' Summary
waitForCompletion waits for the completion of any previous calls to XOutputStream::writeBytes, and reports potentially pending errors.  
Methods' Details
raises( IOException );

waits for the completion of any previous calls to XOutputStream::writeBytes, and reports potentially pending errors.

Calling this method is potentially expensive (even if the associated XOutputStream represents a local file not accessed via NFS, for example). This method has a similar description to XOutputStream::flush. However, where the semantics of flush are rather vague, waitForCompletion has very specific semantics—it just blocks long enough so that any errors encountered during previous calls to XOutputStream::writeBytes can reliably be reported. It specificially does not guarantee that any data have savely been stored on a stable physical medium, like a hard disk (and it is completely unspecified whether flush should give this guarantee).

com::sun::star::io::IOException if any previous call to XOutputStream::writeBytes encountered such an error, but has not yet reported it (in cases where writeBytes operates asynchronously).
Top of Page

Apache Software Foundation

Copyright & License | Privacy | Contact Us | Donate | Thanks

Apache and the Apache feather logo are trademarks of The Apache Software Foundation. OpenOffice, and the seagull logo are registered trademarks of The Apache Software Foundation. Other names appearing on the site may be trademarks of their respective owners.