<html> <head> <title>Interface XHierarchicalStorageAccess</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="XHierarchicalStorageAccess-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"><a href="#MethodsDetails" class="navisub">Methods' Details</a></td> <td class="navisub">Attributes' Summary</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 XHierarchicalStorageAccess</td> <td width="*"/></tr> </table> </td> </tr> <tr> <td/></tr> <tr> <td><dl> <dt><b>Description</b></dt> <dd>This interface allows hierarchical access to storage tree. </dd> <dd><p> Currently only streams can be opened using this interface. </p> <p> The hierarchical access can not be mixed with a normal access. Thus when in a storage a stream with a path "a/b/c" is accessed using hierarchical access, another stream "a/b/d" can also be opened with hierarchical access ( if it is still not opened ), but the substorage "a" can not be opened ( it is locked by hierarchical access ). </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="#openStreamElementByHierarchicalName">openStreamElementByHierarchicalName</a></td> <td class="imsum_right">allows to get access to a child stream of the storage, using hierarchical path. </td> </tr> <tr> <td class="imsum_left"><a href="#openEncryptedStreamElementByHierarchicalName">openEncryptedStreamElementByHierarchicalName</a></td> <td class="imsum_right">allows to get access to a child encrypted stream with password using hierarchical path. </td> </tr> <tr> <td class="imsum_left"><a href="#removeStreamElementByHierarchicalName">removeStreamElementByHierarchicalName</a></td> <td class="imsum_right">removes a stream specified by hierarchical name from a storage. </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="openStreamElementByHierarchicalName" class="membertitle">openStreamElementByHierarchicalName</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"><a href="XExtendedStorageStream.html">XExtendedStorageStream</a></td> </tr> <tr> <td valign="top"><b>openStreamElementByHierarchicalName</b>(</td> <td valign="top">[in] string</td> <td valign="bottom"> sStreamPath,</td> </tr> <tr> <td/><td valign="top">[in] long</td> <td valign="bottom"> nOpenMode )</td> </tr> <tr> <td valign="top" align="right">raises( </td> <td valign="top" colspan="2"><a href="InvalidStorageException.html">InvalidStorageException</a>,<br> ::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/IllegalArgumentException.html">IllegalArgumentException</a>,<br> ::com::sun::star::<a href="../packages/module-ix.html">packages</a>::<a href="../packages/WrongPasswordException.html">WrongPasswordException</a>,<br> ::com::sun::star::<a href="../io/module-ix.html">io</a>::<a href="../io/IOException.html">IOException</a>,<br> <a href="StorageWrappedTargetException.html">StorageWrappedTargetException</a> );</td> </tr> </table> <hr> <dl> <dt><b>Description</b></dt> <dd>allows to get access to a child stream of the storage, using hierarchical path. </dd> <dd><p> In case the stream is open in readonly mode the <method scope="com::sun::star::io">XStream::getOutputStream</method> method will return an empty reference. </p> </dd> <dt><b>Parameter sStreamPath</b></dt> <dd>the path to the substream that should be open </dd> <dt><b>Parameter nOpenMode</b></dt> <dd>a mode the stream should be open in, can be a combination of <a href="ElementModes.html">ElementModes</a> values </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::embed::InvalidStorageException this storage is in invalid state for any reason </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::lang::IllegalArgumentException one of provided arguments is illegal </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::packages::WrongPasswordException the provided password is wrong </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::io::IOException in case of io errors during stream opening </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::embed::StorageWrappedTargetException wraps other exceptions </dd> </dl> </td> </tr> </table> </td> </tr> <tr> <td class="imdetail"><a name="openEncryptedStreamElementByHierarchicalName" class="membertitle">openEncryptedStreamElementByHierarchicalName</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"><a href="XExtendedStorageStream.html">XExtendedStorageStream</a></td> </tr> <tr> <td valign="top"><b>openEncryptedStreamElementByHierarchicalName</b>(</td> <td valign="top">[in] string</td> <td valign="bottom"> sStreamName,</td> </tr> <tr> <td/><td valign="top">[in] long</td> <td valign="bottom"> nOpenMode,</td> </tr> <tr> <td/><td valign="top">[in] string</td> <td valign="bottom"> sPassword )</td> </tr> <tr> <td valign="top" align="right">raises( </td> <td valign="top" colspan="2"><a href="InvalidStorageException.html">InvalidStorageException</a>,<br> ::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/IllegalArgumentException.html">IllegalArgumentException</a>,<br> ::com::sun::star::<a href="../packages/module-ix.html">packages</a>::<a href="../packages/NoEncryptionException.html">NoEncryptionException</a>,<br> ::com::sun::star::<a href="../packages/module-ix.html">packages</a>::<a href="../packages/WrongPasswordException.html">WrongPasswordException</a>,<br> ::com::sun::star::<a href="../io/module-ix.html">io</a>::<a href="../io/IOException.html">IOException</a>,<br> <a href="StorageWrappedTargetException.html">StorageWrappedTargetException</a> );</td> </tr> </table> <hr> <dl> <dt><b>Description</b></dt> <dd>allows to get access to a child encrypted stream with password using hierarchical path. </dd> <dd><p> If storage does not allow any encryption this method will always throw ::com::sun::star::<a href="../packages/module-ix.html">packages</a>::<a href="../packages/NoEncryptionException.html">NoEncryptionException</a>. </p> <p> In case the stream is open in readonly mode the <method scope="com::sun::star::io">XStream::getOutputStream</method> method will return an empty reference. </p> </dd> <dt><b>Parameter sStreamPath</b></dt> <dd>the path to the substream that should be open </dd> <dt><b>Parameter nOpenMode</b></dt> <dd>a mode the stream should be open in, can be a combination of <a href="ElementModes.html">ElementModes</a> values </dd> <dt><b>Parameter sPassword</b></dt> <dd>this parameter allowes to specify a reading password for the stream, the password must be a correct one, otherwise an exception will be thrown </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::embed::InvalidStorageException this storage is in invalid state for any reason </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::lang::IllegalArgumentException one of provided arguments is illegal </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::packages::NoEncryptionException the stream is not encrypted </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::packages::WrongPasswordException the provided password is wrong </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::io::IOException in case of io errors during stream opening </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::embed::StorageWrappedTargetException wraps other exceptions </dd> </dl> </td> </tr> </table> </td> </tr> <tr> <td class="imdetail"><a name="removeStreamElementByHierarchicalName" class="membertitle">removeStreamElementByHierarchicalName</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>removeStreamElementByHierarchicalName</b>(</td> <td valign="top">[in] string</td> <td valign="bottom"> sElementPath )</td> </tr> <tr> <td valign="top" align="right">raises( </td> <td valign="top" colspan="2"><a href="InvalidStorageException.html">InvalidStorageException</a>,<br> ::com::sun::star::<a href="../lang/module-ix.html">lang</a>::<a href="../lang/IllegalArgumentException.html">IllegalArgumentException</a>,<br> ::com::sun::star::<a href="../container/module-ix.html">container</a>::<a href="../container/NoSuchElementException.html">NoSuchElementException</a>,<br> ::com::sun::star::<a href="../io/module-ix.html">io</a>::<a href="../io/IOException.html">IOException</a>,<br> <a href="StorageWrappedTargetException.html">StorageWrappedTargetException</a> );</td> </tr> </table> <hr> <dl> <dt><b>Description</b></dt> <dd>removes a stream specified by hierarchical name from a storage. </dd> <dt><b>Parameter sElementPath</b></dt> <dd>the path to the element to remove </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::embed::InvalidStorageException this storage is in invalid state for eny reason </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::lang::IllegalArgumentException an illegal argument is provided </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::container::NoSuchElementException there is no element with such name </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::io::IOException in case of io errors during removing </dd> <dt><b>Throws</b></dt> <dd>::com::sun::star::embed::StorageWrappedTargetException wraps other exceptions </dd> </dl> </td> </tr> </table> </td> </tr> </table> <a href="#_top_">Top of Page</a><hr size="3"><p class="copyright" align="center">Copyright © 2008 Sun Microsystems, Inc.</p> </div> <!-- id="adc-idlref" --> </body> </html>