b402a77790
2008/03/31 16:17:31 rt 1.12.92.1: #i87441# Change license header to LPGL v3.
110 lines
3.9 KiB
Text
110 lines
3.9 KiB
Text
/*************************************************************************
|
|
*
|
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
*
|
|
* Copyright 2008 by Sun Microsystems, Inc.
|
|
*
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
|
*
|
|
* $RCSfile: XBridgeSupplier.idl,v $
|
|
* $Revision: 1.13 $
|
|
*
|
|
* This file is part of OpenOffice.org.
|
|
*
|
|
* OpenOffice.org is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU Lesser General Public License version 3
|
|
* only, as published by the Free Software Foundation.
|
|
*
|
|
* OpenOffice.org is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU Lesser General Public License version 3 for more details
|
|
* (a copy is included in the LICENSE file that accompanied this code).
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public License
|
|
* version 3 along with OpenOffice.org. If not, see
|
|
* <http://www.openoffice.org/license.html>
|
|
* for a copy of the LGPLv3 License.
|
|
*
|
|
************************************************************************/
|
|
#ifndef __com_sun_star_bridge_XBridgeSupplier_idl__
|
|
#define __com_sun_star_bridge_XBridgeSupplier_idl__
|
|
|
|
#ifndef __com_sun_star_uno_XInterface_idl__
|
|
#include <com/sun/star/uno/XInterface.idl>
|
|
#endif
|
|
|
|
#ifndef __com_sun_star_uno_Uik_idl__
|
|
#include <com/sun/star/uno/Uik.idl>
|
|
#endif
|
|
|
|
#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
|
|
#include <com/sun/star/lang/IllegalArgumentException.idl>
|
|
#endif
|
|
|
|
|
|
//=============================================================================
|
|
|
|
module com { module sun { module star { module bridge {
|
|
|
|
//=============================================================================
|
|
|
|
|
|
/** defines the interface for creating bridges to other object models.
|
|
|
|
<p>Because bridges sometimes can not be generated in an address space,
|
|
the implementation needs to check the address space of the caller by
|
|
comparing the machine and process ID against its own. These IDs are
|
|
provided by the UNO runtime. </p>
|
|
|
|
<p>All objects, whether they are part of the UNO object model or not,
|
|
are carried in an <atom>any</atom>. The representation of this object
|
|
is heavily model-dependent and has to be specified in the following list: </p>
|
|
|
|
<dl>
|
|
<dt>UNO: </dt>
|
|
<dd>The any carries normal UNO types, which can be any base type,
|
|
struct, sequence, enum, or interface. </dd>
|
|
|
|
<dt>OLE: </dt>
|
|
<dd>The any carries an <atom>unsigned long</atom> (on 32-bit systems)
|
|
or an <atom>unsigned hyper</atom> (on 64-bit systems), which is
|
|
interpreted as a variant pointer. The any does not control the
|
|
lifetime of the represented variant. That implies that the caller
|
|
has the responsibility of freeing the OLE resources represented
|
|
by the any value. </dd>
|
|
|
|
<dt>JAVA: </dt>
|
|
<dd>not yet specified. </dd>
|
|
|
|
<dt>CORBA: </dt>
|
|
<dd>not yet specified. </dd>
|
|
</dl>
|
|
|
|
<p>Any implementation can supply its own bridges to other object
|
|
models by implementing this interface and returning the bridge
|
|
when the method is called with itself as the first parameter. </p>
|
|
|
|
@see com::sun::star::bridge::OleBridgeSupplier
|
|
@deprecated
|
|
*/
|
|
published interface XBridgeSupplier: com::sun::star::uno::XInterface
|
|
{
|
|
|
|
/** creates a bridge to provide an object of one object model with another.
|
|
*/
|
|
any createBridge( [in] any modelDepObject,
|
|
[in] com::sun::star::uno::Uik MachineId,
|
|
[in] long ProcessId,
|
|
[in] short sourceModelType,
|
|
[in] short destModelType )
|
|
raises( com::sun::star::lang::IllegalArgumentException );
|
|
|
|
};
|
|
|
|
}; }; }; };
|
|
|
|
/*=============================================================================
|
|
|
|
=============================================================================*/
|
|
#endif
|