1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 24 // MARKER(update_precomp.py): autogen include statement, do not remove 25 #include "precompiled_connectivity.hxx" 26 #include "file/FDatabaseMetaData.hxx" 27 #include "FDatabaseMetaDataResultSet.hxx" 28 #include <com/sun/star/sdbc/DataType.hpp> 29 #include <com/sun/star/sdbc/ResultSetType.hpp> 30 #include <com/sun/star/sdbc/ResultSetConcurrency.hpp> 31 #include <com/sun/star/ucb/SearchRecursion.hpp> 32 #include <com/sun/star/ucb/SearchCommandArgument.hpp> 33 #include <com/sun/star/ucb/XSortedDynamicResultSetFactory.hpp> 34 #include <com/sun/star/ucb/XContentProvider.hpp> 35 #include <com/sun/star/lang/XUnoTunnel.hpp> 36 #include <tools/urlobj.hxx> 37 #include "file/FDriver.hxx" 38 #include "file/FTable.hxx" 39 #include <comphelper/extract.hxx> 40 #include <ucbhelper/content.hxx> 41 #include <ucbhelper/contentbroker.hxx> 42 #include <tools/debug.hxx> 43 #include <rtl/logfile.hxx> 44 45 46 using namespace com::sun::star::ucb; 47 using namespace connectivity::file; 48 using namespace connectivity; 49 using namespace com::sun::star::uno; 50 using namespace com::sun::star::lang; 51 using namespace com::sun::star::beans; 52 using namespace com::sun::star::sdbc; 53 using namespace com::sun::star::sdbcx; 54 using namespace com::sun::star::lang; 55 using namespace com::sun::star::container; 56 57 DBG_NAME( file_ODatabaseMetaData ) 58 ODatabaseMetaData::ODatabaseMetaData(OConnection* _pCon) : ::connectivity::ODatabaseMetaDataBase(_pCon,_pCon->getConnectionInfo()) 59 ,m_pConnection(_pCon) 60 { 61 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::ODatabaseMetaData" ); 62 DBG_CTOR( file_ODatabaseMetaData, NULL ); 63 } 64 // ------------------------------------------------------------------------- 65 ODatabaseMetaData::~ODatabaseMetaData() 66 { 67 DBG_DTOR( file_ODatabaseMetaData, NULL ); 68 } 69 // ------------------------------------------------------------------------- 70 Reference< XResultSet > ODatabaseMetaData::impl_getTypeInfo_throw( ) 71 { 72 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getTypeInfo_throw" ); 73 return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eTypeInfo ); 74 } 75 // ------------------------------------------------------------------------- 76 ::rtl::OUString ODatabaseMetaData::impl_getCatalogSeparator_throw( ) 77 { 78 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getCatalogSeparator_throw" ); 79 return ::rtl::OUString(); 80 } 81 // ------------------------------------------------------------------------- 82 Reference< XResultSet > SAL_CALL ODatabaseMetaData::getColumns( 83 const Any& /*catalog*/, const ::rtl::OUString& /*schemaPattern*/, const ::rtl::OUString& /*tableNamePattern*/, 84 const ::rtl::OUString& /*columnNamePattern*/ ) throw(SQLException, RuntimeException) 85 { 86 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getColumns" ); 87 OSL_ENSURE(0,"Should be overloaded!"); 88 return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eColumns ); 89 } 90 91 // ------------------------------------------------------------------------- 92 namespace 93 { 94 sal_Int16 isCaseSensitiveParentFolder( const String& _rFolderOrDoc, const String& _rDocName ) 95 { 96 sal_Int16 nIsCS = 1; 97 try 98 { 99 // first get the real content for the URL 100 INetURLObject aContentURL( _rFolderOrDoc ); 101 ::ucbhelper::Content aContent1; 102 { 103 ::ucbhelper::Content aFolderOrDoc( _rFolderOrDoc, Reference< XCommandEnvironment >() ); 104 if ( aFolderOrDoc.isDocument() ) 105 aContent1 = aFolderOrDoc; 106 else 107 { 108 aContentURL = INetURLObject( _rFolderOrDoc, INetURLObject::WAS_ENCODED ); 109 aContentURL.Append( _rDocName ); 110 aContent1 = ::ucbhelper::Content( aContentURL.GetMainURL( INetURLObject::NO_DECODE ), Reference< XCommandEnvironment >() ); 111 } 112 } 113 114 // get two extensions which differ by case only 115 String sExtension1 = aContentURL.getExtension(); 116 String sExtension2( sExtension1 ); 117 sExtension2.ToLowerAscii(); 118 if ( sExtension2 == sExtension1 ) 119 // the extension was already in lower case 120 sExtension2.ToUpperAscii(); 121 122 // the complete URL for the second extension 123 INetURLObject aURL2( aContentURL ); 124 if ( sExtension2.Len() ) 125 aURL2.SetExtension( sExtension2 ); 126 if ( aURL2.GetMainURL(INetURLObject::NO_DECODE) == aContentURL.GetMainURL(INetURLObject::NO_DECODE) ) 127 return -1; 128 129 // the second context 130 sal_Bool bCanAccess = sal_False; 131 ::ucbhelper::Content aContent2; 132 try 133 { 134 aContent2 = ::ucbhelper::Content( aURL2.GetMainURL( INetURLObject::NO_DECODE ), Reference< XCommandEnvironment >() ); 135 bCanAccess = aContent2.isDocument(); 136 } 137 catch( const Exception& ) 138 { 139 } 140 141 if ( bCanAccess ) 142 { 143 // here we have two contents whose URLs differ by case only. 144 // Now let's check if both really refer to the same object .... 145 Reference< XContent > xContent1 = aContent1.get(); 146 Reference< XContent > xContent2 = aContent2.get(); 147 OSL_ENSURE( xContent1.is() && xContent2.is(), "isCaseSensitiveParentFolder: invalid content interfaces!" ); 148 if ( xContent1.is() && xContent2.is() ) 149 { 150 Reference< XContentIdentifier > xID1 = xContent1->getIdentifier(); 151 Reference< XContentIdentifier > xID2 = xContent2->getIdentifier(); 152 OSL_ENSURE( xID1.is() && xID2.is(), "isCaseSensitiveParentFolder: invalid ID interfaces!" ); 153 if ( xID1.is() && xID2.is() ) 154 { 155 // get a generic content provider 156 ::ucbhelper::ContentBroker* pBroker = ::ucbhelper::ContentBroker::get(); 157 Reference< XContentProvider > xProvider; 158 if ( pBroker ) 159 xProvider = pBroker->getContentProviderInterface(); 160 OSL_ENSURE( xProvider.is(), "isCaseSensitiveParentFolder: invalid content broker!" ); 161 if ( xProvider.is() ) 162 { 163 if ( 0 == xProvider->compareContentIds( xID1, xID2 ) ) 164 // finally, we know that the folder is not case-sensitive .... 165 nIsCS = 0; 166 } 167 } 168 } 169 } 170 } 171 catch( const Exception& ) 172 { 173 OSL_ENSURE( sal_False, "isCaseSensitiveParentFolder: caught an unexpected exception!" ); 174 } 175 176 return nIsCS; 177 } 178 } 179 180 // ------------------------------------------------------------------------- 181 Reference< XResultSet > SAL_CALL ODatabaseMetaData::getTables( 182 const Any& /*catalog*/, const ::rtl::OUString& /*schemaPattern*/, 183 const ::rtl::OUString& tableNamePattern, const Sequence< ::rtl::OUString >& types ) throw(SQLException, RuntimeException) 184 { 185 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getTables" ); 186 ::osl::MutexGuard aGuard( m_aMutex ); 187 188 189 ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eTables ); 190 Reference< XResultSet > xRef = pResult; 191 192 // check if any type is given 193 // when no types are given then we have to return all tables e.g. TABLE 194 195 static const ::rtl::OUString aTable(::rtl::OUString::createFromAscii("TABLE")); 196 197 sal_Bool bTableFound = sal_True; 198 sal_Int32 nLength = types.getLength(); 199 if(nLength) 200 { 201 bTableFound = sal_False; 202 203 const ::rtl::OUString* pBegin = types.getConstArray(); 204 const ::rtl::OUString* pEnd = pBegin + nLength; 205 for(;pBegin != pEnd;++pBegin) 206 { 207 if(*pBegin == aTable) 208 { 209 bTableFound = sal_True; 210 break; 211 } 212 } 213 } 214 if(!bTableFound) 215 return xRef; 216 217 Reference<XDynamicResultSet> xContent = m_pConnection->getDir(); 218 Reference < XSortedDynamicResultSetFactory > xSRSFac( 219 m_pConnection->getDriver()->getFactory()->createInstance( ::rtl::OUString::createFromAscii("com.sun.star.ucb.SortedDynamicResultSetFactory") ), UNO_QUERY ); 220 221 Sequence< NumberedSortingInfo > aSortInfo( 1 ); 222 NumberedSortingInfo* pInfo = aSortInfo.getArray(); 223 pInfo[ 0 ].ColumnIndex = 1; 224 pInfo[ 0 ].Ascending = sal_True; 225 226 Reference < XAnyCompareFactory > xFactory; 227 Reference< XDynamicResultSet > xDynamicResultSet; 228 xDynamicResultSet = xSRSFac->createSortedDynamicResultSet( xContent, aSortInfo, xFactory ); 229 Reference<XResultSet> xResultSet = xDynamicResultSet->getStaticResultSet(); 230 231 Reference<XRow> xRow(xResultSet,UNO_QUERY); 232 233 String aFilenameExtension = m_pConnection->getExtension(); 234 String sThisContentExtension; 235 ODatabaseMetaDataResultSet::ORows aRows; 236 // scan the directory for tables 237 ::rtl::OUString aName; 238 INetURLObject aURL; 239 xResultSet->beforeFirst(); 240 241 sal_Bool bKnowCaseSensivity = sal_False; 242 sal_Bool bCaseSensitiveDir = sal_True; 243 sal_Bool bCheckEnabled = m_pConnection->isCheckEnabled(); 244 245 while(xResultSet->next()) 246 { 247 aName = xRow->getString(1); 248 aURL.SetSmartProtocol(INET_PROT_FILE); 249 String sUrl = m_pConnection->getURL() + ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/")) + aName; 250 aURL.SetSmartURL( sUrl ); 251 sThisContentExtension = aURL.getExtension(); 252 253 ODatabaseMetaDataResultSet::ORow aRow(3); 254 aRow.reserve(6); 255 sal_Bool bNewRow = sal_False; 256 257 if ( !bKnowCaseSensivity ) 258 { 259 bKnowCaseSensivity = sal_True; 260 sal_Int16 nCase = isCaseSensitiveParentFolder( m_pConnection->getURL(), aURL.getName() ); 261 switch( nCase ) 262 { 263 case 1: 264 bCaseSensitiveDir = sal_True; 265 break; 266 case -1: 267 bKnowCaseSensivity = sal_False; 268 /** run through */ 269 case 0: 270 bCaseSensitiveDir = sal_False; 271 } 272 if ( bKnowCaseSensivity ) 273 { 274 m_pConnection->setCaseSensitiveExtension( bCaseSensitiveDir, OConnection::GrantAccess() ); 275 if ( !bCaseSensitiveDir ) 276 aFilenameExtension.ToLowerAscii(); 277 } 278 } 279 280 if (aFilenameExtension.Len()) 281 { 282 if ( !bCaseSensitiveDir ) 283 sThisContentExtension.ToLowerAscii(); 284 285 if ( sThisContentExtension == aFilenameExtension ) 286 { 287 aName = aName.replaceAt(aName.getLength()-(aFilenameExtension.Len()+1),aFilenameExtension.Len()+1,::rtl::OUString()); 288 sal_Unicode nChar = aName.toChar(); 289 if ( match(tableNamePattern,aName.getStr(),'\0') && ( !bCheckEnabled || ( bCheckEnabled && ((nChar < '0' || nChar > '9')))) ) 290 { 291 aRow.push_back(new ORowSetValueDecorator(aName)); 292 bNewRow = sal_True; 293 } 294 } 295 } 296 else // no extension, filter myself 297 { 298 sal_Bool bErg = sal_False; 299 do 300 { 301 if (!aURL.getExtension().getLength()) 302 { 303 sal_Unicode nChar = aURL.getBase().getStr()[0]; 304 if(match(tableNamePattern,aURL.getBase().getStr(),'\0') && ( !bCheckEnabled || ( bCheckEnabled && ((nChar < '0' || nChar > '9')))) ) 305 { 306 aRow.push_back(new ORowSetValueDecorator(::rtl::OUString(aURL.getBase()))); 307 bNewRow = sal_True; 308 } 309 break; 310 } 311 else if ( ( bErg = xResultSet->next() ) != sal_False ) 312 { 313 aName = xRow->getString(1); 314 aURL.SetSmartURL(aName); 315 } 316 } while (bErg); 317 } 318 if(bNewRow) 319 { 320 aRow.push_back(new ORowSetValueDecorator(aTable)); 321 aRow.push_back(ODatabaseMetaDataResultSet::getEmptyValue()); 322 323 aRows.push_back(aRow); 324 } 325 } 326 327 pResult->setRows(aRows); 328 329 return xRef; 330 } 331 // ------------------------------------------------------------------------- 332 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxBinaryLiteralLength( ) throw(SQLException, RuntimeException) 333 { 334 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxBinaryLiteralLength" ); 335 return 0; 336 } 337 // ------------------------------------------------------------------------- 338 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxRowSize( ) throw(SQLException, RuntimeException) 339 { 340 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxRowSize" ); 341 return 0; 342 } 343 // ------------------------------------------------------------------------- 344 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxCatalogNameLength( ) throw(SQLException, RuntimeException) 345 { 346 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxCatalogNameLength" ); 347 return 0; 348 } 349 // ------------------------------------------------------------------------- 350 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxCharLiteralLength( ) throw(SQLException, RuntimeException) 351 { 352 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxCharLiteralLength" ); 353 return STRING_MAXLEN; 354 } 355 // ------------------------------------------------------------------------- 356 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxColumnNameLength( ) throw(SQLException, RuntimeException) 357 { 358 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnNameLength" ); 359 return 0; 360 } 361 // ------------------------------------------------------------------------- 362 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxColumnsInIndex( ) throw(SQLException, RuntimeException) 363 { 364 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInIndex" ); 365 return 0; 366 } 367 // ------------------------------------------------------------------------- 368 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxCursorNameLength( ) throw(SQLException, RuntimeException) 369 { 370 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxCursorNameLength" ); 371 return 0; 372 } 373 // ------------------------------------------------------------------------- 374 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxConnections( ) throw(SQLException, RuntimeException) 375 { 376 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxConnections" ); 377 return 0; 378 } 379 // ------------------------------------------------------------------------- 380 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxColumnsInTable( ) throw(SQLException, RuntimeException) 381 { 382 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInTable" ); 383 return 0; 384 } 385 // ------------------------------------------------------------------------- 386 sal_Int32 ODatabaseMetaData::impl_getMaxStatements_throw( ) 387 { 388 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getMaxStatements_throw" ); 389 return 0; 390 } 391 // ------------------------------------------------------------------------- 392 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxTableNameLength( ) throw(SQLException, RuntimeException) 393 { 394 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxTableNameLength" ); 395 return 0; 396 } 397 // ------------------------------------------------------------------------- 398 sal_Int32 ODatabaseMetaData::impl_getMaxTablesInSelect_throw( ) 399 { 400 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getMaxTablesInSelect_throw" ); 401 return 1; 402 } 403 // ------------------------------------------------------------------------- 404 Reference< XResultSet > SAL_CALL ODatabaseMetaData::getTablePrivileges( 405 const Any& /*catalog*/, const ::rtl::OUString& /*schemaPattern*/, const ::rtl::OUString& tableNamePattern ) throw(SQLException, RuntimeException) 406 { 407 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getTablePrivileges" ); 408 ::osl::MutexGuard aGuard( m_aMutex ); 409 410 ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eTablePrivileges ); 411 Reference< XResultSet > xRef = pResult; 412 ODatabaseMetaDataResultSet::ORows aRows; 413 414 415 Reference< XTablesSupplier > xTabSup = m_pConnection->createCatalog(); 416 if( xTabSup.is()) 417 { 418 Reference< XNameAccess> xNames = xTabSup->getTables(); 419 Sequence< ::rtl::OUString > aNames = xNames->getElementNames(); 420 const ::rtl::OUString* pBegin = aNames.getConstArray(); 421 const ::rtl::OUString* pEnd = pBegin + aNames.getLength(); 422 for(;pBegin != pEnd;++pBegin) 423 { 424 if(match(tableNamePattern,pBegin->getStr(),'\0')) 425 { 426 static ODatabaseMetaDataResultSet::ORow aRow(8); 427 428 aRow[2] = new ORowSetValueDecorator(*pBegin); 429 aRow[6] = ODatabaseMetaDataResultSet::getSelectValue(); 430 aRow[7] = new ORowSetValueDecorator(::rtl::OUString::createFromAscii("NO")); 431 aRows.push_back(aRow); 432 433 Reference< XPropertySet> xTable; 434 ::cppu::extractInterface(xTable,xNames->getByName(*pBegin)); 435 if(xTable.is()) 436 { 437 Reference<XUnoTunnel> xTunnel(xTable,UNO_QUERY); 438 if(xTunnel.is()) 439 { 440 OFileTable* pTable = reinterpret_cast< OFileTable* >( xTunnel->getSomething(OFileTable::getUnoTunnelImplementationId()) ); 441 if(pTable) 442 { 443 if(!pTable->isReadOnly()) 444 { 445 aRow[6] = ODatabaseMetaDataResultSet::getInsertValue(); 446 aRows.push_back(aRow); 447 if(!m_pConnection->showDeleted()) 448 { 449 aRow[6] = ODatabaseMetaDataResultSet::getDeleteValue(); 450 aRows.push_back(aRow); 451 } 452 aRow[6] = ODatabaseMetaDataResultSet::getUpdateValue(); 453 aRows.push_back(aRow); 454 aRow[6] = ODatabaseMetaDataResultSet::getCreateValue(); 455 aRows.push_back(aRow); 456 aRow[6] = ODatabaseMetaDataResultSet::getReadValue(); 457 aRows.push_back(aRow); 458 aRow[6] = ODatabaseMetaDataResultSet::getAlterValue(); 459 aRows.push_back(aRow); 460 aRow[6] = ODatabaseMetaDataResultSet::getDropValue(); 461 aRows.push_back(aRow); 462 } 463 } 464 } 465 } 466 } 467 } 468 } 469 470 pResult->setRows(aRows); 471 return xRef; 472 } 473 // ------------------------------------------------------------------------- 474 sal_Bool SAL_CALL ODatabaseMetaData::doesMaxRowSizeIncludeBlobs( ) throw(SQLException, RuntimeException) 475 { 476 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::doesMaxRowSizeIncludeBlobs" ); 477 return sal_True; 478 } 479 // ------------------------------------------------------------------------- 480 sal_Bool SAL_CALL ODatabaseMetaData::storesLowerCaseQuotedIdentifiers( ) throw(SQLException, RuntimeException) 481 { 482 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesLowerCaseQuotedIdentifiers" ); 483 return sal_False; 484 } 485 // ------------------------------------------------------------------------- 486 sal_Bool SAL_CALL ODatabaseMetaData::storesLowerCaseIdentifiers( ) throw(SQLException, RuntimeException) 487 { 488 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesLowerCaseIdentifiers" ); 489 return sal_False; 490 } 491 // ------------------------------------------------------------------------- 492 sal_Bool ODatabaseMetaData::impl_storesMixedCaseQuotedIdentifiers_throw( ) 493 { 494 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_storesMixedCaseQuotedIdentifiers_throw" ); 495 return sal_False; 496 } 497 // ------------------------------------------------------------------------- 498 sal_Bool SAL_CALL ODatabaseMetaData::storesMixedCaseIdentifiers( ) throw(SQLException, RuntimeException) 499 { 500 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesMixedCaseIdentifiers" ); 501 return sal_False; 502 } 503 // ------------------------------------------------------------------------- 504 sal_Bool SAL_CALL ODatabaseMetaData::storesUpperCaseQuotedIdentifiers( ) throw(SQLException, RuntimeException) 505 { 506 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesUpperCaseQuotedIdentifiers" ); 507 return sal_False; 508 } 509 // ------------------------------------------------------------------------- 510 sal_Bool SAL_CALL ODatabaseMetaData::storesUpperCaseIdentifiers( ) throw(SQLException, RuntimeException) 511 { 512 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesUpperCaseIdentifiers" ); 513 return sal_False; 514 } 515 // ------------------------------------------------------------------------- 516 sal_Bool ODatabaseMetaData::impl_supportsAlterTableWithAddColumn_throw( ) 517 { 518 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsAlterTableWithAddColumn_throw" ); 519 return sal_False; 520 } 521 // ------------------------------------------------------------------------- 522 sal_Bool ODatabaseMetaData::impl_supportsAlterTableWithDropColumn_throw( ) 523 { 524 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsAlterTableWithDropColumn_throw" ); 525 return sal_False; 526 } 527 // ------------------------------------------------------------------------- 528 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxIndexLength( ) throw(SQLException, RuntimeException) 529 { 530 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxIndexLength" ); 531 return 0; 532 } 533 // ------------------------------------------------------------------------- 534 sal_Bool SAL_CALL ODatabaseMetaData::supportsNonNullableColumns( ) throw(SQLException, RuntimeException) 535 { 536 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsNonNullableColumns" ); 537 return sal_False; 538 } 539 // ------------------------------------------------------------------------- 540 ::rtl::OUString SAL_CALL ODatabaseMetaData::getCatalogTerm( ) throw(SQLException, RuntimeException) 541 { 542 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getCatalogTerm" ); 543 return ::rtl::OUString(); 544 } 545 // ------------------------------------------------------------------------- 546 ::rtl::OUString ODatabaseMetaData::impl_getIdentifierQuoteString_throw( ) 547 { 548 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getIdentifierQuoteString_throw" ); 549 static const ::rtl::OUString sQuote = ::rtl::OUString::createFromAscii("\""); 550 return sQuote; 551 } 552 // ------------------------------------------------------------------------- 553 ::rtl::OUString SAL_CALL ODatabaseMetaData::getExtraNameCharacters( ) throw(SQLException, RuntimeException) 554 { 555 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getExtraNameCharacters" ); 556 return ::rtl::OUString(); 557 } 558 // ------------------------------------------------------------------------- 559 sal_Bool SAL_CALL ODatabaseMetaData::supportsDifferentTableCorrelationNames( ) throw(SQLException, RuntimeException) 560 { 561 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsDifferentTableCorrelationNames" ); 562 return sal_True; 563 } 564 // ------------------------------------------------------------------------- 565 sal_Bool ODatabaseMetaData::impl_isCatalogAtStart_throw( ) 566 { 567 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_isCatalogAtStart_throw" ); 568 return sal_True; 569 } 570 // ------------------------------------------------------------------------- 571 sal_Bool SAL_CALL ODatabaseMetaData::dataDefinitionIgnoredInTransactions( ) throw(SQLException, RuntimeException) 572 { 573 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::dataDefinitionIgnoredInTransactions" ); 574 return sal_True; 575 } 576 // ------------------------------------------------------------------------- 577 sal_Bool SAL_CALL ODatabaseMetaData::dataDefinitionCausesTransactionCommit( ) throw(SQLException, RuntimeException) 578 { 579 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::dataDefinitionCausesTransactionCommit" ); 580 return sal_True; 581 } 582 // ------------------------------------------------------------------------- 583 sal_Bool SAL_CALL ODatabaseMetaData::supportsDataManipulationTransactionsOnly( ) throw(SQLException, RuntimeException) 584 { 585 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsDataManipulationTransactionsOnly" ); 586 return sal_False; 587 } 588 // ------------------------------------------------------------------------- 589 sal_Bool SAL_CALL ODatabaseMetaData::supportsDataDefinitionAndDataManipulationTransactions( ) throw(SQLException, RuntimeException) 590 { 591 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsDataDefinitionAndDataManipulationTransactions" ); 592 return sal_False; 593 } 594 // ------------------------------------------------------------------------- 595 sal_Bool SAL_CALL ODatabaseMetaData::supportsPositionedDelete( ) throw(SQLException, RuntimeException) 596 { 597 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsPositionedDelete" ); 598 return sal_False; 599 } 600 // ------------------------------------------------------------------------- 601 sal_Bool SAL_CALL ODatabaseMetaData::supportsPositionedUpdate( ) throw(SQLException, RuntimeException) 602 { 603 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsPositionedUpdate" ); 604 return sal_False; 605 } 606 // ------------------------------------------------------------------------- 607 sal_Bool SAL_CALL ODatabaseMetaData::supportsOpenStatementsAcrossRollback( ) throw(SQLException, RuntimeException) 608 { 609 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOpenStatementsAcrossRollback" ); 610 return sal_False; 611 } 612 // ------------------------------------------------------------------------- 613 sal_Bool SAL_CALL ODatabaseMetaData::supportsOpenStatementsAcrossCommit( ) throw(SQLException, RuntimeException) 614 { 615 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOpenStatementsAcrossCommit" ); 616 return sal_False; 617 } 618 // ------------------------------------------------------------------------- 619 sal_Bool SAL_CALL ODatabaseMetaData::supportsOpenCursorsAcrossCommit( ) throw(SQLException, RuntimeException) 620 { 621 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOpenCursorsAcrossCommit" ); 622 return sal_False; 623 } 624 // ------------------------------------------------------------------------- 625 sal_Bool SAL_CALL ODatabaseMetaData::supportsOpenCursorsAcrossRollback( ) throw(SQLException, RuntimeException) 626 { 627 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOpenCursorsAcrossRollback" ); 628 return sal_False; 629 } 630 // ------------------------------------------------------------------------- 631 sal_Bool SAL_CALL ODatabaseMetaData::supportsTransactionIsolationLevel( sal_Int32 /*level*/ ) throw(SQLException, RuntimeException) 632 { 633 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsTransactionIsolationLevel" ); 634 return sal_False; 635 } 636 // ------------------------------------------------------------------------- 637 sal_Bool ODatabaseMetaData::impl_supportsSchemasInDataManipulation_throw( ) 638 { 639 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsSchemasInDataManipulation_throw" ); 640 return sal_False; 641 } 642 // ------------------------------------------------------------------------- 643 sal_Bool SAL_CALL ODatabaseMetaData::supportsANSI92FullSQL( ) throw(SQLException, RuntimeException) 644 { 645 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsANSI92FullSQL" ); 646 return sal_False; 647 } 648 // ------------------------------------------------------------------------- 649 sal_Bool SAL_CALL ODatabaseMetaData::supportsANSI92EntryLevelSQL( ) throw(SQLException, RuntimeException) 650 { 651 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsANSI92EntryLevelSQL" ); 652 return sal_False; 653 } 654 // ------------------------------------------------------------------------- 655 sal_Bool SAL_CALL ODatabaseMetaData::supportsIntegrityEnhancementFacility( ) throw(SQLException, RuntimeException) 656 { 657 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsIntegrityEnhancementFacility" ); 658 return sal_False; 659 } 660 // ------------------------------------------------------------------------- 661 sal_Bool SAL_CALL ODatabaseMetaData::supportsSchemasInIndexDefinitions( ) throw(SQLException, RuntimeException) 662 { 663 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSchemasInIndexDefinitions" ); 664 return sal_False; 665 } 666 // ------------------------------------------------------------------------- 667 sal_Bool ODatabaseMetaData::impl_supportsSchemasInTableDefinitions_throw( ) 668 { 669 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsSchemasInTableDefinitions_throw" ); 670 return sal_False; 671 } 672 // ------------------------------------------------------------------------- 673 sal_Bool ODatabaseMetaData::impl_supportsCatalogsInTableDefinitions_throw( ) 674 { 675 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsCatalogsInTableDefinitions_throw" ); 676 return sal_False; 677 } 678 // ------------------------------------------------------------------------- 679 sal_Bool SAL_CALL ODatabaseMetaData::supportsCatalogsInIndexDefinitions( ) throw(SQLException, RuntimeException) 680 { 681 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCatalogsInIndexDefinitions" ); 682 return sal_False; 683 } 684 // ------------------------------------------------------------------------- 685 sal_Bool ODatabaseMetaData::impl_supportsCatalogsInDataManipulation_throw( ) 686 { 687 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsCatalogsInDataManipulation_throw" ); 688 return sal_False; 689 } 690 // ------------------------------------------------------------------------- 691 sal_Bool SAL_CALL ODatabaseMetaData::supportsOuterJoins( ) throw(SQLException, RuntimeException) 692 { 693 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOuterJoins" ); 694 return sal_False; 695 } 696 // ------------------------------------------------------------------------- 697 Reference< XResultSet > SAL_CALL ODatabaseMetaData::getTableTypes( ) throw(SQLException, RuntimeException) 698 { 699 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getTableTypes" ); 700 ::osl::MutexGuard aGuard( m_aMutex ); 701 702 ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eTableTypes ); 703 Reference< XResultSet > xRef = pResult; 704 static ODatabaseMetaDataResultSet::ORows aRows; 705 if(aRows.empty()) 706 { 707 ODatabaseMetaDataResultSet::ORow aRow; 708 aRow.push_back(ODatabaseMetaDataResultSet::getEmptyValue()); 709 aRow.push_back(new ORowSetValueDecorator(::rtl::OUString::createFromAscii("TABLE"))); 710 aRows.push_back(aRow); 711 } 712 pResult->setRows(aRows); 713 return xRef; 714 } 715 // ------------------------------------------------------------------------- 716 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxStatementLength( ) throw(SQLException, RuntimeException) 717 { 718 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxStatementLength" ); 719 return 0; 720 } 721 // ------------------------------------------------------------------------- 722 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxProcedureNameLength( ) throw(SQLException, RuntimeException) 723 { 724 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxProcedureNameLength" ); 725 return 0; 726 } 727 // ------------------------------------------------------------------------- 728 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxSchemaNameLength( ) throw(SQLException, RuntimeException) 729 { 730 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxSchemaNameLength" ); 731 return 0; 732 } 733 // ------------------------------------------------------------------------- 734 sal_Bool SAL_CALL ODatabaseMetaData::supportsTransactions( ) throw(SQLException, RuntimeException) 735 { 736 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsTransactions" ); 737 return sal_False; 738 } 739 // ------------------------------------------------------------------------- 740 sal_Bool SAL_CALL ODatabaseMetaData::allProceduresAreCallable( ) throw(SQLException, RuntimeException) 741 { 742 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::allProceduresAreCallable" ); 743 return sal_False; 744 } 745 // ------------------------------------------------------------------------- 746 sal_Bool SAL_CALL ODatabaseMetaData::supportsStoredProcedures( ) throw(SQLException, RuntimeException) 747 { 748 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsStoredProcedures" ); 749 return sal_False; 750 } 751 // ------------------------------------------------------------------------- 752 sal_Bool SAL_CALL ODatabaseMetaData::supportsSelectForUpdate( ) throw(SQLException, RuntimeException) 753 { 754 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSelectForUpdate" ); 755 return sal_False; 756 } 757 // ------------------------------------------------------------------------- 758 sal_Bool SAL_CALL ODatabaseMetaData::allTablesAreSelectable( ) throw(SQLException, RuntimeException) 759 { 760 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::allTablesAreSelectable" ); 761 return sal_True; 762 } 763 // ------------------------------------------------------------------------- 764 sal_Bool SAL_CALL ODatabaseMetaData::isReadOnly( ) throw(SQLException, RuntimeException) 765 { 766 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::isReadOnly" ); 767 return sal_True; 768 } 769 // ------------------------------------------------------------------------- 770 sal_Bool SAL_CALL ODatabaseMetaData::usesLocalFiles( ) throw(SQLException, RuntimeException) 771 { 772 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::usesLocalFiles" ); 773 return sal_True; 774 } 775 // ------------------------------------------------------------------------- 776 sal_Bool SAL_CALL ODatabaseMetaData::usesLocalFilePerTable( ) throw(SQLException, RuntimeException) 777 { 778 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::usesLocalFilePerTable" ); 779 return sal_True; 780 } 781 // ------------------------------------------------------------------------- 782 sal_Bool SAL_CALL ODatabaseMetaData::supportsTypeConversion( ) throw(SQLException, RuntimeException) 783 { 784 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsTypeConversion" ); 785 return sal_False; 786 } 787 // ------------------------------------------------------------------------- 788 sal_Bool SAL_CALL ODatabaseMetaData::nullPlusNonNullIsNull( ) throw(SQLException, RuntimeException) 789 { 790 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullPlusNonNullIsNull" ); 791 return sal_True; 792 } 793 // ------------------------------------------------------------------------- 794 sal_Bool SAL_CALL ODatabaseMetaData::supportsColumnAliasing( ) throw(SQLException, RuntimeException) 795 { 796 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsColumnAliasing" ); 797 return sal_True; 798 } 799 // ------------------------------------------------------------------------- 800 sal_Bool SAL_CALL ODatabaseMetaData::supportsTableCorrelationNames( ) throw(SQLException, RuntimeException) 801 { 802 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsTableCorrelationNames" ); 803 return sal_True; 804 } 805 // ------------------------------------------------------------------------- 806 sal_Bool SAL_CALL ODatabaseMetaData::supportsConvert( sal_Int32 /*fromType*/, sal_Int32 /*toType*/ ) throw(SQLException, RuntimeException) 807 { 808 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsConvert" ); 809 return sal_False; 810 } 811 // ------------------------------------------------------------------------- 812 sal_Bool SAL_CALL ODatabaseMetaData::supportsExpressionsInOrderBy( ) throw(SQLException, RuntimeException) 813 { 814 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsExpressionsInOrderBy" ); 815 return sal_False; 816 } 817 // ------------------------------------------------------------------------- 818 sal_Bool SAL_CALL ODatabaseMetaData::supportsGroupBy( ) throw(SQLException, RuntimeException) 819 { 820 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsGroupBy" ); 821 return sal_False; 822 } 823 // ------------------------------------------------------------------------- 824 sal_Bool SAL_CALL ODatabaseMetaData::supportsGroupByBeyondSelect( ) throw(SQLException, RuntimeException) 825 { 826 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsGroupByBeyondSelect" ); 827 return sal_False; 828 } 829 // ------------------------------------------------------------------------- 830 sal_Bool SAL_CALL ODatabaseMetaData::supportsGroupByUnrelated( ) throw(SQLException, RuntimeException) 831 { 832 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsGroupByUnrelated" ); 833 return sal_False; 834 } 835 // ------------------------------------------------------------------------- 836 sal_Bool SAL_CALL ODatabaseMetaData::supportsMultipleTransactions( ) throw(SQLException, RuntimeException) 837 { 838 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsMultipleTransactions" ); 839 return sal_False; 840 } 841 // ------------------------------------------------------------------------- 842 sal_Bool SAL_CALL ODatabaseMetaData::supportsMultipleResultSets( ) throw(SQLException, RuntimeException) 843 { 844 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsMultipleResultSets" ); 845 return sal_False; 846 } 847 // ------------------------------------------------------------------------- 848 sal_Bool SAL_CALL ODatabaseMetaData::supportsLikeEscapeClause( ) throw(SQLException, RuntimeException) 849 { 850 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsLikeEscapeClause" ); 851 return sal_False; 852 } 853 // ------------------------------------------------------------------------- 854 sal_Bool SAL_CALL ODatabaseMetaData::supportsOrderByUnrelated( ) throw(SQLException, RuntimeException) 855 { 856 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOrderByUnrelated" ); 857 return sal_True; 858 } 859 // ------------------------------------------------------------------------- 860 sal_Bool SAL_CALL ODatabaseMetaData::supportsUnion( ) throw(SQLException, RuntimeException) 861 { 862 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsUnion" ); 863 return sal_False; 864 } 865 // ------------------------------------------------------------------------- 866 sal_Bool SAL_CALL ODatabaseMetaData::supportsUnionAll( ) throw(SQLException, RuntimeException) 867 { 868 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsUnionAll" ); 869 return sal_False; 870 } 871 // ------------------------------------------------------------------------- 872 sal_Bool SAL_CALL ODatabaseMetaData::supportsMixedCaseIdentifiers( ) throw(SQLException, RuntimeException) 873 { 874 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsMixedCaseIdentifiers" ); 875 return sal_True; 876 } 877 // ------------------------------------------------------------------------- 878 sal_Bool ODatabaseMetaData::impl_supportsMixedCaseQuotedIdentifiers_throw( ) 879 { 880 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsMixedCaseQuotedIdentifiers_throw" ); 881 return sal_False; 882 } 883 // ------------------------------------------------------------------------- 884 sal_Bool SAL_CALL ODatabaseMetaData::nullsAreSortedAtEnd( ) throw(SQLException, RuntimeException) 885 { 886 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullsAreSortedAtEnd" ); 887 return sal_False; 888 } 889 // ------------------------------------------------------------------------- 890 sal_Bool SAL_CALL ODatabaseMetaData::nullsAreSortedAtStart( ) throw(SQLException, RuntimeException) 891 { 892 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullsAreSortedAtStart" ); 893 return sal_True; 894 } 895 // ------------------------------------------------------------------------- 896 sal_Bool SAL_CALL ODatabaseMetaData::nullsAreSortedHigh( ) throw(SQLException, RuntimeException) 897 { 898 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullsAreSortedHigh" ); 899 return sal_False; 900 } 901 // ------------------------------------------------------------------------- 902 sal_Bool SAL_CALL ODatabaseMetaData::nullsAreSortedLow( ) throw(SQLException, RuntimeException) 903 { 904 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullsAreSortedLow" ); 905 return sal_True; 906 } 907 // ------------------------------------------------------------------------- 908 sal_Bool SAL_CALL ODatabaseMetaData::supportsSchemasInProcedureCalls( ) throw(SQLException, RuntimeException) 909 { 910 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSchemasInProcedureCalls" ); 911 return sal_False; 912 } 913 // ------------------------------------------------------------------------- 914 sal_Bool SAL_CALL ODatabaseMetaData::supportsSchemasInPrivilegeDefinitions( ) throw(SQLException, RuntimeException) 915 { 916 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSchemasInPrivilegeDefinitions" ); 917 return sal_False; 918 } 919 // ------------------------------------------------------------------------- 920 sal_Bool SAL_CALL ODatabaseMetaData::supportsCatalogsInProcedureCalls( ) throw(SQLException, RuntimeException) 921 { 922 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCatalogsInProcedureCalls" ); 923 return sal_False; 924 } 925 // ------------------------------------------------------------------------- 926 sal_Bool SAL_CALL ODatabaseMetaData::supportsCatalogsInPrivilegeDefinitions( ) throw(SQLException, RuntimeException) 927 { 928 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCatalogsInPrivilegeDefinitions" ); 929 return sal_False; 930 } 931 // ------------------------------------------------------------------------- 932 sal_Bool SAL_CALL ODatabaseMetaData::supportsCorrelatedSubqueries( ) throw(SQLException, RuntimeException) 933 { 934 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCorrelatedSubqueries" ); 935 return sal_False; 936 } 937 // ------------------------------------------------------------------------- 938 sal_Bool SAL_CALL ODatabaseMetaData::supportsSubqueriesInComparisons( ) throw(SQLException, RuntimeException) 939 { 940 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSubqueriesInComparisons" ); 941 return sal_False; 942 } 943 // ------------------------------------------------------------------------- 944 sal_Bool SAL_CALL ODatabaseMetaData::supportsSubqueriesInExists( ) throw(SQLException, RuntimeException) 945 { 946 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSubqueriesInExists" ); 947 return sal_False; 948 } 949 // ------------------------------------------------------------------------- 950 sal_Bool SAL_CALL ODatabaseMetaData::supportsSubqueriesInIns( ) throw(SQLException, RuntimeException) 951 { 952 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSubqueriesInIns" ); 953 return sal_False; 954 } 955 // ------------------------------------------------------------------------- 956 sal_Bool SAL_CALL ODatabaseMetaData::supportsSubqueriesInQuantifieds( ) throw(SQLException, RuntimeException) 957 { 958 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSubqueriesInQuantifieds" ); 959 return sal_False; 960 } 961 // ------------------------------------------------------------------------- 962 sal_Bool SAL_CALL ODatabaseMetaData::supportsANSI92IntermediateSQL( ) throw(SQLException, RuntimeException) 963 { 964 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsANSI92IntermediateSQL" ); 965 return sal_False; 966 } 967 // ------------------------------------------------------------------------- 968 ::rtl::OUString SAL_CALL ODatabaseMetaData::getURL( ) throw(SQLException, RuntimeException) 969 { 970 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getURL" ); 971 static const ::rtl::OUString aValue = ::rtl::OUString::createFromAscii("sdbc:file:"); 972 return aValue; 973 } 974 // ------------------------------------------------------------------------- 975 ::rtl::OUString SAL_CALL ODatabaseMetaData::getUserName( ) throw(SQLException, RuntimeException) 976 { 977 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getUserName" ); 978 return ::rtl::OUString(); 979 } 980 // ------------------------------------------------------------------------- 981 ::rtl::OUString SAL_CALL ODatabaseMetaData::getDriverName( ) throw(SQLException, RuntimeException) 982 { 983 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDriverName" ); 984 return ::rtl::OUString(); 985 } 986 // ------------------------------------------------------------------------- 987 ::rtl::OUString SAL_CALL ODatabaseMetaData::getDriverVersion( ) throw(SQLException, RuntimeException) 988 { 989 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDriverVersion" ); 990 return ::rtl::OUString::valueOf((sal_Int32)1); 991 } 992 // ------------------------------------------------------------------------- 993 ::rtl::OUString SAL_CALL ODatabaseMetaData::getDatabaseProductVersion( ) throw(SQLException, RuntimeException) 994 { 995 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDatabaseProductVersion" ); 996 return ::rtl::OUString::valueOf((sal_Int32)0); 997 } 998 // ------------------------------------------------------------------------- 999 ::rtl::OUString SAL_CALL ODatabaseMetaData::getDatabaseProductName( ) throw(SQLException, RuntimeException) 1000 { 1001 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDatabaseProductName" ); 1002 return ::rtl::OUString(); 1003 } 1004 // ------------------------------------------------------------------------- 1005 ::rtl::OUString SAL_CALL ODatabaseMetaData::getProcedureTerm( ) throw(SQLException, RuntimeException) 1006 { 1007 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getProcedureTerm" ); 1008 return ::rtl::OUString(); 1009 } 1010 // ------------------------------------------------------------------------- 1011 ::rtl::OUString SAL_CALL ODatabaseMetaData::getSchemaTerm( ) throw(SQLException, RuntimeException) 1012 { 1013 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getSchemaTerm" ); 1014 return ::rtl::OUString(); 1015 } 1016 // ------------------------------------------------------------------------- 1017 sal_Int32 SAL_CALL ODatabaseMetaData::getDriverMajorVersion( ) throw(RuntimeException) 1018 { 1019 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDriverMajorVersion" ); 1020 return 0; 1021 } 1022 // ------------------------------------------------------------------------- 1023 sal_Int32 SAL_CALL ODatabaseMetaData::getDefaultTransactionIsolation( ) throw(SQLException, RuntimeException) 1024 { 1025 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDefaultTransactionIsolation" ); 1026 return 0; 1027 } 1028 // ------------------------------------------------------------------------- 1029 sal_Int32 SAL_CALL ODatabaseMetaData::getDriverMinorVersion( ) throw(RuntimeException) 1030 { 1031 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDriverMinorVersion" ); 1032 return 0; 1033 } 1034 // ------------------------------------------------------------------------- 1035 ::rtl::OUString SAL_CALL ODatabaseMetaData::getSQLKeywords( ) throw(SQLException, RuntimeException) 1036 { 1037 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getSQLKeywords" ); 1038 return ::rtl::OUString(); 1039 } 1040 // ------------------------------------------------------------------------- 1041 ::rtl::OUString SAL_CALL ODatabaseMetaData::getSearchStringEscape( ) throw(SQLException, RuntimeException) 1042 { 1043 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getSearchStringEscape" ); 1044 return ::rtl::OUString(); 1045 } 1046 // ------------------------------------------------------------------------- 1047 ::rtl::OUString SAL_CALL ODatabaseMetaData::getStringFunctions( ) throw(SQLException, RuntimeException) 1048 { 1049 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getStringFunctions" ); 1050 return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("UCASE,LCASE,ASCII,LENGTH,OCTET_LENGTH,CHAR_LENGTH,CHARACTER_LENGTH,CHAR,CONCAT,LOCATE,SUBSTRING,LTRIM,RTRIM,SPACE,REPLACE,REPEAT,INSERT,LEFT,RIGHT")); 1051 } 1052 // ------------------------------------------------------------------------- 1053 ::rtl::OUString SAL_CALL ODatabaseMetaData::getTimeDateFunctions( ) throw(SQLException, RuntimeException) 1054 { 1055 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getTimeDateFunctions" ); 1056 return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("DAYOFWEEK,DAYOFMONTH,DAYOFYEAR,MONTH,DAYNAME,MONTHNAME,QUARTER,WEEK,YEAR,HOUR,MINUTE,SECOND,CURDATE,CURTIME,NOW")); 1057 } 1058 // ------------------------------------------------------------------------- 1059 ::rtl::OUString SAL_CALL ODatabaseMetaData::getSystemFunctions( ) throw(SQLException, RuntimeException) 1060 { 1061 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getSystemFunctions" ); 1062 return ::rtl::OUString(); 1063 } 1064 // ------------------------------------------------------------------------- 1065 ::rtl::OUString SAL_CALL ODatabaseMetaData::getNumericFunctions( ) throw(SQLException, RuntimeException) 1066 { 1067 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getNumericFunctions" ); 1068 return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ABS,SIGN,MOD,FLOOR,CEILING,ROUND,EXP,LN,LOG,LOG10,POWER,SQRT,PI,COS,SIN,TAN,ACOS,ASIN,ATAN,ATAN2,DEGREES,RADIANS")); 1069 } 1070 // ------------------------------------------------------------------------- 1071 sal_Bool SAL_CALL ODatabaseMetaData::supportsExtendedSQLGrammar( ) throw(SQLException, RuntimeException) 1072 { 1073 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsExtendedSQLGrammar" ); 1074 return sal_False; 1075 } 1076 // ------------------------------------------------------------------------- 1077 sal_Bool SAL_CALL ODatabaseMetaData::supportsCoreSQLGrammar( ) throw(SQLException, RuntimeException) 1078 { 1079 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCoreSQLGrammar" ); 1080 return sal_False; 1081 } 1082 // ------------------------------------------------------------------------- 1083 sal_Bool SAL_CALL ODatabaseMetaData::supportsMinimumSQLGrammar( ) throw(SQLException, RuntimeException) 1084 { 1085 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsMinimumSQLGrammar" ); 1086 return sal_True; 1087 } 1088 // ------------------------------------------------------------------------- 1089 sal_Bool SAL_CALL ODatabaseMetaData::supportsFullOuterJoins( ) throw(SQLException, RuntimeException) 1090 { 1091 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsFullOuterJoins" ); 1092 return sal_False; 1093 } 1094 // ------------------------------------------------------------------------- 1095 sal_Bool SAL_CALL ODatabaseMetaData::supportsLimitedOuterJoins( ) throw(SQLException, RuntimeException) 1096 { 1097 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsLimitedOuterJoins" ); 1098 return sal_False; 1099 } 1100 // ------------------------------------------------------------------------- 1101 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxColumnsInGroupBy( ) throw(SQLException, RuntimeException) 1102 { 1103 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInGroupBy" ); 1104 return 0; 1105 } 1106 // ------------------------------------------------------------------------- 1107 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxColumnsInOrderBy( ) throw(SQLException, RuntimeException) 1108 { 1109 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInOrderBy" ); 1110 return 0; 1111 } 1112 // ------------------------------------------------------------------------- 1113 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxColumnsInSelect( ) throw(SQLException, RuntimeException) 1114 { 1115 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInSelect" ); 1116 return 0; 1117 } 1118 // ------------------------------------------------------------------------- 1119 sal_Int32 SAL_CALL ODatabaseMetaData::getMaxUserNameLength( ) throw(SQLException, RuntimeException) 1120 { 1121 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxUserNameLength" ); 1122 return 0; 1123 } 1124 // ------------------------------------------------------------------------- 1125 sal_Bool SAL_CALL ODatabaseMetaData::supportsResultSetType( sal_Int32 setType ) throw(SQLException, RuntimeException) 1126 { 1127 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsResultSetType" ); 1128 switch(setType) 1129 { 1130 case ResultSetType::FORWARD_ONLY: 1131 return sal_True; 1132 case ResultSetType::SCROLL_INSENSITIVE: 1133 case ResultSetType::SCROLL_SENSITIVE: 1134 break; 1135 } 1136 return sal_False; 1137 } 1138 // ------------------------------------------------------------------------- 1139 sal_Bool SAL_CALL ODatabaseMetaData::supportsResultSetConcurrency( sal_Int32 setType, sal_Int32 /*concurrency*/ ) throw(SQLException, RuntimeException) 1140 { 1141 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsResultSetConcurrency" ); 1142 switch(setType) 1143 { 1144 case ResultSetType::FORWARD_ONLY: 1145 return sal_True; 1146 case ResultSetType::SCROLL_INSENSITIVE: 1147 case ResultSetType::SCROLL_SENSITIVE: 1148 break; 1149 } 1150 return sal_False; 1151 } 1152 // ------------------------------------------------------------------------- 1153 sal_Bool SAL_CALL ODatabaseMetaData::ownUpdatesAreVisible( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException) 1154 { 1155 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::ownUpdatesAreVisible" ); 1156 return sal_True; 1157 } 1158 // ------------------------------------------------------------------------- 1159 sal_Bool SAL_CALL ODatabaseMetaData::ownDeletesAreVisible( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException) 1160 { 1161 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::ownDeletesAreVisible" ); 1162 return sal_True; 1163 } 1164 // ------------------------------------------------------------------------- 1165 sal_Bool SAL_CALL ODatabaseMetaData::ownInsertsAreVisible( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException) 1166 { 1167 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::ownInsertsAreVisible" ); 1168 return sal_True; 1169 } 1170 // ------------------------------------------------------------------------- 1171 sal_Bool SAL_CALL ODatabaseMetaData::othersUpdatesAreVisible( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException) 1172 { 1173 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::othersUpdatesAreVisible" ); 1174 return sal_True; 1175 } 1176 // ------------------------------------------------------------------------- 1177 sal_Bool SAL_CALL ODatabaseMetaData::othersDeletesAreVisible( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException) 1178 { 1179 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::othersDeletesAreVisible" ); 1180 return sal_True; 1181 } 1182 // ------------------------------------------------------------------------- 1183 sal_Bool SAL_CALL ODatabaseMetaData::othersInsertsAreVisible( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException) 1184 { 1185 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::othersInsertsAreVisible" ); 1186 return sal_True; 1187 } 1188 // ------------------------------------------------------------------------- 1189 sal_Bool SAL_CALL ODatabaseMetaData::updatesAreDetected( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException) 1190 { 1191 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::updatesAreDetected" ); 1192 return sal_False; 1193 } 1194 // ------------------------------------------------------------------------- 1195 sal_Bool SAL_CALL ODatabaseMetaData::deletesAreDetected( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException) 1196 { 1197 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::deletesAreDetected" ); 1198 return sal_False; 1199 } 1200 // ------------------------------------------------------------------------- 1201 sal_Bool SAL_CALL ODatabaseMetaData::insertsAreDetected( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException) 1202 { 1203 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::insertsAreDetected" ); 1204 return sal_False; 1205 } 1206 // ------------------------------------------------------------------------- 1207 sal_Bool SAL_CALL ODatabaseMetaData::supportsBatchUpdates( ) throw(SQLException, RuntimeException) 1208 { 1209 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsBatchUpdates" ); 1210 return sal_False; 1211 } 1212 // ------------------------------------------------------------------------- 1213 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) 1214 { 1215 RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getUDTs" ); 1216 return NULL; 1217 } 1218 1219 1220