<html> <head> <title>Interface XEmbedPersist</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link rel="stylesheet" type="text/css" href="../../../../idl.css"> </head> <body> <div id="adc-idlref"> <a name="_top_"> </a><table class="navimain" border="0" cellpadding="3"> <tr> <td class="navimain"><a href="../module-ix.html" class="navimain">Overview</a></td> <td class="navimain"><a href="module-ix.html" class="navimain">Module</a></td> <td class="navimain"><a href="XEmbedPersist-xref.html" class="navimain">Use</a></td> <td class="navimainnone">Devguide</td> <td class="navimain"><a href="../../../../index-files/index-1.html" class="navimain">Index</a></td> </tr> </table> <table class="navisub" border="0" cellpadding="0"> <tr> <td class="navisub"><a href="#MethodsSummary" class="navisub">Methods' Summary</a></td> <td class="navisub">Attributes' Summary</td> <td class="navisub"><a href="#MethodsDetails" class="navisub">Methods' Details</a></td> <td class="navisub">Attributes' Details</td> </tr> </table> <hr> <table border="0" width="100%" cellpadding="5" cellspacing="3" class="title-table" style="margin-bottom:6pt;"> <tr> <td><p class="namechain"><a href="../../../../module-ix.html" class="namechain">::</a> <a href="../../../module-ix.html" class="namechain">com</a> :: <a href="../../module-ix.html" class="namechain">sun</a> :: <a href="../module-ix.html" class="namechain">star</a> :: <a href="module-ix.html" class="namechain">embed</a> :: </p> </td> </tr> <tr> <td class="title"><table class="title-table" width="99%"> <tr> <td width="25%" class="title2">unpublished </td> <td width="50%" class="title">interface XEmbedPersist</td> <td width="*"/></tr> </table> </td> </tr> <tr> <td><dl> <dt><b>Base Interfaces</b></dt> <dd><pre style="font-family:monospace;"><strong>XEmbedPersist</strong> ┗ <a href="XCommonEmbedPersist.html">XCommonEmbedPersist</a> </pre></dd> <dd><a name/><table border="1" width="100%" cellpadding="5" cellspacing="0" class="crosstitle"> <tr> <td class="imsum_left"><a href="XCommonEmbedPersist.html">XCommonEmbedPersist</a></td> <td class="imsum_right"><dl> <dt>(referenced interface's summary:)</dt> <dd>specifies common implementation for embedded objects and links persistence. </dd> </dl> </td> </tr> </table> </dd> </dl> </td> </tr> <tr> <td><dl> <dt><b>Usage Restrictions</b></dt> <dd><i>not published</i></dd> <dt><b>Description</b></dt> <dd>specifies an implementation for embedded object persistence. </dd> <dd><p> The idea is that any usable embedded object should be initialized with an entry in the parent storage that will be used as persistent representation. </p> </dd> </dl> </td> </tr> </table> <hr> <a name="MethodsSummary"/><table border="1" width="100%" cellpadding="5" cellspacing="0" class="subtitle"> <tr> <td class="subtitle" colspan="2">Methods' Summary</td> </tr> <tr> <td class="imsum_left"><a href="#setPersistentEntry">setPersistentEntry</a></td> <td class="imsum_right">provides object with a parent storage and a name for object's entry. </td> </tr> <tr> <td class="imsum_left"><a href="#storeToEntry">storeToEntry</a></td> <td class="imsum_right">lets the object store itself to an entry in destination storage, the own persistence entry is not changed. </td> </tr> <tr> <td class="imsum_left"><a href="#storeAsEntry">storeAsEntry</a></td> <td class="imsum_right">lets the object store itself to an entry in destination storage and prepare to use the new entry for own persistence. </td> </tr> <tr> <td class="imsum_left"><a href="#saveCompleted">saveCompleted</a></td> <td class="imsum_right">specifies whether the object should use an old storage or a new one after "save as" operation. </td> </tr> <tr> <td class="imsum_left"><a href="#hasEntry">hasEntry</a></td> <td class="imsum_right">allows to detect if the object has entry. </td> </tr> <tr> <td class="imsum_left"><a href="#getEntryName">getEntryName</a></td> <td class="imsum_right">allows to retrieve the current object entry name. </td> </tr> </table> <a name="MethodsDetails"/><table border="1" width="100%" cellpadding="5" cellspacing="0" class="subtitle"> <tr> <td class="subtitle">Methods' Details</td> </tr> <tr> <td class="imdetail"><a name="setPersistentEntry" class="membertitle">setPersistentEntry</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center"> <tr> <td><table class="table-in-method" border="0"> <tr> <td valign="top" colspan="3">void</td> </tr> <tr> <td valign="top"><b>setPersistentEntry</b>(</td> <td valign="top">[in] <a href="XStorage.html">XStorage</a></td> <td valign="bottom"> xStorage,</td> </tr> <tr> <td/><td valign="top">[in] string</td> <td valign="bottom"> sEntName,</td> </tr> <tr> <td/><td valign="top">[in] long</td> <td valign="bottom"> nEntryConnectionMode,</td> </tr> <tr> <td/><td valign="top">[in] sequence< ::com::sun::star::<a href="../beans/module-ix.html">beans</a>::<a href="../beans/PropertyValue.html">PropertyValue</a> ></td> <td valign="bottom"> aMediaArgs,</td> </tr> <tr> <td/><td valign="top">[in] sequence< ::com::sun::star::<a href="../beans/module-ix.html">beans</a>::<a href="../beans/PropertyValue.html">PropertyValue</a> ></td> <td valign="bottom"> aObjectArgs )</td> </tr> <tr> <td valign="top" align="right">raises( </td> <td valign="top" colspan="2">::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/IllegalArgumentException.html">IllegalArgumentException</a>,<br> <a href="WrongStateException.html">WrongStateException</a>,<br> ::com::sun::star::<a href="../io/module-ix.html">io</a>::<a href="../io/IOException.html">IOException</a>,<br> ::com::sun::star::<a href="../uno/module-ix.html">uno</a>::<a href="../uno/Exception.html">Exception</a> );</td> </tr> </table> <hr> <dl> <dt><b>Description</b></dt> <dd>provides object with a parent storage and a name for object's entry. </dd> <dd><p> An entry with the specified name should be created/opened inside provided storage. It can be a storage or a stream. For example, OOo API will refer to ole storages only by streams, but the object implementation will use storage based on this stream. </p> <p> Factory does this call to initialize the embedded object. The linked object can be initialized by factory in different way ( internally ). </p> <p> It is also possible to switch object persistent representation through this call. Actually this is the way, this call can be used by user ( since initialization is done by factory ). </p> </dd> <dt><b>Parameter xStorage</b></dt> <dd>a parent storage the entry should be created in </dd> <dt><b>Parameter sEntName</b></dt> <dd>a name for the entry </dd> <dt><b>Parameter nEntryConnectionMode</b></dt> <dd>a mode in which the object should be initialized from entry can take values from EntryInitModes constant set </dd> <dt><b>Parameter aMediaArgs</b></dt> <dd>optional parameters for the embedded document persistence initialization, see also ::com::sun::star::<a href="../document/module-ix.html">document</a>::<a href="../document/MediaDescriptor.html">MediaDescriptor</a> </dd> <dt><b>Parameter aObjectArgs</b></dt> <dd>optional parameters for the object persistence initialization, see also <a href="EmbeddedObjectDescriptor.html">EmbeddedObjectDescriptor</a> @thrown ::com::sun::star::lang::IllegalArgumentException one of arguments is illegal </dd> <dt><b>Throws</b></dt> <dd>com::sun::star::embed::WrongStateException the object is in wrong state </dd> <dt><b>Throws</b></dt> <dd>com::sun::star::io::IOException in case of io problems during opening\creation </dd> <dt><b>Throws</b></dt> <dd>com::sun::star::uno::Exception in case of other problems </dd> </dl> </td> </tr> </table> </td> </tr> <tr> <td class="imdetail"><a name="storeToEntry" class="membertitle">storeToEntry</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center"> <tr> <td><table class="table-in-method" border="0"> <tr> <td valign="top" colspan="3">void</td> </tr> <tr> <td valign="top"><b>storeToEntry</b>(</td> <td valign="top">[in] <a href="XStorage.html">XStorage</a></td> <td valign="bottom"> xStorage,</td> </tr> <tr> <td/><td valign="top">[in] string</td> <td valign="bottom"> sEntName,</td> </tr> <tr> <td/><td valign="top">[in] sequence< ::com::sun::star::<a href="../beans/module-ix.html">beans</a>::<a href="../beans/PropertyValue.html">PropertyValue</a> ></td> <td valign="bottom"> aMediaArgs,</td> </tr> <tr> <td/><td valign="top">[in] sequence< ::com::sun::star::<a href="../beans/module-ix.html">beans</a>::<a href="../beans/PropertyValue.html">PropertyValue</a> ></td> <td valign="bottom"> aObjectArgs )</td> </tr> <tr> <td valign="top" align="right">raises( </td> <td valign="top" colspan="2">::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/IllegalArgumentException.html">IllegalArgumentException</a>,<br> <a href="WrongStateException.html">WrongStateException</a>,<br> ::com::sun::star::<a href="../io/module-ix.html">io</a>::<a href="../io/IOException.html">IOException</a>,<br> ::com::sun::star::<a href="../uno/module-ix.html">uno</a>::<a href="../uno/Exception.html">Exception</a> );</td> </tr> </table> <hr> <dl> <dt><b>Description</b></dt> <dd>lets the object store itself to an entry in destination storage, the own persistence entry is not changed. </dd> <dt><b>Parameter xStorage</b></dt> <dd>a parent storage the entry should be created inside </dd> <dt><b>Parameter sEntName</b></dt> <dd>a name for the entry </dd> <dt><b>Parameter aMediaArgs</b></dt> <dd>optional parameters for document saving, see also ::com::sun::star::<a href="../document/module-ix.html">document</a>::<a href="../document/MediaDescriptor.html">MediaDescriptor</a> </dd> <dt><b>Parameter aObjectArgs</b></dt> <dd>optional parameters for the object saving, see also <a href="EmbeddedObjectDescriptor.html">EmbeddedObjectDescriptor</a> @thrown ::com::sun::star::lang::IllegalArgumentException one of arguments is illegal </dd> <dt><b>Throws</b></dt> <dd>com::sun::star::embed::WrongStateException the object is in wrong state </dd> <dt><b>Throws</b></dt> <dd>com::sun::star::io::IOException in case of io problems during storing </dd> <dt><b>Throws</b></dt> <dd>com::sun::star::uno::Exception in case of other problems </dd> </dl> </td> </tr> </table> </td> </tr> <tr> <td class="imdetail"><a name="storeAsEntry" class="membertitle">storeAsEntry</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center"> <tr> <td><table class="table-in-method" border="0"> <tr> <td valign="top" colspan="3">void</td> </tr> <tr> <td valign="top"><b>storeAsEntry</b>(</td> <td valign="top">[in] <a href="XStorage.html">XStorage</a></td> <td valign="bottom"> xStorage,</td> </tr> <tr> <td/><td valign="top">[in] string</td> <td valign="bottom"> sEntName,</td> </tr> <tr> <td/><td valign="top">[in] sequence< ::com::sun::star::<a href="../beans/module-ix.html">beans</a>::<a href="../beans/PropertyValue.html">PropertyValue</a> ></td> <td valign="bottom"> aMediaArgs,</td> </tr> <tr> <td/><td valign="top">[in] sequence< ::com::sun::star::<a href="../beans/module-ix.html">beans</a>::<a href="../beans/PropertyValue.html">PropertyValue</a> ></td> <td valign="bottom"> aObjectArgs )</td> </tr> <tr> <td valign="top" align="right">raises( </td> <td valign="top" colspan="2">::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/IllegalArgumentException.html">IllegalArgumentException</a>,<br> <a href="WrongStateException.html">WrongStateException</a>,<br> ::com::sun::star::<a href="../io/module-ix.html">io</a>::<a href="../io/IOException.html">IOException</a>,<br> ::com::sun::star::<a href="../uno/module-ix.html">uno</a>::<a href="../uno/Exception.html">Exception</a> );</td> </tr> </table> <hr> <dl> <dt><b>Description</b></dt> <dd>lets the object store itself to an entry in destination storage and prepare to use the new entry for own persistence. </dd> <dd><p> The object should be stored to the new entry, after that the entry should be remembered by the object. After the storing process is finished the <method>XEmbedPersist::saveCompleted</method> method can be used to specify whether the object should use the new entry or the old one. The object persistence can not be used until <method>XEmbedPersist::saveCompleted</method> is called. So this state can be treated as "HandsOff" state. <p> </dd> <dt><b>Parameter xStorage</b></dt> <dd>a parent storage the entry should be created in </dd> <dt><b>Parameter sEntName</b></dt> <dd>a name for the entry </dd> <dt><b>Parameter aMediaArgs</b></dt> <dd>optional parameters for document saving, see also ::com::sun::star::<a href="../document/module-ix.html">document</a>::<a href="../document/MediaDescriptor.html">MediaDescriptor</a> </dd> <dt><b>Parameter aObjectArgs</b></dt> <dd>optional parameters for the object saving, see also <a href="EmbeddedObjectDescriptor.html">EmbeddedObjectDescriptor</a> @thrown ::com::sun::star::lang::IllegalArgumentException one of arguments is illegal </dd> <dt><b>Throws</b></dt> <dd>com::sun::star::embed::WrongStateException the object is in wrong state </dd> <dt><b>Throws</b></dt> <dd>com::sun::star::io::IOException in case of io problems during storing </dd> <dt><b>Throws</b></dt> <dd>com::sun::star::uno::Exception in case of other problems </dd> </dl> </td> </tr> </table> </td> </tr> <tr> <td class="imdetail"><a name="saveCompleted" class="membertitle">saveCompleted</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center"> <tr> <td><table class="table-in-method" border="0"> <tr> <td valign="top" colspan="3">void</td> </tr> <tr> <td valign="top"><b>saveCompleted</b>(</td> <td valign="top">[in] boolean</td> <td valign="bottom"> bUseNew )</td> </tr> <tr> <td valign="top" align="right">raises( </td> <td valign="top" colspan="2"><a href="WrongStateException.html">WrongStateException</a>,<br> ::com::sun::star::<a href="../uno/module-ix.html">uno</a>::<a href="../uno/Exception.html">Exception</a> );</td> </tr> </table> <hr> <dl> <dt><b>Description</b></dt> <dd>specifies whether the object should use an old storage or a new one after "save as" operation. </dd> <dt><b>Parameter bUseNew</b></dt> <dd><b>true</b> the new storage should be used <b>false</b> the old one </dd> <dt><b>Throws</b></dt> <dd>com::sun::star::embed::WrongStateException the object is in wrong state </dd> <dt><b>Throws</b></dt> <dd>com::sun::star::uno::Exception in case of other problems </dd> </dl> </td> </tr> </table> </td> </tr> <tr> <td class="imdetail"><a name="hasEntry" class="membertitle">hasEntry</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center"> <tr> <td><table class="table-in-method" border="0"> <tr> <td valign="top" colspan="3">boolean</td> </tr> <tr> <td valign="top"><b>hasEntry</b>()</td> </tr> <tr> <td valign="top" align="right">raises( </td> <td valign="top" colspan="2"><a href="WrongStateException.html">WrongStateException</a> );</td> </tr> </table> <hr> <dl> <dt><b>Description</b></dt> <dd>allows to detect if the object has entry. </dd> <dt><b>Returns</b></dt> <dd><b>true</b> if the object has own entry set <b>false</b> otherwise </dd> </dl> </td> </tr> </table> </td> </tr> <tr> <td class="imdetail"><a name="getEntryName" class="membertitle">getEntryName</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center"> <tr> <td><table class="table-in-method" border="0"> <tr> <td valign="top" colspan="3">string</td> </tr> <tr> <td valign="top"><b>getEntryName</b>()</td> </tr> <tr> <td valign="top" align="right">raises( </td> <td valign="top" colspan="2"><a href="WrongStateException.html">WrongStateException</a> );</td> </tr> </table> <hr> <dl> <dt><b>Description</b></dt> <dd>allows to retrieve the current object entry name. </dd> <dt><b>Returns</b></dt> <dd>the object entry name if any </dd> <dt><b>Throws</b></dt> <dd>com::sun::star::embed::WrongStateException the object is in wrong state ( has no entry ) </dd> </dl> </td> </tr> </table> </td> </tr> </table> <a href="#_top_">Top of Page</a><hr size="3"><p class="copyright" align="center">Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.</p> </div> <!-- id="adc-idlref" --> </body> </html>