merged tag ooo/OOO330_m14
[LibreOffice.git] / offapi / com / sun / star / embed / FileSystemStorage.idl
blob2b4d7d4567512b1276a84597d4420e1c7daa0450
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org. If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
26 ************************************************************************/
28 #ifndef __com_sun_star_embed_FileSystemStorage_idl__
29 #define __com_sun_star_embed_FileSystemStorage_idl__
31 #ifndef __com_sun_star_embed_BaseStorage_idl__
32 #include <com/sun/star/embed/BaseStorage.idl>
33 #endif
35 //============================================================================
37 module com { module sun { module star { module embed {
39 //============================================================================
40 /** This is a service that allows to get access to a file system folder using
41 storage hierarchy.
43 published service FileSystemStorage
45 // -----------------------------------------------------------------------
46 /** This service describes the base functionality of storages.
48 <p>
49 Please see below the description of additional requirements for the
50 file system storage implementation.
51 </p>
53 <dl>
54 <dt>interface <type scope="com::sun::star::lang">XComponent</type>
55 </dt>
56 <dd>
57 <p>
58 A file system storage is created either by
59 <type>StorageFactory</type> or by <type>XStorage</type>
60 interface and is controlled by refcounting. In case
61 refcounting is decreased to zero the storage will be
62 disposed automatically.
63 </p>
65 <p>
66 In case a storage object is disposed the elements
67 ( substorages and substreams ) are not affected.
68 </p>
69 </dd>
70 <dt>interface <type>XStorage</type></dt>
71 <dd>
72 <dl>
73 <dt><method>XStorage::openStorageElement</method></dt>
74 <dd>
75 This method returns <type>FileSystemStorage</type>
76 service implementation.
77 </dd>
79 <dt><method>XStorage::copyLastCommitTo</method></dt>
80 <dd>
81 Since this service implementation supports no transaction
82 this method just creates a copy of the storage in it's
83 current state.
84 </dd>
86 <dt><method>XStorage::copyStorageElementLastCommitTo</method></dt>
87 <dd>
88 Since this service implementation supports no transaction
89 this method just creates a copy of the storage in it's
90 current state.
91 </dd>
93 <dt><method>XStorage::removeStorageElement</method></dt>
94 <dd>
95 If the element is opened and it is a stream element
96 the removing will fail. If the element is opened and
97 it is a storage element, all the contents that can be
98 removed will be removed.
99 </dd>
100 </dl>
101 </dd>
102 <dt>property URL</dt>
103 <dd>
104 This property is not optional for this service.
105 </dd>
106 </dl>
109 service BaseStorage;
112 //============================================================================
114 }; }; }; };
116 #endif