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_FileSystemStorageFactory_idl__ 29#define __com_sun_star_embed_FileSystemStorageFactory_idl__ 30 31#ifndef __com_sun_star_lang_XSingleServiceFactory_idl__ 32#include <com/sun/star/lang/XSingleServiceFactory.idl> 33#endif 34 35 36//============================================================================ 37 38 module com { module sun { module star { module embed { 39 40//============================================================================ 41/** The <type>FileSystemStorageFactory</type> is a service that allows to 42 create a <type>FileSystemStorage</type> based on URL. The URL must point 43 to a folder. 44 */ 45published service FileSystemStorageFactory 46{ 47 // ---------------------------------------------------------------------- 48 /** A storage can be created through this interface. 49 50 <p> 51 In case 52 <method scope="com::sun::star::lang">XSingleServiceFactory::createInstance</method> 53 call is used the result storage will be open in readwrite mode based 54 on an arbitrary file system folder. 55 </p> 56 57 <p> 58 In case 59 <method scope="com::sun::star::lang">XSingleServiceFactory::createInstanceWithArguments</method> 60 call is used a sequence of the following parameters can be used: 61 </p> 62 63 <dl> 64 <dt>parameter 1</dt> 65 <dd> 66 specifies source of the object, it must be a string 67 containing URL. 68 </dd> 69 70 <dt>parameter 2</dt> 71 <dd> 72 specifies mode the storage should be open in, can take 73 values from <type>ElementModes</type> constant set. 74 </dd> 75 76 <dt>parameter 3</dt> 77 <dd> 78 allowes to provide 79 <type scope="com::sun::star::document">MediaDescryptor</type> 80 to the storage so some parts can be used for 81 initialization, it can be for example 82 <type scope="com::sun::star::task">XInteractionHandler</type> 83 implementation. 84 </dd> 85 </dl> 86 87 <p> 88 The parameters are optional, that means that sequence can be empty or 89 contain only first parameter, or first and second one. In case 90 no parameters are provided the call works the same way as 91 <member scope="com::sun::star::lang">XSingleServiceFactory::createInstance</member>. 92 In case only first parameter is provided, the storage is opened in 93 readonly mode. 94 </p> 95 96 <p> 97 The opened storages can support read access in addition to 98 specified one. 99 </p> 100 */ 101 interface ::com::sun::star::lang::XSingleServiceFactory; 102}; 103 104//============================================================================ 105 106}; }; }; }; 107 108#endif 109 110