LCOV - code coverage report
Current view: top level - connectivity/source/commontools - FDatabaseMetaDataResultSet.cxx (source / functions) Hit Total Coverage
Test: libreoffice_filtered.info Lines: 122 425 28.7 %
Date: 2012-08-25 Functions: 29 100 29.0 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 113 731 15.5 %

           Branch data     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                 :            : 
      21                 :            : #include "ParameterSubstitution.hxx"
      22                 :            : #include "FDatabaseMetaDataResultSet.hxx"
      23                 :            : #include "FDatabaseMetaDataResultSetMetaData.hxx"
      24                 :            : #include <com/sun/star/sdbc/DataType.hpp>
      25                 :            : #include <com/sun/star/sdbc/ColumnSearch.hpp>
      26                 :            : #include <com/sun/star/sdbc/KeyRule.hpp>
      27                 :            : #include <com/sun/star/sdbc/ProcedureResult.hpp>
      28                 :            : #include <com/sun/star/sdbc/IndexType.hpp>
      29                 :            : #include <comphelper/property.hxx>
      30                 :            : #include <com/sun/star/lang/DisposedException.hpp>
      31                 :            : #include <com/sun/star/sdbc/ResultSetConcurrency.hpp>
      32                 :            : #include <com/sun/star/sdbc/ResultSetType.hpp>
      33                 :            : #include <com/sun/star/sdbc/FetchDirection.hpp>
      34                 :            : #include <com/sun/star/beans/PropertyAttribute.hpp>
      35                 :            : #include <cppuhelper/typeprovider.hxx>
      36                 :            : #include <comphelper/sequence.hxx>
      37                 :            : #include <cppuhelper/factory.hxx>
      38                 :            : #include <cppuhelper/implementationentry.hxx>
      39                 :            : #include "connectivity/dbexception.hxx"
      40                 :            : #include "TConnection.hxx"
      41                 :            : 
      42                 :            : using namespace connectivity;
      43                 :            : using namespace dbtools;
      44                 :            : using namespace cppu;
      45                 :            : //------------------------------------------------------------------------------
      46                 :            : using namespace ::com::sun::star::beans;
      47                 :            : using namespace ::com::sun::star::uno;
      48                 :            : using namespace ::com::sun::star::sdbcx;
      49                 :            : using namespace ::com::sun::star::sdbc;
      50                 :            : using namespace ::com::sun::star::container;
      51                 :            : using namespace ::com::sun::star::lang;
      52                 :            : // -------------------------------------------------------------------------
      53                 :          0 : ODatabaseMetaDataResultSet::ODatabaseMetaDataResultSet()
      54                 :            :     :ODatabaseMetaDataResultSet_BASE(m_aMutex)
      55                 :            :     ,::comphelper::OPropertyContainer(ODatabaseMetaDataResultSet_BASE::rBHelper)
      56                 :            :     ,m_aStatement(NULL)
      57                 :            :     ,m_xMetaData(NULL)
      58                 :            :     ,m_bBOF(sal_True)
      59 [ #  # ][ #  # ]:          0 :     ,m_bEOF(sal_True)
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
      60                 :            : {
      61         [ #  # ]:          0 :     construct();
      62                 :          0 : }
      63                 :            : 
      64                 :            : // -------------------------------------------------------------------------
      65                 :        264 : ODatabaseMetaDataResultSet::ODatabaseMetaDataResultSet( MetaDataResultSetType _eType )
      66                 :            :     :ODatabaseMetaDataResultSet_BASE(m_aMutex)
      67                 :            :     ,::comphelper::OPropertyContainer(ODatabaseMetaDataResultSet_BASE::rBHelper)
      68                 :            :     ,m_aStatement(NULL)
      69                 :            :     ,m_xMetaData(NULL)
      70                 :            :     ,m_bBOF(sal_True)
      71 [ +  - ][ +  - ]:        264 :     ,m_bEOF(sal_True)
         [ +  - ][ +  - ]
         [ +  - ][ +  - ]
      72                 :            : {
      73         [ +  - ]:        264 :     construct();
      74                 :            : 
      75         [ +  - ]:        264 :     setType(_eType);
      76                 :        264 : }
      77                 :            : 
      78                 :            : // -------------------------------------------------------------------------
      79 [ +  - ][ +  - ]:        264 : ODatabaseMetaDataResultSet::~ODatabaseMetaDataResultSet()
         [ +  - ][ +  - ]
                 [ +  - ]
      80                 :            : {
      81         [ -  + ]:        528 : }
      82                 :            : // -------------------------------------------------------------------------
      83                 :        264 : void ODatabaseMetaDataResultSet::construct()
      84                 :            : {
      85         [ +  - ]:        264 :     registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_FETCHSIZE),           PROPERTY_ID_FETCHSIZE,          0,&m_nFetchSize,        ::getCppuType(static_cast<sal_Int32*>(0)));
      86         [ +  - ]:        264 :     registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_RESULTSETTYPE),        PROPERTY_ID_RESULTSETTYPE,          PropertyAttribute::READONLY,&m_nResultSetType,       ::getCppuType(static_cast<sal_Int32*>(0)));
      87         [ +  - ]:        264 :     registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_FETCHDIRECTION),      PROPERTY_ID_FETCHDIRECTION,     0,  &m_nFetchDirection, ::getCppuType(static_cast<sal_Int32*>(0)));
      88         [ +  - ]:        264 :     registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_RESULTSETCONCURRENCY), PROPERTY_ID_RESULTSETCONCURRENCY,   PropertyAttribute::READONLY,&m_nResultSetConcurrency,                ::getCppuType(static_cast<sal_Int32*>(0)));
      89                 :        264 : }
      90                 :            : // -----------------------------------------------------------------------------
      91                 :        264 : void ODatabaseMetaDataResultSet::setType(MetaDataResultSetType _eType)
      92                 :            : {
      93   [ -  -  -  -  :        264 :     switch( _eType )
          +  +  -  -  -  
          -  -  -  -  -  
             +  -  +  - ]
      94                 :            :     {
      95                 :          0 :         case eCatalogs:             setCatalogsMap(); break;
      96                 :          0 :         case eSchemas:              setSchemasMap(); break;
      97                 :          0 :         case eColumnPrivileges:     setColumnPrivilegesMap(); break;
      98                 :          0 :         case eColumns:              setColumnsMap(); break;
      99                 :        138 :         case eTables:               setTablesMap(); break;
     100                 :         56 :         case eTableTypes:           setTableTypes(); break;
     101                 :          0 :         case eProcedureColumns:     setProcedureColumnsMap(); break;
     102                 :          0 :         case eProcedures:           setProceduresMap(); break;
     103                 :          0 :         case eExportedKeys:         setExportedKeysMap(); break;
     104                 :          0 :         case eImportedKeys:         setImportedKeysMap(); break;
     105                 :          0 :         case ePrimaryKeys:          setPrimaryKeysMap(); break;
     106                 :          0 :         case eIndexInfo:            setIndexInfoMap(); break;
     107                 :          0 :         case eTablePrivileges:      setTablePrivilegesMap(); break;
     108                 :          0 :         case eCrossReference:       setCrossReferenceMap(); break;
     109                 :          8 :         case eTypeInfo:             setTypeInfoMap(); break;
     110                 :          0 :         case eBestRowIdentifier:    setBestRowIdentifierMap(); break;
     111                 :         62 :         case eVersionColumns:       setVersionColumnsMap(); break;
     112                 :            :         default:
     113                 :            :             OSL_FAIL("Wrong type!");
     114                 :            :     }
     115                 :        264 : }
     116                 :            : // -------------------------------------------------------------------------
     117                 :        264 : void ODatabaseMetaDataResultSet::disposing(void)
     118                 :            : {
     119         [ +  - ]:        264 :     OPropertySetHelper::disposing();
     120                 :            : 
     121         [ +  - ]:        264 :     ::osl::MutexGuard aGuard(m_aMutex);
     122 [ +  - ][ +  - ]:        264 :     m_aStatement    = NULL;
     123                 :        264 : m_xMetaData.clear();
     124                 :        264 :     m_aRowsIter = m_aRows.end();
     125                 :        264 :     m_aRows.clear();
     126         [ +  - ]:        264 :     m_aRowsIter = m_aRows.end();
     127                 :        264 : }
     128                 :            : // -----------------------------------------------------------------------------
     129                 :       2208 : void SAL_CALL ODatabaseMetaDataResultSet::acquire() throw()
     130                 :            : {
     131                 :       2208 :     ODatabaseMetaDataResultSet_BASE::acquire();
     132                 :       2208 : }
     133                 :            : // -----------------------------------------------------------------------------
     134                 :       2208 : void SAL_CALL ODatabaseMetaDataResultSet::release() throw()
     135                 :            : {
     136                 :       2208 :     ODatabaseMetaDataResultSet_BASE::release();
     137                 :       2208 : }
     138                 :            : // -------------------------------------------------------------------------
     139                 :        528 : Any SAL_CALL ODatabaseMetaDataResultSet::queryInterface( const Type & rType ) throw(RuntimeException)
     140                 :            : {
     141         [ +  - ]:        528 :     Any aRet = OPropertySetHelper::queryInterface(rType);
     142 [ +  + ][ +  - ]:        528 :     return aRet.hasValue() ? aRet : ODatabaseMetaDataResultSet_BASE::queryInterface(rType);
     143                 :            : }
     144                 :            : // -------------------------------------------------------------------------
     145                 :          0 : Sequence< Type > SAL_CALL ODatabaseMetaDataResultSet::getTypes(  ) throw(RuntimeException)
     146                 :            : {
     147         [ #  # ]:          0 :     ::cppu::OTypeCollection aTypes( ::getCppuType( (const Reference< ::com::sun::star::beans::XMultiPropertySet > *)0 ),
     148         [ #  # ]:          0 :                                     ::getCppuType( (const Reference< ::com::sun::star::beans::XFastPropertySet > *)0 ),
     149 [ #  # ][ #  # ]:          0 :                                     ::getCppuType( (const Reference< ::com::sun::star::beans::XPropertySet > *)0 ));
         [ #  # ][ #  # ]
     150                 :            : 
     151 [ #  # ][ #  # ]:          0 :     return ::comphelper::concatSequences(aTypes.getTypes(),ODatabaseMetaDataResultSet_BASE::getTypes());
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
     152                 :            : }
     153                 :            : // -----------------------------------------------------------------------------
     154                 :        202 : void ODatabaseMetaDataResultSet::setRows(const ORows& _rRows)
     155                 :            : {
     156                 :        202 :     m_aRows = _rRows;
     157                 :        202 :     m_bBOF = sal_True;
     158                 :        202 :     m_bEOF = m_aRows.empty();
     159                 :        202 : }
     160                 :            : // -------------------------------------------------------------------------
     161                 :          0 : sal_Int32 SAL_CALL ODatabaseMetaDataResultSet::findColumn( const ::rtl::OUString& columnName ) throw(SQLException, RuntimeException)
     162                 :            : {
     163         [ #  # ]:          0 :     ::osl::MutexGuard aGuard( m_aMutex );
     164         [ #  # ]:          0 :     checkDisposed(ODatabaseMetaDataResultSet_BASE::rBHelper.bDisposed );
     165                 :            : 
     166                 :            : 
     167         [ #  # ]:          0 :     Reference< XResultSetMetaData > xMeta = getMetaData();
     168 [ #  # ][ #  # ]:          0 :     sal_Int32 nLen = xMeta->getColumnCount();
     169                 :          0 :     sal_Int32 i = 1;
     170         [ #  # ]:          0 :     for(;i<=nLen;++i)
     171 [ #  # ][ #  # ]:          0 :         if(xMeta->isCaseSensitive(i) ? columnName == xMeta->getColumnName(i) :
         [ #  # ][ #  # ]
                 [ #  # ]
           [ #  #  #  # ]
     172 [ #  # ][ #  # ]:          0 :             columnName.equalsIgnoreAsciiCase(xMeta->getColumnName(i))
         [ #  # ][ #  # ]
     173         [ #  # ]:          0 :             )
     174                 :          0 :             break;
     175         [ #  # ]:          0 :     return i;
     176                 :            : }
     177                 :            : // -----------------------------------------------------------------------------
     178                 :        534 : void ODatabaseMetaDataResultSet::checkIndex(sal_Int32 columnIndex ) throw(::com::sun::star::sdbc::SQLException)
     179                 :            : {
     180 [ +  - ][ -  + ]:        534 :     if(columnIndex >= (sal_Int32)(*m_aRowsIter).size() || columnIndex < 1)
                 [ -  + ]
     181 [ #  # ][ #  # ]:          0 :         ::dbtools::throwInvalidIndexException(*this);
     182                 :        534 : }
     183                 :            : // -------------------------------------------------------------------------
     184                 :          0 : Reference< ::com::sun::star::io::XInputStream > SAL_CALL ODatabaseMetaDataResultSet::getBinaryStream( sal_Int32 /*columnIndex*/ ) throw(SQLException, RuntimeException)
     185                 :            : {
     186                 :          0 :     return NULL;
     187                 :            : }
     188                 :            : // -------------------------------------------------------------------------
     189                 :          0 : Reference< ::com::sun::star::io::XInputStream > SAL_CALL ODatabaseMetaDataResultSet::getCharacterStream( sal_Int32 /*columnIndex*/ ) throw(SQLException, RuntimeException)
     190                 :            : {
     191                 :          0 :     return NULL;
     192                 :            : }
     193                 :            : 
     194                 :            : // -------------------------------------------------------------------------
     195                 :         80 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::getBoolean( sal_Int32 columnIndex ) throw(SQLException, RuntimeException)
     196                 :            : {
     197                 :         80 :     return getValue(columnIndex);
     198                 :            : }
     199                 :            : // -------------------------------------------------------------------------
     200                 :            : 
     201                 :          0 : sal_Int8 SAL_CALL ODatabaseMetaDataResultSet::getByte( sal_Int32 columnIndex ) throw(SQLException, RuntimeException)
     202                 :            : {
     203                 :          0 :     return getValue(columnIndex);
     204                 :            : }
     205                 :            : // -------------------------------------------------------------------------
     206                 :            : 
     207                 :          0 : Sequence< sal_Int8 > SAL_CALL ODatabaseMetaDataResultSet::getBytes( sal_Int32 columnIndex ) throw(SQLException, RuntimeException)
     208                 :            : {
     209                 :          0 :     return getValue(columnIndex);
     210                 :            : }
     211                 :            : // -------------------------------------------------------------------------
     212                 :            : 
     213                 :          0 : ::com::sun::star::util::Date SAL_CALL ODatabaseMetaDataResultSet::getDate( sal_Int32 columnIndex ) throw(SQLException, RuntimeException)
     214                 :            : {
     215                 :          0 :     return getValue(columnIndex);
     216                 :            : }
     217                 :            : // -------------------------------------------------------------------------
     218                 :            : 
     219                 :          0 : double SAL_CALL ODatabaseMetaDataResultSet::getDouble( sal_Int32 columnIndex ) throw(SQLException, RuntimeException)
     220                 :            : {
     221                 :          0 :     return getValue(columnIndex);
     222                 :            : }
     223                 :            : // -------------------------------------------------------------------------
     224                 :            : 
     225                 :          0 : float SAL_CALL ODatabaseMetaDataResultSet::getFloat( sal_Int32 columnIndex ) throw(SQLException, RuntimeException)
     226                 :            : {
     227                 :          0 :     return getValue(columnIndex);
     228                 :            : }
     229                 :            : // -------------------------------------------------------------------------
     230                 :            : 
     231                 :        192 : sal_Int32 SAL_CALL ODatabaseMetaDataResultSet::getInt( sal_Int32 columnIndex ) throw(SQLException, RuntimeException)
     232                 :            : {
     233                 :        192 :     return getValue(columnIndex);
     234                 :            : }
     235                 :            : 
     236                 :            : // -------------------------------------------------------------------------
     237                 :            : 
     238                 :          0 : sal_Int32 SAL_CALL ODatabaseMetaDataResultSet::getRow(  ) throw(SQLException, RuntimeException)
     239                 :            : {
     240                 :          0 :     return 0;
     241                 :            : }
     242                 :            : // -------------------------------------------------------------------------
     243                 :            : 
     244                 :          0 : sal_Int64 SAL_CALL ODatabaseMetaDataResultSet::getLong( sal_Int32 columnIndex ) throw(SQLException, RuntimeException)
     245                 :            : {
     246                 :          0 :     return getValue(columnIndex);
     247                 :            : }
     248                 :            : // -------------------------------------------------------------------------
     249                 :            : 
     250                 :          0 : Reference< XResultSetMetaData > SAL_CALL ODatabaseMetaDataResultSet::getMetaData(  ) throw(SQLException, RuntimeException)
     251                 :            : {
     252         [ #  # ]:          0 :     ::osl::MutexGuard aGuard( m_aMutex );
     253         [ #  # ]:          0 :     checkDisposed(ODatabaseMetaDataResultSet_BASE::rBHelper.bDisposed );
     254                 :            : 
     255                 :            : 
     256         [ #  # ]:          0 :     if(!m_xMetaData.is())
     257 [ #  # ][ #  # ]:          0 :         m_xMetaData = new ODatabaseMetaDataResultSetMetaData();
                 [ #  # ]
     258                 :            : 
     259         [ #  # ]:          0 :     return m_xMetaData;
     260                 :            : }
     261                 :            : // -------------------------------------------------------------------------
     262                 :          0 : Reference< XArray > SAL_CALL ODatabaseMetaDataResultSet::getArray( sal_Int32 /*columnIndex*/ ) throw(SQLException, RuntimeException)
     263                 :            : {
     264                 :          0 :     return NULL;
     265                 :            : }
     266                 :            : 
     267                 :            : // -------------------------------------------------------------------------
     268                 :            : 
     269                 :          0 : Reference< XClob > SAL_CALL ODatabaseMetaDataResultSet::getClob( sal_Int32 /*columnIndex*/ ) throw(SQLException, RuntimeException)
     270                 :            : {
     271                 :          0 :     return NULL;
     272                 :            : }
     273                 :            : // -------------------------------------------------------------------------
     274                 :          0 : Reference< XBlob > SAL_CALL ODatabaseMetaDataResultSet::getBlob( sal_Int32 /*columnIndex*/ ) throw(SQLException, RuntimeException)
     275                 :            : {
     276                 :          0 :     return NULL;
     277                 :            : }
     278                 :            : // -------------------------------------------------------------------------
     279                 :            : 
     280                 :          0 : Reference< XRef > SAL_CALL ODatabaseMetaDataResultSet::getRef( sal_Int32 /*columnIndex*/ ) throw(SQLException, RuntimeException)
     281                 :            : {
     282                 :          0 :     return NULL;
     283                 :            : }
     284                 :            : // -------------------------------------------------------------------------
     285                 :            : 
     286                 :          0 : Any SAL_CALL ODatabaseMetaDataResultSet::getObject( sal_Int32 columnIndex, const Reference< ::com::sun::star::container::XNameAccess >& /*typeMap*/ ) throw(SQLException, RuntimeException)
     287                 :            : {
     288                 :          0 :     return getValue(columnIndex).makeAny();
     289                 :            : }
     290                 :            : // -------------------------------------------------------------------------
     291                 :            : 
     292                 :          0 : sal_Int16 SAL_CALL ODatabaseMetaDataResultSet::getShort( sal_Int32 columnIndex ) throw(SQLException, RuntimeException)
     293                 :            : {
     294                 :          0 :     return getValue(columnIndex);
     295                 :            : }
     296                 :            : // -------------------------------------------------------------------------
     297                 :            : 
     298                 :        262 : ::rtl::OUString SAL_CALL ODatabaseMetaDataResultSet::getString( sal_Int32 columnIndex ) throw(SQLException, RuntimeException)
     299                 :            : {
     300                 :        262 :     return getValue(columnIndex);
     301                 :            : }
     302                 :            : 
     303                 :            : // -------------------------------------------------------------------------
     304                 :            : 
     305                 :            : 
     306                 :          0 : ::com::sun::star::util::Time SAL_CALL ODatabaseMetaDataResultSet::getTime( sal_Int32 columnIndex ) throw(SQLException, RuntimeException)
     307                 :            : {
     308                 :          0 :     return getValue(columnIndex);
     309                 :            : }
     310                 :            : // -------------------------------------------------------------------------
     311                 :            : 
     312                 :            : 
     313                 :          0 : ::com::sun::star::util::DateTime SAL_CALL ODatabaseMetaDataResultSet::getTimestamp( sal_Int32 columnIndex ) throw(SQLException, RuntimeException)
     314                 :            : {
     315                 :          0 :     return getValue(columnIndex);
     316                 :            : }
     317                 :            : // -------------------------------------------------------------------------
     318                 :            : 
     319                 :        534 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::isAfterLast(  ) throw(SQLException, RuntimeException)
     320                 :            : {
     321                 :        534 :     return m_bEOF;
     322                 :            : }
     323                 :            : // -------------------------------------------------------------------------
     324                 :          0 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::isFirst(  ) throw(SQLException, RuntimeException)
     325                 :            : {
     326 [ #  # ][ #  # ]:          0 :     ::dbtools::throwFunctionSequenceException(*this);
     327                 :          0 :     return sal_False;
     328                 :            : }
     329                 :            : // -------------------------------------------------------------------------
     330                 :          0 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::isLast(  ) throw(SQLException, RuntimeException)
     331                 :            : {
     332 [ #  # ][ #  # ]:          0 :     ::dbtools::throwFunctionSequenceException(*this);
     333                 :          0 :     return sal_False;
     334                 :            : }
     335                 :            : // -------------------------------------------------------------------------
     336                 :          0 : void SAL_CALL ODatabaseMetaDataResultSet::beforeFirst(  ) throw(SQLException, RuntimeException)
     337                 :            : {
     338 [ #  # ][ #  # ]:          0 :     ::dbtools::throwFunctionSequenceException(*this);
     339                 :          0 : }
     340                 :            : // -------------------------------------------------------------------------
     341                 :          0 : void SAL_CALL ODatabaseMetaDataResultSet::afterLast(  ) throw(SQLException, RuntimeException)
     342                 :            : {
     343 [ #  # ][ #  # ]:          0 :     ::dbtools::throwFunctionSequenceException(*this);
     344                 :          0 : }
     345                 :            : // -------------------------------------------------------------------------
     346                 :            : 
     347                 :          0 : void SAL_CALL ODatabaseMetaDataResultSet::close(  ) throw(SQLException, RuntimeException)
     348                 :            : {
     349                 :            :     {
     350         [ #  # ]:          0 :         ::osl::MutexGuard aGuard( m_aMutex );
     351 [ #  # ][ #  # ]:          0 :         checkDisposed(ODatabaseMetaDataResultSet_BASE::rBHelper.bDisposed );
     352                 :            : 
     353                 :            :     }
     354                 :          0 :     dispose();
     355                 :          0 : }
     356                 :            : // -------------------------------------------------------------------------
     357                 :            : 
     358                 :          0 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::first(  ) throw(SQLException, RuntimeException)
     359                 :            : {
     360 [ #  # ][ #  # ]:          0 :     ::dbtools::throwFunctionSequenceException(*this);
     361                 :          0 :     return sal_False;
     362                 :            : }
     363                 :            : // -------------------------------------------------------------------------
     364                 :            : 
     365                 :          0 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::last(  ) throw(SQLException, RuntimeException)
     366                 :            : {
     367 [ #  # ][ #  # ]:          0 :     ::dbtools::throwFunctionSequenceException(*this);
     368                 :          0 :     return sal_False;
     369                 :            : }
     370                 :            : // -------------------------------------------------------------------------
     371                 :          0 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::absolute( sal_Int32 /*row*/ ) throw(SQLException, RuntimeException)
     372                 :            : {
     373 [ #  # ][ #  # ]:          0 :     ::dbtools::throwFunctionSequenceException(*this);
     374                 :          0 :     return sal_False;
     375                 :            : }
     376                 :            : // -------------------------------------------------------------------------
     377                 :          0 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::relative( sal_Int32 /*row*/ ) throw(SQLException, RuntimeException)
     378                 :            : {
     379 [ #  # ][ #  # ]:          0 :     ::dbtools::throwFunctionSequenceException(*this);
     380                 :          0 :     return sal_False;
     381                 :            : }
     382                 :            : // -------------------------------------------------------------------------
     383                 :          0 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::previous(  ) throw(SQLException, RuntimeException)
     384                 :            : {
     385 [ #  # ][ #  # ]:          0 :     ::dbtools::throwFunctionSequenceException(*this);
     386                 :          0 :     return sal_False;
     387                 :            : }
     388                 :            : // -------------------------------------------------------------------------
     389                 :          0 : Reference< XInterface > SAL_CALL ODatabaseMetaDataResultSet::getStatement(  ) throw(SQLException, RuntimeException)
     390                 :            : {
     391                 :          0 :     return m_aStatement.get();
     392                 :            : }
     393                 :            : // -------------------------------------------------------------------------
     394                 :            : 
     395                 :          0 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::rowDeleted(  ) throw(SQLException, RuntimeException)
     396                 :            : {
     397 [ #  # ][ #  # ]:          0 :     ::dbtools::throwFunctionSequenceException(*this);
     398                 :          0 :     return sal_False;
     399                 :            : }
     400                 :            : // -------------------------------------------------------------------------
     401                 :          0 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::rowInserted(  ) throw(SQLException, RuntimeException)
     402                 :            : {
     403 [ #  # ][ #  # ]:          0 :     ::dbtools::throwFunctionSequenceException(*this);
     404                 :          0 :     return sal_False;
     405                 :            : }
     406                 :            : // -------------------------------------------------------------------------
     407                 :          0 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::rowUpdated(  ) throw(SQLException, RuntimeException)
     408                 :            : {
     409 [ #  # ][ #  # ]:          0 :     ::dbtools::throwFunctionSequenceException(*this);
     410                 :          0 :     return sal_False;
     411                 :            : }
     412                 :            : // -------------------------------------------------------------------------
     413                 :            : 
     414                 :        534 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::isBeforeFirst(  ) throw(SQLException, RuntimeException)
     415                 :            : {
     416                 :        534 :     return m_bBOF;
     417                 :            : }
     418                 :            : // -------------------------------------------------------------------------
     419                 :            : 
     420                 :        446 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::next(  ) throw(SQLException, RuntimeException)
     421                 :            : {
     422         [ +  - ]:        446 :     ::osl::MutexGuard aGuard( m_aMutex );
     423         [ +  - ]:        446 :     checkDisposed(ODatabaseMetaDataResultSet_BASE::rBHelper.bDisposed );
     424                 :            : 
     425         [ +  + ]:        446 :     if ( m_bBOF )
     426                 :            :     {
     427                 :        264 :        m_aRowsIter = m_aRows.begin();
     428                 :        264 :        m_bBOF = sal_False;
     429                 :            :     }
     430                 :            :     else
     431                 :            :     {
     432         [ -  + ]:        182 :         if ( m_bEOF )
     433 [ #  # ][ #  # ]:          0 :             throwFunctionSequenceException( *this );
     434                 :            :         else
     435 [ +  - ][ +  - ]:        182 :             if ( m_aRowsIter != m_aRows.end() )
     436                 :        182 :                 ++m_aRowsIter;
     437                 :            :     }
     438                 :            : 
     439         [ +  - ]:        446 :     bool bSuccess = m_aRowsIter != m_aRows.end();
     440         [ +  + ]:        446 :     if ( !bSuccess )
     441                 :            :     {
     442                 :        258 :         m_bEOF = sal_True;
     443                 :        258 :         m_bBOF = m_aRows.empty();
     444                 :            :     }
     445         [ +  - ]:        446 :     return bSuccess;
     446                 :            : }
     447                 :            : // -------------------------------------------------------------------------
     448                 :            : 
     449                 :        416 : sal_Bool SAL_CALL ODatabaseMetaDataResultSet::wasNull(  ) throw(SQLException, RuntimeException)
     450                 :            : {
     451         [ +  - ]:        416 :     ::osl::MutexGuard aGuard( m_aMutex );
     452         [ +  - ]:        416 :     checkDisposed(ODatabaseMetaDataResultSet_BASE::rBHelper.bDisposed );
     453                 :            : 
     454                 :            : 
     455 [ +  - ][ +  - ]:        416 :     if(m_aRowsIter == m_aRows.end() || !(*m_aRowsIter)[m_nColPos].is())
         [ -  + ][ +  - ]
           [ -  +  #  # ]
     456                 :          0 :         return sal_True;
     457                 :            : 
     458         [ +  - ]:        416 :     return (*m_aRowsIter)[m_nColPos]->getValue().isNull();
     459                 :            : }
     460                 :            : // -------------------------------------------------------------------------
     461                 :          0 : void SAL_CALL ODatabaseMetaDataResultSet::refreshRow(  ) throw(SQLException, RuntimeException)
     462                 :            : {
     463                 :          0 : }
     464                 :            : // -------------------------------------------------------------------------
     465                 :            : 
     466                 :          0 : void SAL_CALL ODatabaseMetaDataResultSet::cancel(  ) throw(RuntimeException)
     467                 :            : {
     468                 :          0 : }
     469                 :            : // -------------------------------------------------------------------------
     470                 :          0 : void SAL_CALL ODatabaseMetaDataResultSet::clearWarnings(  ) throw(SQLException, RuntimeException)
     471                 :            : {
     472                 :          0 : }
     473                 :            : // -------------------------------------------------------------------------
     474                 :          0 : Any SAL_CALL ODatabaseMetaDataResultSet::getWarnings(  ) throw(SQLException, RuntimeException)
     475                 :            : {
     476                 :          0 :     return Any();
     477                 :            : }
     478                 :            : // -------------------------------------------------------------------------
     479                 :          0 : ::cppu::IPropertyArrayHelper* ODatabaseMetaDataResultSet::createArrayHelper( ) const
     480                 :            : {
     481         [ #  # ]:          0 :     Sequence< Property > aProps;
     482         [ #  # ]:          0 :     describeProperties(aProps);
     483 [ #  # ][ #  # ]:          0 :     return new ::cppu::OPropertyArrayHelper(aProps);
     484                 :            : }
     485                 :            : // -------------------------------------------------------------------------
     486                 :          0 : ::cppu::IPropertyArrayHelper & ODatabaseMetaDataResultSet::getInfoHelper()
     487                 :            : {
     488                 :          0 :     return *const_cast<ODatabaseMetaDataResultSet*>(this)->getArrayHelper();
     489                 :            : }
     490                 :            : // -------------------------------------------------------------------------
     491                 :          0 : void ODatabaseMetaDataResultSet::setProceduresMap()
     492                 :            : {
     493         [ #  # ]:          0 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     494                 :          0 :     pMetaData->setProceduresMap();
     495         [ #  # ]:          0 :     m_xMetaData = pMetaData;
     496                 :          0 : }
     497                 :            : // -------------------------------------------------------------------------
     498                 :          0 : void ODatabaseMetaDataResultSet::setCatalogsMap()
     499                 :            : {
     500         [ #  # ]:          0 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     501                 :          0 :     pMetaData->setCatalogsMap();
     502         [ #  # ]:          0 :     m_xMetaData = pMetaData;
     503                 :          0 : }
     504                 :            : // -------------------------------------------------------------------------
     505                 :          0 : void ODatabaseMetaDataResultSet::setSchemasMap()
     506                 :            : {
     507         [ #  # ]:          0 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     508                 :          0 :     pMetaData->setSchemasMap();
     509         [ #  # ]:          0 :     m_xMetaData = pMetaData;
     510                 :          0 : }
     511                 :            : // -------------------------------------------------------------------------
     512                 :          0 : void ODatabaseMetaDataResultSet::setColumnPrivilegesMap()
     513                 :            : {
     514         [ #  # ]:          0 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     515                 :          0 :     pMetaData->setColumnPrivilegesMap();
     516         [ #  # ]:          0 :     m_xMetaData = pMetaData;
     517                 :          0 : }
     518                 :            : // -------------------------------------------------------------------------
     519                 :          0 : void ODatabaseMetaDataResultSet::setColumnsMap()
     520                 :            : {
     521                 :            : 
     522         [ #  # ]:          0 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     523                 :          0 :     pMetaData->setColumnsMap();
     524         [ #  # ]:          0 :     m_xMetaData = pMetaData;
     525                 :          0 : }
     526                 :            : // -------------------------------------------------------------------------
     527                 :        138 : void ODatabaseMetaDataResultSet::setTablesMap()
     528                 :            : {
     529                 :            : 
     530         [ +  - ]:        138 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     531                 :        138 :     pMetaData->setTablesMap();
     532         [ +  - ]:        138 :     m_xMetaData = pMetaData;
     533                 :        138 : }
     534                 :            : // -------------------------------------------------------------------------
     535                 :          0 : void ODatabaseMetaDataResultSet::setProcedureColumnsMap()
     536                 :            : {
     537         [ #  # ]:          0 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     538                 :          0 :     pMetaData->setProcedureColumnsMap();
     539         [ #  # ]:          0 :     m_xMetaData = pMetaData;
     540                 :          0 : }
     541                 :            : // -------------------------------------------------------------------------
     542                 :          0 : void ODatabaseMetaDataResultSet::setPrimaryKeysMap()
     543                 :            : {
     544         [ #  # ]:          0 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     545                 :          0 :     pMetaData->setPrimaryKeysMap();
     546         [ #  # ]:          0 :     m_xMetaData = pMetaData;
     547                 :          0 : }
     548                 :            : // -------------------------------------------------------------------------
     549                 :          0 : void ODatabaseMetaDataResultSet::setIndexInfoMap()
     550                 :            : {
     551         [ #  # ]:          0 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     552                 :          0 :     pMetaData->setIndexInfoMap();
     553         [ #  # ]:          0 :     m_xMetaData = pMetaData;
     554                 :          0 : }
     555                 :            : // -------------------------------------------------------------------------
     556                 :          0 : void ODatabaseMetaDataResultSet::setTablePrivilegesMap()
     557                 :            : {
     558         [ #  # ]:          0 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     559                 :          0 :     pMetaData->setTablePrivilegesMap();
     560         [ #  # ]:          0 :     m_xMetaData = pMetaData;
     561                 :          0 : }
     562                 :            : // -------------------------------------------------------------------------
     563                 :          0 : void ODatabaseMetaDataResultSet::setCrossReferenceMap()
     564                 :            : {
     565         [ #  # ]:          0 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     566                 :          0 :     pMetaData->setCrossReferenceMap();
     567         [ #  # ]:          0 :     m_xMetaData = pMetaData;
     568                 :          0 : }
     569                 :            : // -------------------------------------------------------------------------
     570                 :         62 : void ODatabaseMetaDataResultSet::setVersionColumnsMap()
     571                 :            : {
     572         [ +  - ]:         62 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     573                 :         62 :     pMetaData->setVersionColumnsMap();
     574         [ +  - ]:         62 :     m_xMetaData = pMetaData;
     575                 :         62 : }
     576                 :            : // -------------------------------------------------------------------------
     577                 :          0 : void ODatabaseMetaDataResultSet::setBestRowIdentifierMap()
     578                 :            : {
     579         [ #  # ]:          0 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     580                 :          0 :     pMetaData->setBestRowIdentifierMap();
     581         [ #  # ]:          0 :     m_xMetaData = pMetaData;
     582                 :          0 : }
     583                 :            : // -------------------------------------------------------------------------
     584                 :          8 : void ODatabaseMetaDataResultSet::setTypeInfoMap()
     585                 :            : {
     586         [ +  - ]:          8 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     587                 :          8 :     pMetaData->setTypeInfoMap();
     588         [ +  - ]:          8 :     m_xMetaData = pMetaData;
     589                 :          8 : }
     590                 :            : // -------------------------------------------------------------------------
     591                 :         56 : void ODatabaseMetaDataResultSet::setTableTypes()
     592                 :            : {
     593         [ +  - ]:         56 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     594                 :         56 :     pMetaData->setTableTypes();
     595         [ +  - ]:         56 :     m_xMetaData = pMetaData;
     596                 :         56 : }
     597                 :            : // -------------------------------------------------------------------------
     598                 :          0 : void ODatabaseMetaDataResultSet::setExportedKeysMap()
     599                 :            : {
     600         [ #  # ]:          0 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     601                 :          0 :     pMetaData->setExportedKeysMap();
     602         [ #  # ]:          0 :     m_xMetaData = pMetaData;
     603                 :          0 : }
     604                 :            : // -------------------------------------------------------------------------
     605                 :          0 : void ODatabaseMetaDataResultSet::setImportedKeysMap()
     606                 :            : {
     607         [ #  # ]:          0 :     ODatabaseMetaDataResultSetMetaData* pMetaData = new ODatabaseMetaDataResultSetMetaData();
     608                 :          0 :     pMetaData->setImportedKeysMap();
     609         [ #  # ]:          0 :     m_xMetaData = pMetaData;
     610                 :          0 : }
     611                 :            : // -----------------------------------------------------------------------------
     612                 :          0 : Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL ODatabaseMetaDataResultSet::getPropertySetInfo(  ) throw(RuntimeException)
     613                 :            : {
     614                 :          0 :     return ::cppu::OPropertySetHelper::createPropertySetInfo(getInfoHelper());
     615                 :            : }
     616                 :            : // -----------------------------------------------------------------------------
     617                 :      15508 : ORowSetValueDecorator& ORowSetValueDecorator::operator=(const ORowSetValue& _aValue)
     618                 :            : {
     619                 :      15508 :     m_aValue = _aValue;
     620                 :      15508 :     return *this;
     621                 :            : }
     622                 :            : // -----------------------------------------------------------------------------
     623                 :        534 : const ORowSetValue& ODatabaseMetaDataResultSet::getValue(sal_Int32 columnIndex)
     624                 :            : {
     625         [ +  - ]:        534 :     ::osl::MutexGuard aGuard( m_aMutex );
     626         [ +  - ]:        534 :     checkDisposed(ODatabaseMetaDataResultSet_BASE::rBHelper.bDisposed );
     627                 :            : 
     628 [ +  - ][ +  - ]:        534 :     if ( isBeforeFirst() || isAfterLast() )
         [ +  - ][ -  + ]
                 [ -  + ]
     629 [ #  # ][ #  # ]:          0 :         ::dbtools::throwFunctionSequenceException( *this );
     630                 :            : 
     631         [ +  - ]:        534 :     checkIndex(columnIndex );
     632                 :        534 :     m_nColPos = columnIndex;
     633                 :            : 
     634 [ +  - ][ +  - ]:        534 :     if(m_aRowsIter != m_aRows.end() && (*m_aRowsIter)[columnIndex].is())
         [ +  - ][ +  - ]
           [ +  -  #  # ]
     635                 :        534 :         return *(*m_aRowsIter)[columnIndex];
     636         [ +  - ]:        534 :     return m_aEmptyValue;
     637                 :            : }
     638                 :            : // -----------------------------------------------------------------------------
     639                 :            : /// return an empty ORowSetValueDecorator
     640                 :        145 : ORowSetValueDecoratorRef ODatabaseMetaDataResultSet::getEmptyValue()
     641                 :            : {
     642 [ +  + ][ +  - ]:        145 :     static ORowSetValueDecoratorRef aEmptyValueRef = new ORowSetValueDecorator();
         [ +  - ][ +  - ]
         [ +  - ][ #  # ]
     643                 :        145 :     return aEmptyValueRef;
     644                 :            : }
     645                 :            : // -----------------------------------------------------------------------------
     646                 :            : /// return an ORowSetValueDecorator with 0 as value
     647                 :          8 : ORowSetValueDecoratorRef ODatabaseMetaDataResultSet::get0Value()
     648                 :            : {
     649 [ +  + ][ +  - ]:          8 :     static ORowSetValueDecoratorRef a0ValueRef = new ORowSetValueDecorator((sal_Int32)0);
         [ +  - ][ +  - ]
         [ +  - ][ +  - ]
         [ +  - ][ #  # ]
     650                 :          8 :     return a0ValueRef;
     651                 :            : }
     652                 :            : // -----------------------------------------------------------------------------
     653                 :            : /// return an ORowSetValueDecorator with 1 as value
     654                 :          6 : ORowSetValueDecoratorRef ODatabaseMetaDataResultSet::get1Value()
     655                 :            : {
     656 [ +  + ][ +  - ]:          6 :     static ORowSetValueDecoratorRef a1ValueRef = new ORowSetValueDecorator((sal_Int32)1);
         [ +  - ][ +  - ]
         [ +  - ][ +  - ]
         [ +  - ][ #  # ]
     657                 :          6 :     return a1ValueRef;
     658                 :            : }
     659                 :            : // -----------------------------------------------------------------------------
     660                 :            : /// return an ORowSetValueDecorator with ColumnSearch::BASIC as value
     661                 :          2 : ORowSetValueDecoratorRef ODatabaseMetaDataResultSet::getBasicValue()
     662                 :            : {
     663 [ +  - ][ +  - ]:          2 :     static ORowSetValueDecoratorRef aValueRef = new ORowSetValueDecorator(ColumnSearch::BASIC);
         [ +  - ][ +  - ]
         [ +  - ][ +  - ]
         [ +  - ][ #  # ]
     664                 :          2 :     return aValueRef;
     665                 :            : }
     666                 :            : // -----------------------------------------------------------------------------
     667                 :          0 : ORowSetValueDecoratorRef ODatabaseMetaDataResultSet::getSelectValue()
     668                 :            : {
     669 [ #  # ][ #  # ]:          0 :     static ORowSetValueDecoratorRef aValueRef = new ORowSetValueDecorator(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("SELECT")));
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
                 [ #  # ]
     670                 :          0 :     return aValueRef;
     671                 :            : }
     672                 :            : // -----------------------------------------------------------------------------
     673                 :          0 : ORowSetValueDecoratorRef ODatabaseMetaDataResultSet::getInsertValue()
     674                 :            : {
     675 [ #  # ][ #  # ]:          0 :     static ORowSetValueDecoratorRef aValueRef = new ORowSetValueDecorator(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("INSERT")));
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
                 [ #  # ]
     676                 :          0 :     return aValueRef;
     677                 :            : }
     678                 :            : // -----------------------------------------------------------------------------
     679                 :          0 : ORowSetValueDecoratorRef ODatabaseMetaDataResultSet::getDeleteValue()
     680                 :            : {
     681 [ #  # ][ #  # ]:          0 :     static ORowSetValueDecoratorRef aValueRef = new ORowSetValueDecorator(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("DELETE")));
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
                 [ #  # ]
     682                 :          0 :     return aValueRef;
     683                 :            : }
     684                 :            : // -----------------------------------------------------------------------------
     685                 :          0 : ORowSetValueDecoratorRef ODatabaseMetaDataResultSet::getUpdateValue()
     686                 :            : {
     687 [ #  # ][ #  # ]:          0 :     static ORowSetValueDecoratorRef aValueRef = new ORowSetValueDecorator(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("UPDATE")));
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
                 [ #  # ]
     688                 :          0 :     return aValueRef;
     689                 :            : }
     690                 :            : // -----------------------------------------------------------------------------
     691                 :          0 : ORowSetValueDecoratorRef ODatabaseMetaDataResultSet::getCreateValue()
     692                 :            : {
     693 [ #  # ][ #  # ]:          0 :     static ORowSetValueDecoratorRef aValueRef = new ORowSetValueDecorator(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("CREATE")));
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
                 [ #  # ]
     694                 :          0 :     return aValueRef;
     695                 :            : }
     696                 :            : // -----------------------------------------------------------------------------
     697                 :          0 : ORowSetValueDecoratorRef ODatabaseMetaDataResultSet::getReadValue()
     698                 :            : {
     699 [ #  # ][ #  # ]:          0 :     static ORowSetValueDecoratorRef aValueRef = new ORowSetValueDecorator(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("READ")));
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
                 [ #  # ]
     700                 :          0 :     return aValueRef;
     701                 :            : }
     702                 :            : // -----------------------------------------------------------------------------
     703                 :          0 : ORowSetValueDecoratorRef ODatabaseMetaDataResultSet::getAlterValue()
     704                 :            : {
     705 [ #  # ][ #  # ]:          0 :     static ORowSetValueDecoratorRef aValueRef = new ORowSetValueDecorator(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ALTER")));
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
                 [ #  # ]
     706                 :          0 :     return aValueRef;
     707                 :            : }
     708                 :            : // -----------------------------------------------------------------------------
     709                 :          0 : ORowSetValueDecoratorRef ODatabaseMetaDataResultSet::getDropValue()
     710                 :            : {
     711 [ #  # ][ #  # ]:          0 :     static ORowSetValueDecoratorRef aValueRef = new ORowSetValueDecorator(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("DROP")));
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
                 [ #  # ]
     712                 :          0 :     return aValueRef;
     713                 :            : }
     714                 :            : // -----------------------------------------------------------------------------
     715                 :          4 : ORowSetValueDecoratorRef ODatabaseMetaDataResultSet::getQuoteValue()
     716                 :            : {
     717 [ +  + ][ +  - ]:          4 :     static ORowSetValueDecoratorRef aValueRef = new ORowSetValueDecorator(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("'")));
         [ +  - ][ +  - ]
         [ +  - ][ +  - ]
         [ +  - ][ +  - ]
                 [ #  # ]
     718                 :          4 :     return aValueRef;
     719                 :            : }
     720                 :            : // -----------------------------------------------------------------------------
     721                 :          0 : void SAL_CALL ODatabaseMetaDataResultSet::initialize( const Sequence< Any >& _aArguments ) throw (Exception, RuntimeException)
     722                 :            : {
     723         [ #  # ]:          0 :     if ( _aArguments.getLength() == 2 )
     724                 :            :     {
     725                 :          0 :         sal_Int32 nResultSetType = 0;
     726         [ #  # ]:          0 :         if ( _aArguments[0] >>= nResultSetType)
     727                 :            :         {
     728         [ #  # ]:          0 :             setType(static_cast<MetaDataResultSetType>(nResultSetType));
     729         [ #  # ]:          0 :             Sequence< Sequence<Any> > aRows;
     730 [ #  # ][ #  # ]:          0 :             if ( _aArguments[1] >>= aRows )
     731                 :            :             {
     732         [ #  # ]:          0 :                 ORows aRowsToSet;
     733                 :          0 :                 const Sequence<Any>* pRowsIter = aRows.getConstArray();
     734                 :          0 :                 const Sequence<Any>* pRowsEnd  = pRowsIter + aRows.getLength();
     735         [ #  # ]:          0 :                 for (; pRowsIter != pRowsEnd;++pRowsIter)
     736                 :            :                 {
     737         [ #  # ]:          0 :                     ORow aRowToSet;
     738                 :          0 :                     const Any* pRowIter = pRowsIter->getConstArray();
     739                 :          0 :                     const Any* pRowEnd = pRowIter + pRowsIter->getLength();
     740         [ #  # ]:          0 :                     for (; pRowIter != pRowEnd;++pRowIter)
     741                 :            :                     {
     742                 :          0 :                         ORowSetValueDecoratorRef aValue;
     743   [ #  #  #  #  :          0 :                         switch( pRowIter->getValueTypeClass() )
             #  #  #  #  
                      # ]
     744                 :            :                         {
     745                 :            :                             case TypeClass_BOOLEAN:
     746                 :            :                                 {
     747                 :          0 :                                     sal_Bool bValue = sal_False;
     748                 :          0 :                                     *pRowIter >>= bValue;
     749 [ #  # ][ #  # ]:          0 :                                     aValue = new ORowSetValueDecorator(ORowSetValue(bValue));
         [ #  # ][ #  # ]
                 [ #  # ]
     750                 :            :                                 }
     751                 :          0 :                                 break;
     752                 :            :                             case TypeClass_BYTE:
     753                 :            :                                 {
     754                 :          0 :                                     sal_Int8 nValue(0);
     755                 :          0 :                                     *pRowIter >>= nValue;
     756 [ #  # ][ #  # ]:          0 :                                     aValue = new ORowSetValueDecorator(ORowSetValue(nValue));
         [ #  # ][ #  # ]
                 [ #  # ]
     757                 :            :                                 }
     758                 :          0 :                                 break;
     759                 :            :                             case TypeClass_SHORT:
     760                 :            :                             case TypeClass_UNSIGNED_SHORT:
     761                 :            :                                 {
     762                 :          0 :                                     sal_Int16 nValue(0);
     763                 :          0 :                                     *pRowIter >>= nValue;
     764 [ #  # ][ #  # ]:          0 :                                     aValue = new ORowSetValueDecorator(ORowSetValue(nValue));
         [ #  # ][ #  # ]
                 [ #  # ]
     765                 :            :                                 }
     766                 :          0 :                                 break;
     767                 :            :                             case TypeClass_LONG:
     768                 :            :                             case TypeClass_UNSIGNED_LONG:
     769                 :            :                                 {
     770                 :          0 :                                     sal_Int32 nValue(0);
     771                 :          0 :                                     *pRowIter >>= nValue;
     772 [ #  # ][ #  # ]:          0 :                                     aValue = new ORowSetValueDecorator(ORowSetValue(nValue));
         [ #  # ][ #  # ]
                 [ #  # ]
     773                 :            :                                 }
     774                 :          0 :                                 break;
     775                 :            :                             case TypeClass_HYPER:
     776                 :            :                             case TypeClass_UNSIGNED_HYPER:
     777                 :            :                                 {
     778                 :          0 :                                     sal_Int64 nValue(0);
     779                 :          0 :                                     *pRowIter >>= nValue;
     780 [ #  # ][ #  # ]:          0 :                                     aValue = new ORowSetValueDecorator(ORowSetValue(nValue));
         [ #  # ][ #  # ]
                 [ #  # ]
     781                 :            :                                 }
     782                 :          0 :                                 break;
     783                 :            :                             case TypeClass_FLOAT:
     784                 :            :                                 {
     785                 :          0 :                                     float nValue(0.0);
     786                 :          0 :                                     *pRowIter >>= nValue;
     787 [ #  # ][ #  # ]:          0 :                                     aValue = new ORowSetValueDecorator(ORowSetValue(nValue));
         [ #  # ][ #  # ]
                 [ #  # ]
     788                 :            :                                 }
     789                 :          0 :                                 break;
     790                 :            :                             case TypeClass_DOUBLE:
     791                 :            :                                 {
     792                 :          0 :                                     double nValue(0.0);
     793                 :          0 :                                     *pRowIter >>= nValue;
     794 [ #  # ][ #  # ]:          0 :                                     aValue = new ORowSetValueDecorator(ORowSetValue(nValue));
         [ #  # ][ #  # ]
                 [ #  # ]
     795                 :            :                                 }
     796                 :          0 :                                 break;
     797                 :            :                             case TypeClass_STRING:
     798                 :            :                                 {
     799                 :          0 :                                     ::rtl::OUString sValue;
     800                 :          0 :                                     *pRowIter >>= sValue;
     801 [ #  # ][ #  # ]:          0 :                                     aValue = new ORowSetValueDecorator(ORowSetValue(sValue));
         [ #  # ][ #  # ]
                 [ #  # ]
     802                 :            :                                 }
     803                 :          0 :                                 break;
     804                 :            :                             default:
     805                 :          0 :                                 break;
     806                 :            :                         }
     807         [ #  # ]:          0 :                         aRowToSet.push_back(aValue);
     808         [ #  # ]:          0 :                     }
     809         [ #  # ]:          0 :                     aRowsToSet.push_back(aRowToSet);
     810                 :          0 :                 } // for (; pRowsIter != pRowsEnd;++pRowsIter
     811         [ #  # ]:          0 :                 setRows(aRowsToSet);
     812         [ #  # ]:          0 :             }
     813                 :            :         }
     814                 :            :     }
     815                 :          0 : }
     816                 :            : // XServiceInfo
     817                 :            :     // --------------------------------------------------------------------------------
     818                 :            :     //------------------------------------------------------------------------------
     819                 :          0 :     rtl::OUString ODatabaseMetaDataResultSet::getImplementationName_Static(  ) throw(RuntimeException)
     820                 :            :     {
     821                 :          0 :         return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("org.openoffice.comp.helper.DatabaseMetaDataResultSet"));
     822                 :            :     }
     823                 :            :     //------------------------------------------------------------------------------
     824                 :          0 :     Sequence< ::rtl::OUString > ODatabaseMetaDataResultSet::getSupportedServiceNames_Static(  ) throw (RuntimeException)
     825                 :            :     {
     826                 :          0 :         Sequence< ::rtl::OUString > aSNS( 1 );
     827 [ #  # ][ #  # ]:          0 :         aSNS[0] = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.sdbc.ResultSet"));
     828                 :          0 :         return aSNS;
     829                 :            :     }
     830                 :            :     //------------------------------------------------------------------
     831                 :          0 :     ::rtl::OUString SAL_CALL ODatabaseMetaDataResultSet::getImplementationName(  ) throw(RuntimeException)
     832                 :            :     {
     833                 :          0 :         return getImplementationName_Static();
     834                 :            :     }
     835                 :            : 
     836                 :            :     //------------------------------------------------------------------
     837                 :          0 :     sal_Bool SAL_CALL ODatabaseMetaDataResultSet::supportsService( const ::rtl::OUString& _rServiceName ) throw(RuntimeException)
     838                 :            :     {
     839         [ #  # ]:          0 :         Sequence< ::rtl::OUString > aSupported(getSupportedServiceNames());
     840                 :          0 :         const ::rtl::OUString* pSupported = aSupported.getConstArray();
     841                 :          0 :         const ::rtl::OUString* pEnd = pSupported + aSupported.getLength();
     842 [ #  # ][ #  # ]:          0 :         for (;pSupported != pEnd && !pSupported->equals(_rServiceName); ++pSupported)
                 [ #  # ]
     843                 :            :             ;
     844                 :            : 
     845         [ #  # ]:          0 :         return pSupported != pEnd;
     846                 :            :     }
     847                 :            :     //------------------------------------------------------------------
     848                 :          0 :     Sequence< ::rtl::OUString > SAL_CALL ODatabaseMetaDataResultSet::getSupportedServiceNames(  ) throw(RuntimeException)
     849                 :            :     {
     850                 :          0 :         return getSupportedServiceNames_Static();
     851                 :            :     }
     852                 :            :     // -------------------------------------------------------------------------
     853                 :            :     namespace connectivity
     854                 :            :     {
     855                 :          0 :         Reference< XInterface >  SAL_CALL ODatabaseMetaDataResultSet_CreateInstance(const Reference< XComponentContext >& ) throw( Exception )
     856                 :            :         {
     857         [ #  # ]:          0 :             return *(new ODatabaseMetaDataResultSet());
     858                 :            :         }
     859                 :            :     }
     860                 :            : 
     861                 :            : // -----------------------------------------------------------------------------
     862                 :            : namespace
     863                 :            : {
     864                 :            :     cppu::ImplementationEntry entries[] = {
     865                 :            :         { &ODatabaseMetaDataResultSet_CreateInstance, &ODatabaseMetaDataResultSet::getImplementationName_Static, &ODatabaseMetaDataResultSet::getSupportedServiceNames_Static,
     866                 :            :             &cppu::createSingleComponentFactory, 0, 0 },
     867                 :            :         { &ParameterSubstitution::create, &ParameterSubstitution::getImplementationName_Static, &ParameterSubstitution::getSupportedServiceNames_Static,
     868                 :            :             &cppu::createSingleComponentFactory, 0, 0 },
     869                 :            :         { 0, 0, 0, 0, 0, 0 }
     870                 :            :     };
     871                 :            : }
     872                 :            : using ::rtl::OUString;
     873                 :            : using ::com::sun::star::uno::Reference;
     874                 :            : using ::com::sun::star::uno::Sequence;
     875                 :            : using ::com::sun::star::registry::XRegistryKey;
     876                 :            : using ::com::sun::star::registry::InvalidRegistryException;
     877                 :            : using ::com::sun::star::registry::InvalidValueException;
     878                 :            : using ::com::sun::star::lang::XMultiServiceFactory;
     879                 :            : 
     880                 :            : //==========================================================================
     881                 :            : //= registration
     882                 :            : //==========================================================================
     883                 :            : extern "C"
     884                 :            : {
     885                 :            : 
     886                 :            : //---------------------------------------------------------------------------------------
     887                 :          0 : SAL_DLLPUBLIC_EXPORT void* SAL_CALL component_getFactory(const sal_Char* implName, ::com::sun::star::lang::XMultiServiceFactory* serviceManager, void* registryKey)
     888                 :            : {
     889                 :          0 :     return cppu::component_getFactoryHelper(implName, serviceManager, registryKey, entries);
     890                 :            : }
     891                 :            : 
     892                 :            : }   // extern "C"
     893                 :            : 
     894                 :            : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10