LCOV - code coverage report
Current view: top level - connectivity/source/drivers/file - FDatabaseMetaData.cxx (source / functions) Hit Total Coverage
Test: commit 0e63ca4fde4e446f346e35849c756a30ca294aab Lines: 127 462 27.5 %
Date: 2014-04-11 Functions: 12 140 8.6 %
Legend: Lines: hit not hit

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

Generated by: LCOV version 1.10