xref: /aoo41x/main/udkapi/com/sun/star/bridge/Bridge.idl (revision 408a4873)
1*408a4873SAndrew Rist/**************************************************************
2cdf0e10cSrcweir *
3*408a4873SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4*408a4873SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5*408a4873SAndrew Rist * distributed with this work for additional information
6*408a4873SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7*408a4873SAndrew Rist * to you under the Apache License, Version 2.0 (the
8*408a4873SAndrew Rist * "License"); you may not use this file except in compliance
9*408a4873SAndrew Rist * with the License.  You may obtain a copy of the License at
10*408a4873SAndrew Rist *
11*408a4873SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12*408a4873SAndrew Rist *
13*408a4873SAndrew Rist * Unless required by applicable law or agreed to in writing,
14*408a4873SAndrew Rist * software distributed under the License is distributed on an
15*408a4873SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*408a4873SAndrew Rist * KIND, either express or implied.  See the License for the
17*408a4873SAndrew Rist * specific language governing permissions and limitations
18*408a4873SAndrew Rist * under the License.
19*408a4873SAndrew Rist *
20*408a4873SAndrew Rist *************************************************************/
21*408a4873SAndrew Rist
22*408a4873SAndrew Rist
23cdf0e10cSrcweir#ifndef __com_sun_star_bridge_Bridge_idl__
24cdf0e10cSrcweir#define __com_sun_star_bridge_Bridge_idl__
25cdf0e10cSrcweir
26cdf0e10cSrcweir#ifndef __com_sun_star_lang_XInitialization_idl__
27cdf0e10cSrcweir#include <com/sun/star/lang/XInitialization.idl>
28cdf0e10cSrcweir#endif
29cdf0e10cSrcweir
30cdf0e10cSrcweir#ifndef __com_sun_star_lang_XComponent_idl__
31cdf0e10cSrcweir#include <com/sun/star/lang/XComponent.idl>
32cdf0e10cSrcweir#endif
33cdf0e10cSrcweir
34cdf0e10cSrcweir#ifndef __com_sun_star_bridge_XBridge_idl__
35cdf0e10cSrcweir#include <com/sun/star/bridge/XBridge.idl>
36cdf0e10cSrcweir#endif
37cdf0e10cSrcweir
38cdf0e10cSrcweir//=============================================================================
39cdf0e10cSrcweir
40cdf0e10cSrcweirmodule com {  module sun {  module star {  module bridge {
41cdf0e10cSrcweir
42cdf0e10cSrcweir//=============================================================================
43cdf0e10cSrcweir
44cdf0e10cSrcweir/** This meta service allows the bridgefactory service to instantiate an
45cdf0e10cSrcweir	interprocess bridge using a certain transfer protocol.
46cdf0e10cSrcweir
47cdf0e10cSrcweir	<p> Components, that support a certain protocol, must have at least two
48cdf0e10cSrcweir	service names: </p>
49cdf0e10cSrcweir
50cdf0e10cSrcweir	<ul>
51cdf0e10cSrcweir		<li> com.sun.star.bridge.Bridge </li>
52cdf0e10cSrcweir		<li> arbitrary-module-path.ProtocolnameBridge </li>
53cdf0e10cSrcweir	</ul>
54cdf0e10cSrcweir
55cdf0e10cSrcweir	<p>The protocol name should be written as common servicenames, first letter is a
56cdf0e10cSrcweir	capital letter, the rest in small letters postfixed by Bridge (e.g.:
57cdf0e10cSrcweir	<code>com.sun.star.bridge.UrpBridge</code> would be correct servicename for the
58cdf0e10cSrcweir	"urp" protocol).  However, the protocol names are compared case insensitive.
59cdf0e10cSrcweir	If there exist two services supporting the same protocol, it is arbitrary
60cdf0e10cSrcweir	which one is chosen, so this should be omitted. </p>
61cdf0e10cSrcweir */
62cdf0e10cSrcweirpublished service Bridge
63cdf0e10cSrcweir{
64cdf0e10cSrcweir	/** allows to initialize the bridge service with the necessary
65cdf0e10cSrcweir		 arguments. The sequence&lt;any&gt; must have 4 members.
66cdf0e10cSrcweir
67cdf0e10cSrcweir		 <ol>
68cdf0e10cSrcweir			 <li> String: The unique name of the bridge or an empty string</li>
69cdf0e10cSrcweir			 <li> String: The protocol, that shall be instantiated</li>
70cdf0e10cSrcweir			 <li> XConnection: The bidirectional connection, the bridge should work on</li>
71cdf0e10cSrcweir			 <li> XInstanceProvider:
72cdf0e10cSrcweir				The instance provider, that shall be called to access the initial object.</li>
73cdf0e10cSrcweir		 </ol>
74cdf0e10cSrcweir	 */
75cdf0e10cSrcweir	interface com::sun::star::lang::XInitialization;
76cdf0e10cSrcweir
77cdf0e10cSrcweir	/** The main interface of the service
78cdf0e10cSrcweir	 */
79cdf0e10cSrcweir	interface com::sun::star::bridge::XBridge;
80cdf0e10cSrcweir
81cdf0e10cSrcweir	/** This interface allows to terminate the interprocess bridge.
82cdf0e10cSrcweir	 */
83cdf0e10cSrcweir	interface com::sun::star::lang::XComponent;
84cdf0e10cSrcweir
85cdf0e10cSrcweir};
86cdf0e10cSrcweir
87cdf0e10cSrcweir//=============================================================================
88cdf0e10cSrcweir
89cdf0e10cSrcweir}; }; }; };
90cdf0e10cSrcweir#endif
91