1d1766043SAndrew Rist/**************************************************************
2cdf0e10cSrcweir *
3d1766043SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4d1766043SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5d1766043SAndrew Rist * distributed with this work for additional information
6d1766043SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7d1766043SAndrew Rist * to you under the Apache License, Version 2.0 (the
8d1766043SAndrew Rist * "License"); you may not use this file except in compliance
9d1766043SAndrew Rist * with the License.  You may obtain a copy of the License at
10d1766043SAndrew Rist *
11d1766043SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12d1766043SAndrew Rist *
13d1766043SAndrew Rist * Unless required by applicable law or agreed to in writing,
14d1766043SAndrew Rist * software distributed under the License is distributed on an
15d1766043SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16d1766043SAndrew Rist * KIND, either express or implied.  See the License for the
17d1766043SAndrew Rist * specific language governing permissions and limitations
18d1766043SAndrew Rist * under the License.
19d1766043SAndrew Rist *
20d1766043SAndrew Rist *************************************************************/
21d1766043SAndrew Rist
22d1766043SAndrew Rist
23cdf0e10cSrcweir#ifndef __com_sun_star_sdb_DatabaseContext_idl__
24cdf0e10cSrcweir#define __com_sun_star_sdb_DatabaseContext_idl__
25cdf0e10cSrcweir
26cdf0e10cSrcweir#ifndef __com_sun_star_container_XEnumerationAccess_idl__
27cdf0e10cSrcweir#include <com/sun/star/container/XEnumerationAccess.idl>
28cdf0e10cSrcweir#endif
29cdf0e10cSrcweir
30cdf0e10cSrcweir#ifndef __com_sun_star_container_XContainer_idl__
31cdf0e10cSrcweir#include <com/sun/star/container/XContainer.idl>
32cdf0e10cSrcweir#endif
33cdf0e10cSrcweir
34cdf0e10cSrcweir#ifndef __com_sun_star_lang_XSingleServiceFactory_idl__
35cdf0e10cSrcweir#include <com/sun/star/lang/XSingleServiceFactory.idl>
36cdf0e10cSrcweir#endif
37cdf0e10cSrcweir
38cdf0e10cSrcweir#ifndef __com_sun_star_container_XNameAccess_idl__
39cdf0e10cSrcweir#include <com/sun/star/container/XNameAccess.idl>
40cdf0e10cSrcweir#endif
41cdf0e10cSrcweir
42cdf0e10cSrcweir#ifndef __com_sun_star_uno_XNamingService_idl__
43cdf0e10cSrcweir#include <com/sun/star/uno/XNamingService.idl>
44cdf0e10cSrcweir#endif
45cdf0e10cSrcweir
46cdf0e10cSrcweir module com {  module sun {  module star {  module sdb {
47cdf0e10cSrcweir
48cdf0e10cSrcweirpublished interface XDatabaseRegistrations;
49cdf0e10cSrcweir
50cdf0e10cSrcweir/** is the context for accessing datasource.
51cdf0e10cSrcweir
52cdf0e10cSrcweir	<p>
53cdf0e10cSrcweir	A datasource contains information how to create a connection to a database, such as,
54cdf0e10cSrcweir	which database driver should be used, for which user should a connection be established, etc.
55cdf0e10cSrcweir	<br/>
56cdf0e10cSrcweir	The context stores datasources under a given name.
57cdf0e10cSrcweir
58cdf0e10cSrcweir	</p>
59cdf0e10cSrcweir	@see com::sun::star::sdb::DataSource
60cdf0e10cSrcweir */
61cdf0e10cSrcweirpublished service DatabaseContext
62cdf0e10cSrcweir{
63cdf0e10cSrcweir	/** Enumeration on all registered data sources.
64cdf0e10cSrcweir	 */
65cdf0e10cSrcweir	interface com::sun::star::container::XEnumerationAccess;
66cdf0e10cSrcweir
67cdf0e10cSrcweir	/** NameAccess on all registered data sources.
68cdf0e10cSrcweir		<p>One exception is the <method "com.sun.star.container.XNameAccess">getByName</method>, this method also allows to ask
69cdf0e10cSrcweir		for a <member "DataAccessDescriptor">DatabaseLocation</member>.
70cdf0e10cSrcweir		</p>
71cdf0e10cSrcweir	 */
72cdf0e10cSrcweir	interface com::sun::star::container::XNameAccess;
73cdf0e10cSrcweir
74cdf0e10cSrcweir	/** Interface for registering new datasources.
75cdf0e10cSrcweir	 */
76cdf0e10cSrcweir	interface com::sun::star::uno::XNamingService;
77cdf0e10cSrcweir
78cdf0e10cSrcweir	/** Interface for registering listener to get notified when new datasources are created or removed.
79cdf0e10cSrcweir	*/
80cdf0e10cSrcweir	interface com::sun::star::container::XContainer;
81cdf0e10cSrcweir
82cdf0e10cSrcweir	/** Interface for creation of new datasources.
83cdf0e10cSrcweir	*/
84cdf0e10cSrcweir	interface com::sun::star::lang::XSingleServiceFactory;
85cdf0e10cSrcweir
86cdf0e10cSrcweir    /** allows to access and modify the configuration data for registered data source.
87cdf0e10cSrcweir
88cdf0e10cSrcweir        <p>The main purpose of this interface is to allow you to register data sources which you know
89cdf0e10cSrcweir        by URL only, and have not yet loaded.</p>
90cdf0e10cSrcweir
91cdf0e10cSrcweir        <p>Also, it hides the details of the configuration data where the data source registrations
92cdf0e10cSrcweir        are maintained, so if possible at all, you should use this interface, instead of modifying or
93cdf0e10cSrcweir        querying the configuration data directly.</p>
94cdf0e10cSrcweir
95*c4dc0a1aSJürgen Schmidt        @since OpenOffice 3.3
96cdf0e10cSrcweir    */
97cdf0e10cSrcweir    [optional] interface XDatabaseRegistrations;
98cdf0e10cSrcweir};
99cdf0e10cSrcweir
100cdf0e10cSrcweir//=============================================================================
101cdf0e10cSrcweir
102cdf0e10cSrcweir}; }; }; };
103cdf0e10cSrcweir
104cdf0e10cSrcweir/*===========================================================================
105cdf0e10cSrcweir===========================================================================*/
106cdf0e10cSrcweir#endif
107