LibreOffice
LibreOffice 5.0 SDK API Reference
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Exported Interfaces | List of all members
ObjectOutputStream Service Referencepublished

is a stream which allows writing the data of persistent objects. More...

import "ObjectOutputStream.idl";

Inheritance diagram for ObjectOutputStream:
XObjectOutputStream XActiveDataSource XConnectable XDataOutputStream XInterface XInterface XOutputStream XInterface

Exported Interfaces

interface com::sun::star::io::XObjectOutputStream
 allows to write the data to the stream. More...
 
interface com::sun::star::io::XActiveDataSource
 allows to set the underlying outputstream More...
 
interface com::sun::star::io::XConnectable
 allows to navigate via a chain of streams More...
 

Additional Inherited Members

- Public Member Functions inherited from XObjectOutputStream
void writeObject ([in] XPersistObject Object) raises ( IOException )
 writes an object to the stream. More...
 
- Public Member Functions inherited from XActiveDataSource
void setOutputStream ([in] com::sun::star::io::XOutputStream aStream)
 plugs the output stream. More...
 
com::sun::star::io::XOutputStream getOutputStream ()
 
- Public Member Functions inherited from XConnectable
void setPredecessor ([in] com::sun::star::io::XConnectable aPredecessor)
 sets the source of the data flow for this object. More...
 
com::sun::star::io::XConnectable getPredecessor ()
 
void setSuccessor ([in] com::sun::star::io::XConnectable aSuccessor)
 sets the sink of the data flow for this object. More...
 
com::sun::star::io::XConnectable getSuccessor ()
 

Detailed Description

is a stream which allows writing the data of persistent objects.

Implementations of this service must fulfill the specifications of the DataOutputStream service; furthermore, the stream needs to be chained to a XMarkableStream. Therefore, it also provides the XMarkableStream interface, but it delegates the calls to the chained object. The written objects are held until this instance is destroyed. The references to the objects are written as four-byte integers and begin at 1. Data format is written:

short   InfoLength
long    ObjectReference // 0 indicates no object
UTF     ServiceName     // length of 0 indicates this is only a reference
long    ObjectLength    // 0 if it is a reference or no object, otherwise the len of the object data
Object  ObjectData      // the data of the object
Note
  • -thread safe
  • -allow buffer size is 2 ^ 31 -1
  • -maximum object reference identifier is the number of objects.
  • -object reference identifier 0 indicates no object

Exported Interfaces

allows to set the underlying outputstream

allows to navigate via a chain of streams

allows to write the data to the stream.


The documentation for this service was generated from the following file: