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_sdbc_JDBCConnectionProperties_idl__
28#define __com_sun_star_sdbc_JDBCConnectionProperties_idl__
29
30#ifndef __com_sun_star_sdbc_ConnectionProperties_idl__
31#include <com/sun/star/sdbc/ConnectionProperties.idl>
32#endif
33#ifndef __com_sun_star_beans_NamedValue_idl__
34#include <com/sun/star/beans/NamedValue.idl>
35#endif
36
37module com {  module sun {  module star {  module sdbc {
38
39/** represents the properties for a JDBC connection (session) with a specific
40	database. These properties can be used when calling the method
41	<member scope="com::sun::star::sdbc">XDriver::connect()</member> or
42	<member scope="com::sun::star::sdbc">XDriverManager::getConnectionWithInfo()</member>.
43
44	<p>
45	The properties for a connection contain additonal information about how to connect to a database and
46	how to control the behavior of the resulting connection should be.
47
48	</p>
49	@see com::sun::star::sdbc::XDriver
50	@see com::sun::star::sdbc::XDriverManager
51	@see com::sun::star::sdbc::ConnectionProperties
52 */
53service JDBCConnectionProperties
54{
55	service com::sun::star::sdbc::ConnectionProperties;
56
57	/** which jdbc driver class should be loaded to create the connection.
58
59        @see com::sun::star::sdbc::JDBCConnectionProperties::JavaDriverClassPath
60	*/
61	[optional, property] string JavaDriverClass;
62
63    /** an optional class path to locate the <member
64        scope="com::sun::star::sdbc">JDBCConnectionProperties::JavaDriverClass
65        </member>.
66
67        <p>The class path is a list of zero or more internal (see the
68        <type scope="com::sun::star::uri">ExternalUriReferenceTranslator</type>
69        service) URI references, where any space characters
70        (<code>U+0020</code>) are ignored (and, in particular, separate adjacent
71        URI references).  Any &ldquo;vnd.sun.star.expand&rdquo; URL references
72        in the list are expanded using the
73        <type scope="com::sun::star::util">theMacroExpander</type>
74        singleton.</p>
75
76        @since OOo 2.3
77    */
78    [optional, property] string JavaDriverClassPath;
79
80    /** specifies a set of properties to pass to <code>java.lang.System.setProperty</code> before
81        loading the system's JDBC driver.
82    */
83    [optional, property] sequence< ::com::sun::star::beans::NamedValue > SystemProperties;
84
85	/** specifies if retrieving of auto generated values should be enabled or not.
86		If <TRUE/> than the statement will support the XGeneratedResultSet (future concept) interface, otherwise not.
87	*/
88	[optional, property] boolean IsAutoRetrievingEnabled;
89
90	/** specifies the statement which should be executed
91		when asking an "INSERT" statement for the XGeneratedResultSet (future concept) interface.
92	*/
93	[optional, property] string AutoRetrievingStatement;
94
95    /** specifies how the type info returned by <member scope="com::sun::star::sdbc">XDatabaseMetaData::getTypeInfo()</member> will be modified.
96        <p>The sequence contains an even amount of string values. Each pair describes
97        <li>what should be searched for and </li>
98        <li>what should be replaced if found.</li>
99        <br>
100        The syntax is:
101        <p>
102            <li>COLUMN(2) = -5</li>
103            <li>COLUMN(6) = PRECISION</li>
104        </p>
105        COLUMN(X) defines the column which will be compared and the column which will be replaced. In the example above column 2 will be compared
106        with the value -5. If this is true than column 6 will now return the value PRECISION.
107        </p>
108    */
109    [optional, property] sequence< any > TypeInfoSettings;
110};
111
112//=============================================================================
113
114}; }; }; };
115
116/*===========================================================================
117
118===========================================================================*/
119#endif
120