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_ucb_XRemoteContentProviderAcceptor_idl__ 28#define __com_sun_star_ucb_XRemoteContentProviderAcceptor_idl__ 29 30#ifndef __com_sun_star_lang_XMultiServiceFactory_idl__ 31#include <com/sun/star/lang/XMultiServiceFactory.idl> 32#endif 33 34#ifndef __com_sun_star_uno_XInterface_idl__ 35#include <com/sun/star/uno/XInterface.idl> 36#endif 37 38 39//============================================================================= 40 41module com { module sun { module star { module ucb { 42 43 published interface XRemoteContentProviderDoneListener; 44 45//============================================================================= 46/** Accept remote content providers that want to make themselves known to the 47 local process. 48 49 @version 1.0 50 @author Stephan Bergmann 51*/ 52published interface XRemoteContentProviderAcceptor: com::sun::star::uno::XInterface 53{ 54 //------------------------------------------------------------------------- 55 /** Add a remote content provider. 56 57 @param Identifier An arbitrary identifier uniquely identifying the 58 remote content provider. 59 60 @param Factory A factory through which the remote content provider's 61 <type>UniversalContentBroker</type> service can be instantiated. 62 63 @param Templates A sequence of URL templates the remote content 64 provider is willing to handle. 65 66 @param DoneListener If not null, the implementation of this interface 67 can---through this callback---tell the calling side that the 68 implementation no longer needs the remote content provider. (And the 69 calling side should call 70 <member>XRemoteContentProviderAcceptor::removeRemoteContentProvider</member> 71 then.) 72 73 To enable connection control, it is recommended that this argument 74 also implements the interface 75 <type>XRemoteContentProviderConnectionControl</type>. 76 77 @return true if the remote content provider has successfully been 78 added. 79 */ 80 boolean 81 addRemoteContentProvider([in] string Identifier, 82 [in] com::sun::star::lang::XMultiServiceFactory 83 Factory, 84 [in] sequence< string > Templates, 85 [in] XRemoteContentProviderDoneListener 86 DoneListener); 87 88 //------------------------------------------------------------------------- 89 /** Remove a remote content provider. 90 91 @param Identifier An arbitrary identifier uniquely identifying the 92 remote content provider. 93 94 @return true if the remote content provider has successfully been 95 removed. 96 */ 97 boolean 98 removeRemoteContentProvider([in] string Identifier); 99}; 100 101//============================================================================= 102 103}; }; }; }; 104 105#endif 106