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#ifndef __com_sun_star_resource_XStringResourceWithStorage_idl__ 28#define __com_sun_star_resource_XStringResourceWithStorage_idl__ 29 30#ifndef __com_sun_star_resource_XStringResourcePersistence_idl__ 31#include <com/sun/star/resource/XStringResourcePersistence.idl> 32#endif 33 34 35//============================================================================= 36 37module com { module sun { module star { module resource { 38 39//============================================================================= 40/** 41 Extends <type>XStringResourcePersistence</type> by methods to handle an 42 associated <type scope="com::sun::star::embed">XStorage</type> instance. 43 44 @see <type>XStringResourcePersistence</type>. 45*/ 46interface XStringResourceWithStorage: com::sun::star::resource::XStringResourcePersistence 47{ 48 /** 49 Stores all string table data to a storage and associates this storage 50 to this instance as if <member>setStorage</member> was called with 51 this storage. The modified state will be unmodified after the call. 52 53 This method can throw all exceptions thrown by the methods of 54 <type scope="com::sun::star::embed">XStorage</type> 55 */ 56 void storeAsStorage( [in] ::com::sun::star::embed::XStorage Storage ) 57 raises( com::sun::star::uno::Exception ); 58 59 60 /** 61 Associates a storage to the StringResourceWithStorage instance 62 which is used on subsequent calls of <member>store</member>. 63 64 @param Storage 65 the storage to be associated to the StringResourceManager 66 67 <p> 68 This call has to be used carefully as it removes the storage 69 previously connected to the StringResourceWithStorage. It may 70 force the implementation to reload data from the previous storage 71 before releasing it. The StringResourceManager will be modified 72 after calling this method as the data isn't stored to the new 73 storage yet. <member>storeAsStorage</member> should be prefered 74 as it directly stores the data to the new storage and afterwards 75 this storage is in sync with the resource data. 76 </p> 77 78 @throws <type scope="com::sun::star::lang">IllegalArgumentException</type> 79 if a null interface is passed as Storage 80 */ 81 void setStorage( [in] ::com::sun::star::embed::XStorage Storage ) 82 raises( ::com::sun::star::lang::IllegalArgumentException ); 83}; 84 85//============================================================================= 86 87}; }; }; }; 88 89#endif 90