1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 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. 14 * 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). 20 * 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. 25 * 26 ************************************************************************/ 27 28#ifndef __com_sun_star_embed_FileSystemStorage_idl__ 29#define __com_sun_star_embed_FileSystemStorage_idl__ 30 31#ifndef __com_sun_star_embed_BaseStorage_idl__ 32#include <com/sun/star/embed/BaseStorage.idl> 33#endif 34 35//============================================================================ 36 37 module com { module sun { module star { module embed { 38 39//============================================================================ 40/** This is a service that allows to get access to a file system folder using 41 storage hierarchy. 42 */ 43published service FileSystemStorage 44{ 45 // ----------------------------------------------------------------------- 46 /** This service describes the base functionality of storages. 47 48 <p> 49 Please see below the description of additional requirements for the 50 file system storage implementation. 51 </p> 52 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> 64 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> 78 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> 85 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> 92 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> 107 108 */ 109 service BaseStorage; 110}; 111 112//============================================================================ 113 114}; }; }; }; 115 116#endif 117 118