1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*************************************************************************
4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 * Copyright 2000, 2010 Oracle and/or its affiliates.
8 * OpenOffice.org - a multi-platform office productivity suite
10 * This file is part of OpenOffice.org.
12 * OpenOffice.org is free software: you can redistribute it and/or modify
13 * it under the terms of the GNU Lesser General Public License version 3
14 * only, as published by the Free Software Foundation.
16 * OpenOffice.org is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License version 3 for more details
20 * (a copy is included in the LICENSE file that accompanied this code).
22 * You should have received a copy of the GNU Lesser General Public License
23 * version 3 along with OpenOffice.org. If not, see
24 * <http://www.openoffice.org/license.html>
25 * for a copy of the LGPLv3 License.
27 ************************************************************************/
29 #include "file/FDatabaseMetaData.hxx"
30 #include "FDatabaseMetaDataResultSet.hxx"
31 #include <com/sun/star/sdbc/DataType.hpp>
32 #include <com/sun/star/sdbc/ResultSetType.hpp>
33 #include <com/sun/star/sdbc/ResultSetConcurrency.hpp>
34 #include <com/sun/star/ucb/SearchRecursion.hpp>
35 #include <com/sun/star/ucb/SearchCommandArgument.hpp>
36 #include <com/sun/star/ucb/XSortedDynamicResultSetFactory.hpp>
37 #include <com/sun/star/ucb/XContentProvider.hpp>
38 #include <com/sun/star/lang/XUnoTunnel.hpp>
39 #include <tools/urlobj.hxx>
40 #include "file/FDriver.hxx"
41 #include "file/FTable.hxx"
42 #include <comphelper/extract.hxx>
43 #include <ucbhelper/content.hxx>
44 #include <ucbhelper/contentbroker.hxx>
45 #include <tools/debug.hxx>
46 #include <rtl/logfile.hxx>
49 using namespace com::sun::star::ucb
;
50 using namespace connectivity::file
;
51 using namespace connectivity
;
52 using namespace com::sun::star::uno
;
53 using namespace com::sun::star::lang
;
54 using namespace com::sun::star::beans
;
55 using namespace com::sun::star::sdbc
;
56 using namespace com::sun::star::sdbcx
;
57 using namespace com::sun::star::lang
;
58 using namespace com::sun::star::container
;
60 DBG_NAME( file_ODatabaseMetaData
)
61 ODatabaseMetaData::ODatabaseMetaData(OConnection
* _pCon
) : ::connectivity::ODatabaseMetaDataBase(_pCon
,_pCon
->getConnectionInfo())
64 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::ODatabaseMetaData" );
65 DBG_CTOR( file_ODatabaseMetaData
, NULL
);
67 // -------------------------------------------------------------------------
68 ODatabaseMetaData::~ODatabaseMetaData()
70 DBG_DTOR( file_ODatabaseMetaData
, NULL
);
72 // -------------------------------------------------------------------------
73 Reference
< XResultSet
> ODatabaseMetaData::impl_getTypeInfo_throw( )
75 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getTypeInfo_throw" );
76 return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eTypeInfo
);
78 // -------------------------------------------------------------------------
79 ::rtl::OUString
ODatabaseMetaData::impl_getCatalogSeparator_throw( )
81 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getCatalogSeparator_throw" );
82 return ::rtl::OUString();
84 // -------------------------------------------------------------------------
85 Reference
< XResultSet
> SAL_CALL
ODatabaseMetaData::getColumns(
86 const Any
& /*catalog*/, const ::rtl::OUString
& /*schemaPattern*/, const ::rtl::OUString
& /*tableNamePattern*/,
87 const ::rtl::OUString
& /*columnNamePattern*/ ) throw(SQLException
, RuntimeException
)
89 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getColumns" );
90 OSL_FAIL("Should be overloaded!");
91 return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eColumns
);
94 // -------------------------------------------------------------------------
97 sal_Int16
isCaseSensitiveParentFolder( const String
& _rFolderOrDoc
, const String
& _rDocName
)
102 // first get the real content for the URL
103 INetURLObject
aContentURL( _rFolderOrDoc
);
104 ::ucbhelper::Content aContent1
;
106 ::ucbhelper::Content
aFolderOrDoc( _rFolderOrDoc
, Reference
< XCommandEnvironment
>() );
107 if ( aFolderOrDoc
.isDocument() )
108 aContent1
= aFolderOrDoc
;
111 aContentURL
= INetURLObject( _rFolderOrDoc
, INetURLObject::WAS_ENCODED
);
112 aContentURL
.Append( _rDocName
);
113 aContent1
= ::ucbhelper::Content( aContentURL
.GetMainURL( INetURLObject::NO_DECODE
), Reference
< XCommandEnvironment
>() );
117 // get two extensions which differ by case only
118 String sExtension1
= aContentURL
.getExtension();
119 String
sExtension2( sExtension1
);
120 sExtension2
.ToLowerAscii();
121 if ( sExtension2
== sExtension1
)
122 // the extension was already in lower case
123 sExtension2
.ToUpperAscii();
125 // the complete URL for the second extension
126 INetURLObject
aURL2( aContentURL
);
127 if ( sExtension2
.Len() )
128 aURL2
.SetExtension( sExtension2
);
129 if ( aURL2
.GetMainURL(INetURLObject::NO_DECODE
) == aContentURL
.GetMainURL(INetURLObject::NO_DECODE
) )
132 // the second context
133 sal_Bool bCanAccess
= sal_False
;
134 ::ucbhelper::Content aContent2
;
137 aContent2
= ::ucbhelper::Content( aURL2
.GetMainURL( INetURLObject::NO_DECODE
), Reference
< XCommandEnvironment
>() );
138 bCanAccess
= aContent2
.isDocument();
140 catch( const Exception
& )
146 // here we have two contents whose URLs differ by case only.
147 // Now let's check if both really refer to the same object ....
148 Reference
< XContent
> xContent1
= aContent1
.get();
149 Reference
< XContent
> xContent2
= aContent2
.get();
150 OSL_ENSURE( xContent1
.is() && xContent2
.is(), "isCaseSensitiveParentFolder: invalid content interfaces!" );
151 if ( xContent1
.is() && xContent2
.is() )
153 Reference
< XContentIdentifier
> xID1
= xContent1
->getIdentifier();
154 Reference
< XContentIdentifier
> xID2
= xContent2
->getIdentifier();
155 OSL_ENSURE( xID1
.is() && xID2
.is(), "isCaseSensitiveParentFolder: invalid ID interfaces!" );
156 if ( xID1
.is() && xID2
.is() )
158 // get a generic content provider
159 ::ucbhelper::ContentBroker
* pBroker
= ::ucbhelper::ContentBroker::get();
160 Reference
< XContentProvider
> xProvider
;
162 xProvider
= pBroker
->getContentProviderInterface();
163 OSL_ENSURE( xProvider
.is(), "isCaseSensitiveParentFolder: invalid content broker!" );
164 if ( xProvider
.is() )
166 if ( 0 == xProvider
->compareContentIds( xID1
, xID2
) )
167 // finally, we know that the folder is not case-sensitive ....
174 catch( const Exception
& )
176 OSL_FAIL( "isCaseSensitiveParentFolder: caught an unexpected exception!" );
183 // -------------------------------------------------------------------------
184 Reference
< XResultSet
> SAL_CALL
ODatabaseMetaData::getTables(
185 const Any
& /*catalog*/, const ::rtl::OUString
& /*schemaPattern*/,
186 const ::rtl::OUString
& tableNamePattern
, const Sequence
< ::rtl::OUString
>& types
) throw(SQLException
, RuntimeException
)
188 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getTables" );
189 ::osl::MutexGuard
aGuard( m_aMutex
);
192 ODatabaseMetaDataResultSet
* pResult
= new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eTables
);
193 Reference
< XResultSet
> xRef
= pResult
;
195 // check if any type is given
196 // when no types are given then we have to return all tables e.g. TABLE
198 static const ::rtl::OUString
aTable("TABLE");
200 sal_Bool bTableFound
= sal_True
;
201 sal_Int32 nLength
= types
.getLength();
204 bTableFound
= sal_False
;
206 const ::rtl::OUString
* pBegin
= types
.getConstArray();
207 const ::rtl::OUString
* pEnd
= pBegin
+ nLength
;
208 for(;pBegin
!= pEnd
;++pBegin
)
210 if(*pBegin
== aTable
)
212 bTableFound
= sal_True
;
220 Reference
<XDynamicResultSet
> xContent
= m_pConnection
->getDir();
221 Reference
< XSortedDynamicResultSetFactory
> xSRSFac(
222 m_pConnection
->getDriver()->getFactory()->createInstance( ::rtl::OUString("com.sun.star.ucb.SortedDynamicResultSetFactory") ), UNO_QUERY
);
224 Sequence
< NumberedSortingInfo
> aSortInfo( 1 );
225 NumberedSortingInfo
* pInfo
= aSortInfo
.getArray();
226 pInfo
[ 0 ].ColumnIndex
= 1;
227 pInfo
[ 0 ].Ascending
= sal_True
;
229 Reference
< XAnyCompareFactory
> xFactory
;
230 Reference
< XDynamicResultSet
> xDynamicResultSet
;
231 xDynamicResultSet
= xSRSFac
->createSortedDynamicResultSet( xContent
, aSortInfo
, xFactory
);
232 Reference
<XResultSet
> xResultSet
= xDynamicResultSet
->getStaticResultSet();
234 Reference
<XRow
> xRow(xResultSet
,UNO_QUERY
);
236 String aFilenameExtension
= m_pConnection
->getExtension();
237 String sThisContentExtension
;
238 ODatabaseMetaDataResultSet::ORows aRows
;
239 // scan the directory for tables
240 ::rtl::OUString aName
;
242 xResultSet
->beforeFirst();
244 sal_Bool bKnowCaseSensivity
= sal_False
;
245 sal_Bool bCaseSensitiveDir
= sal_True
;
246 sal_Bool bCheckEnabled
= m_pConnection
->isCheckEnabled();
248 while(xResultSet
->next())
250 aName
= xRow
->getString(1);
251 aURL
.SetSmartProtocol(INET_PROT_FILE
);
252 String sUrl
= m_pConnection
->getURL() + ::rtl::OUString("/") + aName
;
253 aURL
.SetSmartURL( sUrl
);
254 sThisContentExtension
= aURL
.getExtension();
256 ODatabaseMetaDataResultSet::ORow
aRow(3);
258 sal_Bool bNewRow
= sal_False
;
260 if ( !bKnowCaseSensivity
)
262 bKnowCaseSensivity
= sal_True
;
263 sal_Int16 nCase
= isCaseSensitiveParentFolder( m_pConnection
->getURL(), aURL
.getName() );
267 bCaseSensitiveDir
= sal_True
;
270 bKnowCaseSensivity
= sal_False
;
273 bCaseSensitiveDir
= sal_False
;
275 if ( bKnowCaseSensivity
)
277 m_pConnection
->setCaseSensitiveExtension( bCaseSensitiveDir
, OConnection::GrantAccess() );
278 if ( !bCaseSensitiveDir
)
279 aFilenameExtension
.ToLowerAscii();
283 if (aFilenameExtension
.Len())
285 if ( !bCaseSensitiveDir
)
286 sThisContentExtension
.ToLowerAscii();
288 if ( sThisContentExtension
== aFilenameExtension
)
290 aName
= aName
.replaceAt(aName
.getLength()-(aFilenameExtension
.Len()+1),aFilenameExtension
.Len()+1,::rtl::OUString());
291 sal_Unicode nChar
= aName
.toChar();
292 if ( match(tableNamePattern
,aName
,'\0') && ( !bCheckEnabled
|| ( bCheckEnabled
&& ((nChar
< '0' || nChar
> '9')))) )
294 aRow
.push_back(new ORowSetValueDecorator(aName
));
299 else // no extension, filter myself
301 sal_Bool bErg
= sal_False
;
304 if (aURL
.getExtension().isEmpty())
306 sal_Unicode nChar
= aURL
.getBase().getStr()[0];
307 if(match(tableNamePattern
,aURL
.getBase(),'\0') && ( !bCheckEnabled
|| ( bCheckEnabled
&& ((nChar
< '0' || nChar
> '9')))) )
309 aRow
.push_back(new ORowSetValueDecorator(::rtl::OUString(aURL
.getBase())));
314 else if ( ( bErg
= xResultSet
->next() ) != sal_False
)
316 aName
= xRow
->getString(1);
317 aURL
.SetSmartURL(aName
);
323 aRow
.push_back(new ORowSetValueDecorator(aTable
));
324 aRow
.push_back(ODatabaseMetaDataResultSet::getEmptyValue());
326 aRows
.push_back(aRow
);
330 pResult
->setRows(aRows
);
334 // -------------------------------------------------------------------------
335 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxBinaryLiteralLength( ) throw(SQLException
, RuntimeException
)
337 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxBinaryLiteralLength" );
340 // -------------------------------------------------------------------------
341 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxRowSize( ) throw(SQLException
, RuntimeException
)
343 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxRowSize" );
346 // -------------------------------------------------------------------------
347 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxCatalogNameLength( ) throw(SQLException
, RuntimeException
)
349 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxCatalogNameLength" );
352 // -------------------------------------------------------------------------
353 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxCharLiteralLength( ) throw(SQLException
, RuntimeException
)
355 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxCharLiteralLength" );
356 return STRING_MAXLEN
;
358 // -------------------------------------------------------------------------
359 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxColumnNameLength( ) throw(SQLException
, RuntimeException
)
361 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnNameLength" );
364 // -------------------------------------------------------------------------
365 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxColumnsInIndex( ) throw(SQLException
, RuntimeException
)
367 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInIndex" );
370 // -------------------------------------------------------------------------
371 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxCursorNameLength( ) throw(SQLException
, RuntimeException
)
373 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxCursorNameLength" );
376 // -------------------------------------------------------------------------
377 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxConnections( ) throw(SQLException
, RuntimeException
)
379 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxConnections" );
382 // -------------------------------------------------------------------------
383 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxColumnsInTable( ) throw(SQLException
, RuntimeException
)
385 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInTable" );
388 // -------------------------------------------------------------------------
389 sal_Int32
ODatabaseMetaData::impl_getMaxStatements_throw( )
391 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getMaxStatements_throw" );
394 // -------------------------------------------------------------------------
395 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxTableNameLength( ) throw(SQLException
, RuntimeException
)
397 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxTableNameLength" );
400 // -------------------------------------------------------------------------
401 sal_Int32
ODatabaseMetaData::impl_getMaxTablesInSelect_throw( )
403 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getMaxTablesInSelect_throw" );
406 // -------------------------------------------------------------------------
407 Reference
< XResultSet
> SAL_CALL
ODatabaseMetaData::getTablePrivileges(
408 const Any
& /*catalog*/, const ::rtl::OUString
& /*schemaPattern*/, const ::rtl::OUString
& tableNamePattern
) throw(SQLException
, RuntimeException
)
410 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getTablePrivileges" );
411 ::osl::MutexGuard
aGuard( m_aMutex
);
413 ODatabaseMetaDataResultSet
* pResult
= new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eTablePrivileges
);
414 Reference
< XResultSet
> xRef
= pResult
;
415 ODatabaseMetaDataResultSet::ORows aRows
;
418 Reference
< XTablesSupplier
> xTabSup
= m_pConnection
->createCatalog();
421 Reference
< XNameAccess
> xNames
= xTabSup
->getTables();
422 Sequence
< ::rtl::OUString
> aNames
= xNames
->getElementNames();
423 const ::rtl::OUString
* pBegin
= aNames
.getConstArray();
424 const ::rtl::OUString
* pEnd
= pBegin
+ aNames
.getLength();
425 for(;pBegin
!= pEnd
;++pBegin
)
427 if(match(tableNamePattern
,*pBegin
,'\0'))
429 static ODatabaseMetaDataResultSet::ORow
aRow(8);
431 aRow
[2] = new ORowSetValueDecorator(*pBegin
);
432 aRow
[6] = ODatabaseMetaDataResultSet::getSelectValue();
433 aRow
[7] = new ORowSetValueDecorator(::rtl::OUString("NO"));
434 aRows
.push_back(aRow
);
436 Reference
< XPropertySet
> xTable
;
437 ::cppu::extractInterface(xTable
,xNames
->getByName(*pBegin
));
440 Reference
<XUnoTunnel
> xTunnel(xTable
,UNO_QUERY
);
443 OFileTable
* pTable
= reinterpret_cast< OFileTable
* >( xTunnel
->getSomething(OFileTable::getUnoTunnelImplementationId()) );
446 if(!pTable
->isReadOnly())
448 aRow
[6] = ODatabaseMetaDataResultSet::getInsertValue();
449 aRows
.push_back(aRow
);
450 if(!m_pConnection
->showDeleted())
452 aRow
[6] = ODatabaseMetaDataResultSet::getDeleteValue();
453 aRows
.push_back(aRow
);
455 aRow
[6] = ODatabaseMetaDataResultSet::getUpdateValue();
456 aRows
.push_back(aRow
);
457 aRow
[6] = ODatabaseMetaDataResultSet::getCreateValue();
458 aRows
.push_back(aRow
);
459 aRow
[6] = ODatabaseMetaDataResultSet::getReadValue();
460 aRows
.push_back(aRow
);
461 aRow
[6] = ODatabaseMetaDataResultSet::getAlterValue();
462 aRows
.push_back(aRow
);
463 aRow
[6] = ODatabaseMetaDataResultSet::getDropValue();
464 aRows
.push_back(aRow
);
473 pResult
->setRows(aRows
);
476 // -------------------------------------------------------------------------
477 sal_Bool SAL_CALL
ODatabaseMetaData::doesMaxRowSizeIncludeBlobs( ) throw(SQLException
, RuntimeException
)
479 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::doesMaxRowSizeIncludeBlobs" );
482 // -------------------------------------------------------------------------
483 sal_Bool SAL_CALL
ODatabaseMetaData::storesLowerCaseQuotedIdentifiers( ) throw(SQLException
, RuntimeException
)
485 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesLowerCaseQuotedIdentifiers" );
488 // -------------------------------------------------------------------------
489 sal_Bool SAL_CALL
ODatabaseMetaData::storesLowerCaseIdentifiers( ) throw(SQLException
, RuntimeException
)
491 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesLowerCaseIdentifiers" );
494 // -------------------------------------------------------------------------
495 sal_Bool
ODatabaseMetaData::impl_storesMixedCaseQuotedIdentifiers_throw( )
497 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_storesMixedCaseQuotedIdentifiers_throw" );
500 // -------------------------------------------------------------------------
501 sal_Bool SAL_CALL
ODatabaseMetaData::storesMixedCaseIdentifiers( ) throw(SQLException
, RuntimeException
)
503 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesMixedCaseIdentifiers" );
506 // -------------------------------------------------------------------------
507 sal_Bool SAL_CALL
ODatabaseMetaData::storesUpperCaseQuotedIdentifiers( ) throw(SQLException
, RuntimeException
)
509 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesUpperCaseQuotedIdentifiers" );
512 // -------------------------------------------------------------------------
513 sal_Bool SAL_CALL
ODatabaseMetaData::storesUpperCaseIdentifiers( ) throw(SQLException
, RuntimeException
)
515 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesUpperCaseIdentifiers" );
518 // -------------------------------------------------------------------------
519 sal_Bool
ODatabaseMetaData::impl_supportsAlterTableWithAddColumn_throw( )
521 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsAlterTableWithAddColumn_throw" );
524 // -------------------------------------------------------------------------
525 sal_Bool
ODatabaseMetaData::impl_supportsAlterTableWithDropColumn_throw( )
527 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsAlterTableWithDropColumn_throw" );
530 // -------------------------------------------------------------------------
531 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxIndexLength( ) throw(SQLException
, RuntimeException
)
533 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxIndexLength" );
536 // -------------------------------------------------------------------------
537 sal_Bool SAL_CALL
ODatabaseMetaData::supportsNonNullableColumns( ) throw(SQLException
, RuntimeException
)
539 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsNonNullableColumns" );
542 // -------------------------------------------------------------------------
543 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getCatalogTerm( ) throw(SQLException
, RuntimeException
)
545 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getCatalogTerm" );
546 return ::rtl::OUString();
548 // -------------------------------------------------------------------------
549 ::rtl::OUString
ODatabaseMetaData::impl_getIdentifierQuoteString_throw( )
551 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getIdentifierQuoteString_throw" );
552 static const ::rtl::OUString
sQuote("\"");
555 // -------------------------------------------------------------------------
556 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getExtraNameCharacters( ) throw(SQLException
, RuntimeException
)
558 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getExtraNameCharacters" );
559 return ::rtl::OUString();
561 // -------------------------------------------------------------------------
562 sal_Bool SAL_CALL
ODatabaseMetaData::supportsDifferentTableCorrelationNames( ) throw(SQLException
, RuntimeException
)
564 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsDifferentTableCorrelationNames" );
567 // -------------------------------------------------------------------------
568 sal_Bool
ODatabaseMetaData::impl_isCatalogAtStart_throw( )
570 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_isCatalogAtStart_throw" );
573 // -------------------------------------------------------------------------
574 sal_Bool SAL_CALL
ODatabaseMetaData::dataDefinitionIgnoredInTransactions( ) throw(SQLException
, RuntimeException
)
576 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::dataDefinitionIgnoredInTransactions" );
579 // -------------------------------------------------------------------------
580 sal_Bool SAL_CALL
ODatabaseMetaData::dataDefinitionCausesTransactionCommit( ) throw(SQLException
, RuntimeException
)
582 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::dataDefinitionCausesTransactionCommit" );
585 // -------------------------------------------------------------------------
586 sal_Bool SAL_CALL
ODatabaseMetaData::supportsDataManipulationTransactionsOnly( ) throw(SQLException
, RuntimeException
)
588 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsDataManipulationTransactionsOnly" );
591 // -------------------------------------------------------------------------
592 sal_Bool SAL_CALL
ODatabaseMetaData::supportsDataDefinitionAndDataManipulationTransactions( ) throw(SQLException
, RuntimeException
)
594 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsDataDefinitionAndDataManipulationTransactions" );
597 // -------------------------------------------------------------------------
598 sal_Bool SAL_CALL
ODatabaseMetaData::supportsPositionedDelete( ) throw(SQLException
, RuntimeException
)
600 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsPositionedDelete" );
603 // -------------------------------------------------------------------------
604 sal_Bool SAL_CALL
ODatabaseMetaData::supportsPositionedUpdate( ) throw(SQLException
, RuntimeException
)
606 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsPositionedUpdate" );
609 // -------------------------------------------------------------------------
610 sal_Bool SAL_CALL
ODatabaseMetaData::supportsOpenStatementsAcrossRollback( ) throw(SQLException
, RuntimeException
)
612 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOpenStatementsAcrossRollback" );
615 // -------------------------------------------------------------------------
616 sal_Bool SAL_CALL
ODatabaseMetaData::supportsOpenStatementsAcrossCommit( ) throw(SQLException
, RuntimeException
)
618 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOpenStatementsAcrossCommit" );
621 // -------------------------------------------------------------------------
622 sal_Bool SAL_CALL
ODatabaseMetaData::supportsOpenCursorsAcrossCommit( ) throw(SQLException
, RuntimeException
)
624 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOpenCursorsAcrossCommit" );
627 // -------------------------------------------------------------------------
628 sal_Bool SAL_CALL
ODatabaseMetaData::supportsOpenCursorsAcrossRollback( ) throw(SQLException
, RuntimeException
)
630 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOpenCursorsAcrossRollback" );
633 // -------------------------------------------------------------------------
634 sal_Bool SAL_CALL
ODatabaseMetaData::supportsTransactionIsolationLevel( sal_Int32
/*level*/ ) throw(SQLException
, RuntimeException
)
636 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsTransactionIsolationLevel" );
639 // -------------------------------------------------------------------------
640 sal_Bool
ODatabaseMetaData::impl_supportsSchemasInDataManipulation_throw( )
642 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsSchemasInDataManipulation_throw" );
645 // -------------------------------------------------------------------------
646 sal_Bool SAL_CALL
ODatabaseMetaData::supportsANSI92FullSQL( ) throw(SQLException
, RuntimeException
)
648 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsANSI92FullSQL" );
651 // -------------------------------------------------------------------------
652 sal_Bool SAL_CALL
ODatabaseMetaData::supportsANSI92EntryLevelSQL( ) throw(SQLException
, RuntimeException
)
654 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsANSI92EntryLevelSQL" );
657 // -------------------------------------------------------------------------
658 sal_Bool SAL_CALL
ODatabaseMetaData::supportsIntegrityEnhancementFacility( ) throw(SQLException
, RuntimeException
)
660 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsIntegrityEnhancementFacility" );
663 // -------------------------------------------------------------------------
664 sal_Bool SAL_CALL
ODatabaseMetaData::supportsSchemasInIndexDefinitions( ) throw(SQLException
, RuntimeException
)
666 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSchemasInIndexDefinitions" );
669 // -------------------------------------------------------------------------
670 sal_Bool
ODatabaseMetaData::impl_supportsSchemasInTableDefinitions_throw( )
672 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsSchemasInTableDefinitions_throw" );
675 // -------------------------------------------------------------------------
676 sal_Bool
ODatabaseMetaData::impl_supportsCatalogsInTableDefinitions_throw( )
678 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsCatalogsInTableDefinitions_throw" );
681 // -------------------------------------------------------------------------
682 sal_Bool SAL_CALL
ODatabaseMetaData::supportsCatalogsInIndexDefinitions( ) throw(SQLException
, RuntimeException
)
684 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCatalogsInIndexDefinitions" );
687 // -------------------------------------------------------------------------
688 sal_Bool
ODatabaseMetaData::impl_supportsCatalogsInDataManipulation_throw( )
690 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsCatalogsInDataManipulation_throw" );
693 // -------------------------------------------------------------------------
694 sal_Bool SAL_CALL
ODatabaseMetaData::supportsOuterJoins( ) throw(SQLException
, RuntimeException
)
696 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOuterJoins" );
699 // -------------------------------------------------------------------------
700 Reference
< XResultSet
> SAL_CALL
ODatabaseMetaData::getTableTypes( ) throw(SQLException
, RuntimeException
)
702 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getTableTypes" );
703 ::osl::MutexGuard
aGuard( m_aMutex
);
705 ODatabaseMetaDataResultSet
* pResult
= new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eTableTypes
);
706 Reference
< XResultSet
> xRef
= pResult
;
707 static ODatabaseMetaDataResultSet::ORows aRows
;
710 ODatabaseMetaDataResultSet::ORow aRow
;
711 aRow
.push_back(ODatabaseMetaDataResultSet::getEmptyValue());
712 aRow
.push_back(new ORowSetValueDecorator(::rtl::OUString("TABLE")));
713 aRows
.push_back(aRow
);
715 pResult
->setRows(aRows
);
718 // -------------------------------------------------------------------------
719 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxStatementLength( ) throw(SQLException
, RuntimeException
)
721 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxStatementLength" );
724 // -------------------------------------------------------------------------
725 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxProcedureNameLength( ) throw(SQLException
, RuntimeException
)
727 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxProcedureNameLength" );
730 // -------------------------------------------------------------------------
731 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxSchemaNameLength( ) throw(SQLException
, RuntimeException
)
733 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxSchemaNameLength" );
736 // -------------------------------------------------------------------------
737 sal_Bool SAL_CALL
ODatabaseMetaData::supportsTransactions( ) throw(SQLException
, RuntimeException
)
739 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsTransactions" );
742 // -------------------------------------------------------------------------
743 sal_Bool SAL_CALL
ODatabaseMetaData::allProceduresAreCallable( ) throw(SQLException
, RuntimeException
)
745 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::allProceduresAreCallable" );
748 // -------------------------------------------------------------------------
749 sal_Bool SAL_CALL
ODatabaseMetaData::supportsStoredProcedures( ) throw(SQLException
, RuntimeException
)
751 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsStoredProcedures" );
754 // -------------------------------------------------------------------------
755 sal_Bool SAL_CALL
ODatabaseMetaData::supportsSelectForUpdate( ) throw(SQLException
, RuntimeException
)
757 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSelectForUpdate" );
760 // -------------------------------------------------------------------------
761 sal_Bool SAL_CALL
ODatabaseMetaData::allTablesAreSelectable( ) throw(SQLException
, RuntimeException
)
763 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::allTablesAreSelectable" );
766 // -------------------------------------------------------------------------
767 sal_Bool SAL_CALL
ODatabaseMetaData::isReadOnly( ) throw(SQLException
, RuntimeException
)
769 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::isReadOnly" );
772 // -------------------------------------------------------------------------
773 sal_Bool SAL_CALL
ODatabaseMetaData::usesLocalFiles( ) throw(SQLException
, RuntimeException
)
775 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::usesLocalFiles" );
778 // -------------------------------------------------------------------------
779 sal_Bool SAL_CALL
ODatabaseMetaData::usesLocalFilePerTable( ) throw(SQLException
, RuntimeException
)
781 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::usesLocalFilePerTable" );
784 // -------------------------------------------------------------------------
785 sal_Bool SAL_CALL
ODatabaseMetaData::supportsTypeConversion( ) throw(SQLException
, RuntimeException
)
787 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsTypeConversion" );
790 // -------------------------------------------------------------------------
791 sal_Bool SAL_CALL
ODatabaseMetaData::nullPlusNonNullIsNull( ) throw(SQLException
, RuntimeException
)
793 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullPlusNonNullIsNull" );
796 // -------------------------------------------------------------------------
797 sal_Bool SAL_CALL
ODatabaseMetaData::supportsColumnAliasing( ) throw(SQLException
, RuntimeException
)
799 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsColumnAliasing" );
802 // -------------------------------------------------------------------------
803 sal_Bool SAL_CALL
ODatabaseMetaData::supportsTableCorrelationNames( ) throw(SQLException
, RuntimeException
)
805 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsTableCorrelationNames" );
808 // -------------------------------------------------------------------------
809 sal_Bool SAL_CALL
ODatabaseMetaData::supportsConvert( sal_Int32
/*fromType*/, sal_Int32
/*toType*/ ) throw(SQLException
, RuntimeException
)
811 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsConvert" );
814 // -------------------------------------------------------------------------
815 sal_Bool SAL_CALL
ODatabaseMetaData::supportsExpressionsInOrderBy( ) throw(SQLException
, RuntimeException
)
817 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsExpressionsInOrderBy" );
820 // -------------------------------------------------------------------------
821 sal_Bool SAL_CALL
ODatabaseMetaData::supportsGroupBy( ) throw(SQLException
, RuntimeException
)
823 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsGroupBy" );
826 // -------------------------------------------------------------------------
827 sal_Bool SAL_CALL
ODatabaseMetaData::supportsGroupByBeyondSelect( ) throw(SQLException
, RuntimeException
)
829 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsGroupByBeyondSelect" );
832 // -------------------------------------------------------------------------
833 sal_Bool SAL_CALL
ODatabaseMetaData::supportsGroupByUnrelated( ) throw(SQLException
, RuntimeException
)
835 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsGroupByUnrelated" );
838 // -------------------------------------------------------------------------
839 sal_Bool SAL_CALL
ODatabaseMetaData::supportsMultipleTransactions( ) throw(SQLException
, RuntimeException
)
841 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsMultipleTransactions" );
844 // -------------------------------------------------------------------------
845 sal_Bool SAL_CALL
ODatabaseMetaData::supportsMultipleResultSets( ) throw(SQLException
, RuntimeException
)
847 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsMultipleResultSets" );
850 // -------------------------------------------------------------------------
851 sal_Bool SAL_CALL
ODatabaseMetaData::supportsLikeEscapeClause( ) throw(SQLException
, RuntimeException
)
853 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsLikeEscapeClause" );
856 // -------------------------------------------------------------------------
857 sal_Bool SAL_CALL
ODatabaseMetaData::supportsOrderByUnrelated( ) throw(SQLException
, RuntimeException
)
859 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOrderByUnrelated" );
862 // -------------------------------------------------------------------------
863 sal_Bool SAL_CALL
ODatabaseMetaData::supportsUnion( ) throw(SQLException
, RuntimeException
)
865 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsUnion" );
868 // -------------------------------------------------------------------------
869 sal_Bool SAL_CALL
ODatabaseMetaData::supportsUnionAll( ) throw(SQLException
, RuntimeException
)
871 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsUnionAll" );
874 // -------------------------------------------------------------------------
875 sal_Bool SAL_CALL
ODatabaseMetaData::supportsMixedCaseIdentifiers( ) throw(SQLException
, RuntimeException
)
877 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsMixedCaseIdentifiers" );
880 // -------------------------------------------------------------------------
881 sal_Bool
ODatabaseMetaData::impl_supportsMixedCaseQuotedIdentifiers_throw( )
883 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsMixedCaseQuotedIdentifiers_throw" );
886 // -------------------------------------------------------------------------
887 sal_Bool SAL_CALL
ODatabaseMetaData::nullsAreSortedAtEnd( ) throw(SQLException
, RuntimeException
)
889 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullsAreSortedAtEnd" );
892 // -------------------------------------------------------------------------
893 sal_Bool SAL_CALL
ODatabaseMetaData::nullsAreSortedAtStart( ) throw(SQLException
, RuntimeException
)
895 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullsAreSortedAtStart" );
898 // -------------------------------------------------------------------------
899 sal_Bool SAL_CALL
ODatabaseMetaData::nullsAreSortedHigh( ) throw(SQLException
, RuntimeException
)
901 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullsAreSortedHigh" );
904 // -------------------------------------------------------------------------
905 sal_Bool SAL_CALL
ODatabaseMetaData::nullsAreSortedLow( ) throw(SQLException
, RuntimeException
)
907 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullsAreSortedLow" );
910 // -------------------------------------------------------------------------
911 sal_Bool SAL_CALL
ODatabaseMetaData::supportsSchemasInProcedureCalls( ) throw(SQLException
, RuntimeException
)
913 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSchemasInProcedureCalls" );
916 // -------------------------------------------------------------------------
917 sal_Bool SAL_CALL
ODatabaseMetaData::supportsSchemasInPrivilegeDefinitions( ) throw(SQLException
, RuntimeException
)
919 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSchemasInPrivilegeDefinitions" );
922 // -------------------------------------------------------------------------
923 sal_Bool SAL_CALL
ODatabaseMetaData::supportsCatalogsInProcedureCalls( ) throw(SQLException
, RuntimeException
)
925 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCatalogsInProcedureCalls" );
928 // -------------------------------------------------------------------------
929 sal_Bool SAL_CALL
ODatabaseMetaData::supportsCatalogsInPrivilegeDefinitions( ) throw(SQLException
, RuntimeException
)
931 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCatalogsInPrivilegeDefinitions" );
934 // -------------------------------------------------------------------------
935 sal_Bool SAL_CALL
ODatabaseMetaData::supportsCorrelatedSubqueries( ) throw(SQLException
, RuntimeException
)
937 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCorrelatedSubqueries" );
940 // -------------------------------------------------------------------------
941 sal_Bool SAL_CALL
ODatabaseMetaData::supportsSubqueriesInComparisons( ) throw(SQLException
, RuntimeException
)
943 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSubqueriesInComparisons" );
946 // -------------------------------------------------------------------------
947 sal_Bool SAL_CALL
ODatabaseMetaData::supportsSubqueriesInExists( ) throw(SQLException
, RuntimeException
)
949 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSubqueriesInExists" );
952 // -------------------------------------------------------------------------
953 sal_Bool SAL_CALL
ODatabaseMetaData::supportsSubqueriesInIns( ) throw(SQLException
, RuntimeException
)
955 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSubqueriesInIns" );
958 // -------------------------------------------------------------------------
959 sal_Bool SAL_CALL
ODatabaseMetaData::supportsSubqueriesInQuantifieds( ) throw(SQLException
, RuntimeException
)
961 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSubqueriesInQuantifieds" );
964 // -------------------------------------------------------------------------
965 sal_Bool SAL_CALL
ODatabaseMetaData::supportsANSI92IntermediateSQL( ) throw(SQLException
, RuntimeException
)
967 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsANSI92IntermediateSQL" );
970 // -------------------------------------------------------------------------
971 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getURL( ) throw(SQLException
, RuntimeException
)
973 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getURL" );
974 static const ::rtl::OUString
aValue( "sdbc:file:" );
977 // -------------------------------------------------------------------------
978 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getUserName( ) throw(SQLException
, RuntimeException
)
980 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getUserName" );
981 return ::rtl::OUString();
983 // -------------------------------------------------------------------------
984 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getDriverName( ) throw(SQLException
, RuntimeException
)
986 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDriverName" );
987 return ::rtl::OUString();
989 // -------------------------------------------------------------------------
990 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getDriverVersion( ) throw(SQLException
, RuntimeException
)
992 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDriverVersion" );
993 return ::rtl::OUString::valueOf((sal_Int32
)1);
995 // -------------------------------------------------------------------------
996 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getDatabaseProductVersion( ) throw(SQLException
, RuntimeException
)
998 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDatabaseProductVersion" );
999 return ::rtl::OUString::valueOf((sal_Int32
)0);
1001 // -------------------------------------------------------------------------
1002 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getDatabaseProductName( ) throw(SQLException
, RuntimeException
)
1004 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDatabaseProductName" );
1005 return ::rtl::OUString();
1007 // -------------------------------------------------------------------------
1008 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getProcedureTerm( ) throw(SQLException
, RuntimeException
)
1010 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getProcedureTerm" );
1011 return ::rtl::OUString();
1013 // -------------------------------------------------------------------------
1014 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getSchemaTerm( ) throw(SQLException
, RuntimeException
)
1016 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getSchemaTerm" );
1017 return ::rtl::OUString();
1019 // -------------------------------------------------------------------------
1020 sal_Int32 SAL_CALL
ODatabaseMetaData::getDriverMajorVersion( ) throw(RuntimeException
)
1022 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDriverMajorVersion" );
1025 // -------------------------------------------------------------------------
1026 sal_Int32 SAL_CALL
ODatabaseMetaData::getDefaultTransactionIsolation( ) throw(SQLException
, RuntimeException
)
1028 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDefaultTransactionIsolation" );
1031 // -------------------------------------------------------------------------
1032 sal_Int32 SAL_CALL
ODatabaseMetaData::getDriverMinorVersion( ) throw(RuntimeException
)
1034 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDriverMinorVersion" );
1037 // -------------------------------------------------------------------------
1038 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getSQLKeywords( ) throw(SQLException
, RuntimeException
)
1040 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getSQLKeywords" );
1041 return ::rtl::OUString();
1043 // -------------------------------------------------------------------------
1044 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getSearchStringEscape( ) throw(SQLException
, RuntimeException
)
1046 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getSearchStringEscape" );
1047 return ::rtl::OUString();
1049 // -------------------------------------------------------------------------
1050 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getStringFunctions( ) throw(SQLException
, RuntimeException
)
1052 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getStringFunctions" );
1053 return ::rtl::OUString("UCASE,LCASE,ASCII,LENGTH,OCTET_LENGTH,CHAR_LENGTH,CHARACTER_LENGTH,CHAR,CONCAT,LOCATE,SUBSTRING,LTRIM,RTRIM,SPACE,REPLACE,REPEAT,INSERT,LEFT,RIGHT");
1055 // -------------------------------------------------------------------------
1056 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getTimeDateFunctions( ) throw(SQLException
, RuntimeException
)
1058 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getTimeDateFunctions" );
1059 return ::rtl::OUString("DAYOFWEEK,DAYOFMONTH,DAYOFYEAR,MONTH,DAYNAME,MONTHNAME,QUARTER,WEEK,YEAR,HOUR,MINUTE,SECOND,CURDATE,CURTIME,NOW");
1061 // -------------------------------------------------------------------------
1062 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getSystemFunctions( ) throw(SQLException
, RuntimeException
)
1064 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getSystemFunctions" );
1065 return ::rtl::OUString();
1067 // -------------------------------------------------------------------------
1068 ::rtl::OUString SAL_CALL
ODatabaseMetaData::getNumericFunctions( ) throw(SQLException
, RuntimeException
)
1070 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getNumericFunctions" );
1071 return ::rtl::OUString("ABS,SIGN,MOD,FLOOR,CEILING,ROUND,EXP,LN,LOG,LOG10,POWER,SQRT,PI,COS,SIN,TAN,ACOS,ASIN,ATAN,ATAN2,DEGREES,RADIANS");
1073 // -------------------------------------------------------------------------
1074 sal_Bool SAL_CALL
ODatabaseMetaData::supportsExtendedSQLGrammar( ) throw(SQLException
, RuntimeException
)
1076 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsExtendedSQLGrammar" );
1079 // -------------------------------------------------------------------------
1080 sal_Bool SAL_CALL
ODatabaseMetaData::supportsCoreSQLGrammar( ) throw(SQLException
, RuntimeException
)
1082 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCoreSQLGrammar" );
1085 // -------------------------------------------------------------------------
1086 sal_Bool SAL_CALL
ODatabaseMetaData::supportsMinimumSQLGrammar( ) throw(SQLException
, RuntimeException
)
1088 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsMinimumSQLGrammar" );
1091 // -------------------------------------------------------------------------
1092 sal_Bool SAL_CALL
ODatabaseMetaData::supportsFullOuterJoins( ) throw(SQLException
, RuntimeException
)
1094 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsFullOuterJoins" );
1097 // -------------------------------------------------------------------------
1098 sal_Bool SAL_CALL
ODatabaseMetaData::supportsLimitedOuterJoins( ) throw(SQLException
, RuntimeException
)
1100 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsLimitedOuterJoins" );
1103 // -------------------------------------------------------------------------
1104 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxColumnsInGroupBy( ) throw(SQLException
, RuntimeException
)
1106 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInGroupBy" );
1109 // -------------------------------------------------------------------------
1110 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxColumnsInOrderBy( ) throw(SQLException
, RuntimeException
)
1112 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInOrderBy" );
1115 // -------------------------------------------------------------------------
1116 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxColumnsInSelect( ) throw(SQLException
, RuntimeException
)
1118 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInSelect" );
1121 // -------------------------------------------------------------------------
1122 sal_Int32 SAL_CALL
ODatabaseMetaData::getMaxUserNameLength( ) throw(SQLException
, RuntimeException
)
1124 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxUserNameLength" );
1127 // -------------------------------------------------------------------------
1128 sal_Bool SAL_CALL
ODatabaseMetaData::supportsResultSetType( sal_Int32 setType
) throw(SQLException
, RuntimeException
)
1130 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsResultSetType" );
1133 case ResultSetType::FORWARD_ONLY
:
1135 case ResultSetType::SCROLL_INSENSITIVE
:
1136 case ResultSetType::SCROLL_SENSITIVE
:
1141 // -------------------------------------------------------------------------
1142 sal_Bool SAL_CALL
ODatabaseMetaData::supportsResultSetConcurrency( sal_Int32 setType
, sal_Int32
/*concurrency*/ ) throw(SQLException
, RuntimeException
)
1144 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsResultSetConcurrency" );
1147 case ResultSetType::FORWARD_ONLY
:
1149 case ResultSetType::SCROLL_INSENSITIVE
:
1150 case ResultSetType::SCROLL_SENSITIVE
:
1155 // -------------------------------------------------------------------------
1156 sal_Bool SAL_CALL
ODatabaseMetaData::ownUpdatesAreVisible( sal_Int32
/*setType*/ ) throw(SQLException
, RuntimeException
)
1158 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::ownUpdatesAreVisible" );
1161 // -------------------------------------------------------------------------
1162 sal_Bool SAL_CALL
ODatabaseMetaData::ownDeletesAreVisible( sal_Int32
/*setType*/ ) throw(SQLException
, RuntimeException
)
1164 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::ownDeletesAreVisible" );
1167 // -------------------------------------------------------------------------
1168 sal_Bool SAL_CALL
ODatabaseMetaData::ownInsertsAreVisible( sal_Int32
/*setType*/ ) throw(SQLException
, RuntimeException
)
1170 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::ownInsertsAreVisible" );
1173 // -------------------------------------------------------------------------
1174 sal_Bool SAL_CALL
ODatabaseMetaData::othersUpdatesAreVisible( sal_Int32
/*setType*/ ) throw(SQLException
, RuntimeException
)
1176 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::othersUpdatesAreVisible" );
1179 // -------------------------------------------------------------------------
1180 sal_Bool SAL_CALL
ODatabaseMetaData::othersDeletesAreVisible( sal_Int32
/*setType*/ ) throw(SQLException
, RuntimeException
)
1182 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::othersDeletesAreVisible" );
1185 // -------------------------------------------------------------------------
1186 sal_Bool SAL_CALL
ODatabaseMetaData::othersInsertsAreVisible( sal_Int32
/*setType*/ ) throw(SQLException
, RuntimeException
)
1188 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::othersInsertsAreVisible" );
1191 // -------------------------------------------------------------------------
1192 sal_Bool SAL_CALL
ODatabaseMetaData::updatesAreDetected( sal_Int32
/*setType*/ ) throw(SQLException
, RuntimeException
)
1194 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::updatesAreDetected" );
1197 // -------------------------------------------------------------------------
1198 sal_Bool SAL_CALL
ODatabaseMetaData::deletesAreDetected( sal_Int32
/*setType*/ ) throw(SQLException
, RuntimeException
)
1200 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::deletesAreDetected" );
1203 // -------------------------------------------------------------------------
1204 sal_Bool SAL_CALL
ODatabaseMetaData::insertsAreDetected( sal_Int32
/*setType*/ ) throw(SQLException
, RuntimeException
)
1206 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::insertsAreDetected" );
1209 // -------------------------------------------------------------------------
1210 sal_Bool SAL_CALL
ODatabaseMetaData::supportsBatchUpdates( ) throw(SQLException
, RuntimeException
)
1212 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsBatchUpdates" );
1215 // -------------------------------------------------------------------------
1216 Reference
< XResultSet
> SAL_CALL
ODatabaseMetaData::getUDTs( const Any
& /*catalog*/, const ::rtl::OUString
& /*schemaPattern*/, const ::rtl::OUString
& /*typeNamePattern*/, const Sequence
< sal_Int32
>& /*types*/ ) throw(SQLException
, RuntimeException
)
1218 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger
, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getUDTs" );
1223 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */