1*6df1ea1fSAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3*6df1ea1fSAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*6df1ea1fSAndrew Rist * or more contributor license agreements. See the NOTICE file 5*6df1ea1fSAndrew Rist * distributed with this work for additional information 6*6df1ea1fSAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*6df1ea1fSAndrew Rist * to you under the Apache License, Version 2.0 (the 8*6df1ea1fSAndrew Rist * "License"); you may not use this file except in compliance 9*6df1ea1fSAndrew Rist * with the License. You may obtain a copy of the License at 10*6df1ea1fSAndrew Rist * 11*6df1ea1fSAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*6df1ea1fSAndrew Rist * 13*6df1ea1fSAndrew Rist * Unless required by applicable law or agreed to in writing, 14*6df1ea1fSAndrew Rist * software distributed under the License is distributed on an 15*6df1ea1fSAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*6df1ea1fSAndrew Rist * KIND, either express or implied. See the License for the 17*6df1ea1fSAndrew Rist * specific language governing permissions and limitations 18*6df1ea1fSAndrew Rist * under the License. 19*6df1ea1fSAndrew Rist * 20*6df1ea1fSAndrew Rist *************************************************************/ 21*6df1ea1fSAndrew Rist 22*6df1ea1fSAndrew Rist 23cdf0e10cSrcweir #ifndef _FTP_FTPRESULTSETBASE_HXX_ 24cdf0e10cSrcweir #define _FTP_FTPRESULTSETBASE_HXX_ 25cdf0e10cSrcweir 26cdf0e10cSrcweir #include <vector> 27cdf0e10cSrcweir #include <cppuhelper/weak.hxx> 28cdf0e10cSrcweir #include <cppuhelper/interfacecontainer.hxx> 29cdf0e10cSrcweir #include <com/sun/star/lang/XComponent.hpp> 30cdf0e10cSrcweir #include <com/sun/star/ucb/XContentAccess.hpp> 31cdf0e10cSrcweir #include <com/sun/star/sdbc/XCloseable.hpp> 32cdf0e10cSrcweir #include <com/sun/star/beans/XPropertySet.hpp> 33cdf0e10cSrcweir #include <com/sun/star/sdbc/XResultSet.hpp> 34cdf0e10cSrcweir #include <com/sun/star/sdbc/XRow.hpp> 35cdf0e10cSrcweir #include <com/sun/star/sdbc/XResultSetMetaDataSupplier.hpp> 36cdf0e10cSrcweir #include <com/sun/star/ucb/NumberedSortingInfo.hpp> 37cdf0e10cSrcweir #include <com/sun/star/ucb/XContentProvider.hpp> 38cdf0e10cSrcweir #include <com/sun/star/ucb/XContentIdentifier.hpp> 39cdf0e10cSrcweir #include <com/sun/star/lang/XMultiServiceFactory.hpp> 40cdf0e10cSrcweir #include <com/sun/star/beans/Property.hpp> 41cdf0e10cSrcweir 42cdf0e10cSrcweir 43cdf0e10cSrcweir namespace ftp { 44cdf0e10cSrcweir 45cdf0e10cSrcweir class ResultSetBase 46cdf0e10cSrcweir : public cppu::OWeakObject, 47cdf0e10cSrcweir public com::sun::star::lang::XComponent, 48cdf0e10cSrcweir public com::sun::star::sdbc::XRow, 49cdf0e10cSrcweir public com::sun::star::sdbc::XResultSet, 50cdf0e10cSrcweir public com::sun::star::sdbc::XCloseable, 51cdf0e10cSrcweir public com::sun::star::sdbc::XResultSetMetaDataSupplier, 52cdf0e10cSrcweir public com::sun::star::beans::XPropertySet, 53cdf0e10cSrcweir public com::sun::star::ucb::XContentAccess 54cdf0e10cSrcweir { 55cdf0e10cSrcweir public: 56cdf0e10cSrcweir 57cdf0e10cSrcweir ResultSetBase(const com::sun::star::uno::Reference< 58cdf0e10cSrcweir com::sun::star::lang::XMultiServiceFactory >& xMSF, 59cdf0e10cSrcweir const com::sun::star::uno::Reference< 60cdf0e10cSrcweir com::sun::star::ucb::XContentProvider >& xProvider, 61cdf0e10cSrcweir sal_Int32 nOpenMode, 62cdf0e10cSrcweir const com::sun::star::uno::Sequence< 63cdf0e10cSrcweir com::sun::star::beans::Property >& seq, 64cdf0e10cSrcweir const com::sun::star::uno::Sequence< 65cdf0e10cSrcweir com::sun::star::ucb::NumberedSortingInfo >& seqSort); 66cdf0e10cSrcweir 67cdf0e10cSrcweir virtual ~ResultSetBase(); 68cdf0e10cSrcweir 69cdf0e10cSrcweir // XInterface 70cdf0e10cSrcweir virtual com::sun::star::uno::Any SAL_CALL 71cdf0e10cSrcweir queryInterface( 72cdf0e10cSrcweir const com::sun::star::uno::Type& aType ) 73cdf0e10cSrcweir throw( com::sun::star::uno::RuntimeException); 74cdf0e10cSrcweir 75cdf0e10cSrcweir virtual void SAL_CALL 76cdf0e10cSrcweir acquire( 77cdf0e10cSrcweir void ) 78cdf0e10cSrcweir throw(); 79cdf0e10cSrcweir 80cdf0e10cSrcweir virtual void SAL_CALL 81cdf0e10cSrcweir release( 82cdf0e10cSrcweir void ) 83cdf0e10cSrcweir throw(); 84cdf0e10cSrcweir 85cdf0e10cSrcweir // XComponent 86cdf0e10cSrcweir virtual void SAL_CALL 87cdf0e10cSrcweir dispose( 88cdf0e10cSrcweir void ) 89cdf0e10cSrcweir throw( com::sun::star::uno::RuntimeException ); 90cdf0e10cSrcweir 91cdf0e10cSrcweir virtual void SAL_CALL 92cdf0e10cSrcweir addEventListener( 93cdf0e10cSrcweir const com::sun::star::uno::Reference< 94cdf0e10cSrcweir com::sun::star::lang::XEventListener >& xListener ) 95cdf0e10cSrcweir throw( com::sun::star::uno::RuntimeException ); 96cdf0e10cSrcweir 97cdf0e10cSrcweir virtual void SAL_CALL 98cdf0e10cSrcweir removeEventListener( const com::sun::star::uno::Reference< 99cdf0e10cSrcweir com::sun::star::lang::XEventListener >& aListener ) 100cdf0e10cSrcweir throw( com::sun::star::uno::RuntimeException ); 101cdf0e10cSrcweir 102cdf0e10cSrcweir 103cdf0e10cSrcweir // XRow 104cdf0e10cSrcweir virtual sal_Bool SAL_CALL wasNull(void)105cdf0e10cSrcweir wasNull( 106cdf0e10cSrcweir void ) 107cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 108cdf0e10cSrcweir com::sun::star::uno::RuntimeException ) 109cdf0e10cSrcweir { 110cdf0e10cSrcweir if( 0<= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 111cdf0e10cSrcweir m_nWasNull = m_aItems[m_nRow]->wasNull(); 112cdf0e10cSrcweir else 113cdf0e10cSrcweir m_nWasNull = true; 114cdf0e10cSrcweir return m_nWasNull; 115cdf0e10cSrcweir } 116cdf0e10cSrcweir 117cdf0e10cSrcweir virtual rtl::OUString SAL_CALL getString(sal_Int32 columnIndex)118cdf0e10cSrcweir getString( 119cdf0e10cSrcweir sal_Int32 columnIndex ) 120cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 121cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 122cdf0e10cSrcweir { 123cdf0e10cSrcweir rtl::OUString ret; 124cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 125cdf0e10cSrcweir ret = m_aItems[m_nRow]->getString( columnIndex ); 126cdf0e10cSrcweir 127cdf0e10cSrcweir return ret; 128cdf0e10cSrcweir } 129cdf0e10cSrcweir 130cdf0e10cSrcweir virtual sal_Bool SAL_CALL getBoolean(sal_Int32 columnIndex)131cdf0e10cSrcweir getBoolean( 132cdf0e10cSrcweir sal_Int32 columnIndex ) 133cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 134cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 135cdf0e10cSrcweir { 136cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 137cdf0e10cSrcweir return m_aItems[m_nRow]->getBoolean( columnIndex ); 138cdf0e10cSrcweir else 139cdf0e10cSrcweir return false; 140cdf0e10cSrcweir } 141cdf0e10cSrcweir 142cdf0e10cSrcweir virtual sal_Int8 SAL_CALL getByte(sal_Int32 columnIndex)143cdf0e10cSrcweir getByte( 144cdf0e10cSrcweir sal_Int32 columnIndex ) 145cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 146cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 147cdf0e10cSrcweir { 148cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 149cdf0e10cSrcweir return m_aItems[m_nRow]->getByte( columnIndex ); 150cdf0e10cSrcweir else 151cdf0e10cSrcweir return sal_Int8( 0 ); 152cdf0e10cSrcweir } 153cdf0e10cSrcweir 154cdf0e10cSrcweir virtual sal_Int16 SAL_CALL getShort(sal_Int32 columnIndex)155cdf0e10cSrcweir getShort( 156cdf0e10cSrcweir sal_Int32 columnIndex ) 157cdf0e10cSrcweir throw( 158cdf0e10cSrcweir com::sun::star::sdbc::SQLException, 159cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 160cdf0e10cSrcweir { 161cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 162cdf0e10cSrcweir return m_aItems[m_nRow]->getShort( columnIndex ); 163cdf0e10cSrcweir else 164cdf0e10cSrcweir return sal_Int16( 0 ); 165cdf0e10cSrcweir } 166cdf0e10cSrcweir 167cdf0e10cSrcweir virtual sal_Int32 SAL_CALL getInt(sal_Int32 columnIndex)168cdf0e10cSrcweir getInt( 169cdf0e10cSrcweir sal_Int32 columnIndex ) 170cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 171cdf0e10cSrcweir com::sun::star::uno::RuntimeException ) 172cdf0e10cSrcweir { 173cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 174cdf0e10cSrcweir return m_aItems[m_nRow]->getInt( columnIndex ); 175cdf0e10cSrcweir else 176cdf0e10cSrcweir return sal_Int32( 0 ); 177cdf0e10cSrcweir } 178cdf0e10cSrcweir 179cdf0e10cSrcweir virtual sal_Int64 SAL_CALL getLong(sal_Int32 columnIndex)180cdf0e10cSrcweir getLong( 181cdf0e10cSrcweir sal_Int32 columnIndex ) 182cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 183cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 184cdf0e10cSrcweir { 185cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 186cdf0e10cSrcweir return m_aItems[m_nRow]->getLong( columnIndex ); 187cdf0e10cSrcweir else 188cdf0e10cSrcweir return sal_Int64( 0 ); 189cdf0e10cSrcweir } 190cdf0e10cSrcweir 191cdf0e10cSrcweir virtual float SAL_CALL getFloat(sal_Int32 columnIndex)192cdf0e10cSrcweir getFloat( 193cdf0e10cSrcweir sal_Int32 columnIndex ) 194cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 195cdf0e10cSrcweir com::sun::star::uno::RuntimeException ) 196cdf0e10cSrcweir { 197cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 198cdf0e10cSrcweir return m_aItems[m_nRow]->getFloat( columnIndex ); 199cdf0e10cSrcweir else 200cdf0e10cSrcweir return float( 0 ); 201cdf0e10cSrcweir } 202cdf0e10cSrcweir 203cdf0e10cSrcweir virtual double SAL_CALL getDouble(sal_Int32 columnIndex)204cdf0e10cSrcweir getDouble( 205cdf0e10cSrcweir sal_Int32 columnIndex ) 206cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 207cdf0e10cSrcweir com::sun::star::uno::RuntimeException ) 208cdf0e10cSrcweir { 209cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 210cdf0e10cSrcweir return m_aItems[m_nRow]->getDouble( columnIndex ); 211cdf0e10cSrcweir else 212cdf0e10cSrcweir return double( 0 ); 213cdf0e10cSrcweir } 214cdf0e10cSrcweir 215cdf0e10cSrcweir virtual com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getBytes(sal_Int32 columnIndex)216cdf0e10cSrcweir getBytes( 217cdf0e10cSrcweir sal_Int32 columnIndex ) 218cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 219cdf0e10cSrcweir com::sun::star::uno::RuntimeException ) 220cdf0e10cSrcweir { 221cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 222cdf0e10cSrcweir return m_aItems[m_nRow]->getBytes( columnIndex ); 223cdf0e10cSrcweir else 224cdf0e10cSrcweir return com::sun::star::uno::Sequence< sal_Int8 >(); 225cdf0e10cSrcweir } 226cdf0e10cSrcweir 227cdf0e10cSrcweir virtual com::sun::star::util::Date SAL_CALL getDate(sal_Int32 columnIndex)228cdf0e10cSrcweir getDate( 229cdf0e10cSrcweir sal_Int32 columnIndex ) 230cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 231cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 232cdf0e10cSrcweir { 233cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 234cdf0e10cSrcweir return m_aItems[m_nRow]->getDate( columnIndex ); 235cdf0e10cSrcweir else 236cdf0e10cSrcweir return com::sun::star::util::Date(); 237cdf0e10cSrcweir } 238cdf0e10cSrcweir 239cdf0e10cSrcweir virtual com::sun::star::util::Time SAL_CALL getTime(sal_Int32 columnIndex)240cdf0e10cSrcweir getTime( 241cdf0e10cSrcweir sal_Int32 columnIndex ) 242cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 243cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 244cdf0e10cSrcweir { 245cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 246cdf0e10cSrcweir return m_aItems[m_nRow]->getTime( columnIndex ); 247cdf0e10cSrcweir else 248cdf0e10cSrcweir return com::sun::star::util::Time(); 249cdf0e10cSrcweir } 250cdf0e10cSrcweir 251cdf0e10cSrcweir virtual com::sun::star::util::DateTime SAL_CALL getTimestamp(sal_Int32 columnIndex)252cdf0e10cSrcweir getTimestamp( 253cdf0e10cSrcweir sal_Int32 columnIndex ) 254cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 255cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 256cdf0e10cSrcweir { 257cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 258cdf0e10cSrcweir return m_aItems[m_nRow]->getTimestamp( columnIndex ); 259cdf0e10cSrcweir else 260cdf0e10cSrcweir return com::sun::star::util::DateTime(); 261cdf0e10cSrcweir } 262cdf0e10cSrcweir 263cdf0e10cSrcweir 264cdf0e10cSrcweir virtual com::sun::star::uno::Reference< 265cdf0e10cSrcweir com::sun::star::io::XInputStream > SAL_CALL getBinaryStream(sal_Int32 columnIndex)266cdf0e10cSrcweir getBinaryStream( 267cdf0e10cSrcweir sal_Int32 columnIndex ) 268cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 269cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 270cdf0e10cSrcweir { 271cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 272cdf0e10cSrcweir return m_aItems[m_nRow]->getBinaryStream( columnIndex ); 273cdf0e10cSrcweir else 274cdf0e10cSrcweir return com::sun::star::uno::Reference< 275cdf0e10cSrcweir com::sun::star::io::XInputStream >(); 276cdf0e10cSrcweir } 277cdf0e10cSrcweir 278cdf0e10cSrcweir virtual com::sun::star::uno::Reference< 279cdf0e10cSrcweir com::sun::star::io::XInputStream > SAL_CALL getCharacterStream(sal_Int32 columnIndex)280cdf0e10cSrcweir getCharacterStream( 281cdf0e10cSrcweir sal_Int32 columnIndex ) 282cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 283cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 284cdf0e10cSrcweir { 285cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 286cdf0e10cSrcweir return m_aItems[m_nRow]->getCharacterStream( columnIndex ); 287cdf0e10cSrcweir else 288cdf0e10cSrcweir return com::sun::star::uno::Reference< 289cdf0e10cSrcweir com::sun::star::io::XInputStream >(); 290cdf0e10cSrcweir } 291cdf0e10cSrcweir 292cdf0e10cSrcweir virtual com::sun::star::uno::Any SAL_CALL getObject(sal_Int32 columnIndex,const com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> & typeMap)293cdf0e10cSrcweir getObject( 294cdf0e10cSrcweir sal_Int32 columnIndex, 295cdf0e10cSrcweir const com::sun::star::uno::Reference< 296cdf0e10cSrcweir com::sun::star::container::XNameAccess >& typeMap ) 297cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 298cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 299cdf0e10cSrcweir { 300cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 301cdf0e10cSrcweir return m_aItems[m_nRow]->getObject( columnIndex,typeMap ); 302cdf0e10cSrcweir else 303cdf0e10cSrcweir return com::sun::star::uno::Any(); 304cdf0e10cSrcweir } 305cdf0e10cSrcweir 306cdf0e10cSrcweir virtual com::sun::star::uno::Reference< 307cdf0e10cSrcweir com::sun::star::sdbc::XRef > SAL_CALL getRef(sal_Int32 columnIndex)308cdf0e10cSrcweir getRef( 309cdf0e10cSrcweir sal_Int32 columnIndex ) 310cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 311cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 312cdf0e10cSrcweir { 313cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 314cdf0e10cSrcweir return m_aItems[m_nRow]->getRef( columnIndex ); 315cdf0e10cSrcweir else 316cdf0e10cSrcweir return com::sun::star::uno::Reference< com::sun::star::sdbc::XRef >(); 317cdf0e10cSrcweir } 318cdf0e10cSrcweir 319cdf0e10cSrcweir virtual com::sun::star::uno::Reference< 320cdf0e10cSrcweir com::sun::star::sdbc::XBlob > SAL_CALL getBlob(sal_Int32 columnIndex)321cdf0e10cSrcweir getBlob( 322cdf0e10cSrcweir sal_Int32 columnIndex ) 323cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 324cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 325cdf0e10cSrcweir { 326cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 327cdf0e10cSrcweir return m_aItems[m_nRow]->getBlob( columnIndex ); 328cdf0e10cSrcweir else 329cdf0e10cSrcweir return com::sun::star::uno::Reference< com::sun::star::sdbc::XBlob >(); 330cdf0e10cSrcweir } 331cdf0e10cSrcweir 332cdf0e10cSrcweir virtual com::sun::star::uno::Reference< 333cdf0e10cSrcweir com::sun::star::sdbc::XClob > SAL_CALL getClob(sal_Int32 columnIndex)334cdf0e10cSrcweir getClob( 335cdf0e10cSrcweir sal_Int32 columnIndex ) 336cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 337cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 338cdf0e10cSrcweir { 339cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 340cdf0e10cSrcweir return m_aItems[m_nRow]->getClob( columnIndex ); 341cdf0e10cSrcweir else 342cdf0e10cSrcweir return com::sun::star::uno::Reference< 343cdf0e10cSrcweir com::sun::star::sdbc::XClob >(); 344cdf0e10cSrcweir } 345cdf0e10cSrcweir 346cdf0e10cSrcweir virtual com::sun::star::uno::Reference< 347cdf0e10cSrcweir com::sun::star::sdbc::XArray > SAL_CALL getArray(sal_Int32 columnIndex)348cdf0e10cSrcweir getArray( 349cdf0e10cSrcweir sal_Int32 columnIndex ) 350cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 351cdf0e10cSrcweir com::sun::star::uno::RuntimeException) 352cdf0e10cSrcweir { 353cdf0e10cSrcweir if( 0 <= m_nRow && m_nRow < sal::static_int_cast<sal_Int32>(m_aItems.size()) ) 354cdf0e10cSrcweir return m_aItems[m_nRow]->getArray( columnIndex ); 355cdf0e10cSrcweir else 356cdf0e10cSrcweir return com::sun::star::uno::Reference< 357cdf0e10cSrcweir com::sun::star::sdbc::XArray >(); 358cdf0e10cSrcweir } 359cdf0e10cSrcweir 360cdf0e10cSrcweir 361cdf0e10cSrcweir // XResultSet 362cdf0e10cSrcweir 363cdf0e10cSrcweir virtual sal_Bool SAL_CALL 364cdf0e10cSrcweir next( 365cdf0e10cSrcweir void ) 366cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 367cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 368cdf0e10cSrcweir 369cdf0e10cSrcweir virtual sal_Bool SAL_CALL 370cdf0e10cSrcweir isBeforeFirst( 371cdf0e10cSrcweir void ) 372cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 373cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 374cdf0e10cSrcweir 375cdf0e10cSrcweir virtual sal_Bool SAL_CALL 376cdf0e10cSrcweir isAfterLast( 377cdf0e10cSrcweir void ) 378cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 379cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 380cdf0e10cSrcweir 381cdf0e10cSrcweir virtual sal_Bool SAL_CALL 382cdf0e10cSrcweir isFirst( 383cdf0e10cSrcweir void ) 384cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 385cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 386cdf0e10cSrcweir 387cdf0e10cSrcweir virtual sal_Bool SAL_CALL 388cdf0e10cSrcweir isLast( 389cdf0e10cSrcweir void ) 390cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 391cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 392cdf0e10cSrcweir 393cdf0e10cSrcweir virtual void SAL_CALL 394cdf0e10cSrcweir beforeFirst( 395cdf0e10cSrcweir void ) 396cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 397cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 398cdf0e10cSrcweir 399cdf0e10cSrcweir virtual void SAL_CALL 400cdf0e10cSrcweir afterLast( 401cdf0e10cSrcweir void ) 402cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 403cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 404cdf0e10cSrcweir 405cdf0e10cSrcweir virtual sal_Bool SAL_CALL 406cdf0e10cSrcweir first( 407cdf0e10cSrcweir void ) 408cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 409cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 410cdf0e10cSrcweir 411cdf0e10cSrcweir virtual sal_Bool SAL_CALL 412cdf0e10cSrcweir last( 413cdf0e10cSrcweir void ) 414cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 415cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 416cdf0e10cSrcweir 417cdf0e10cSrcweir virtual sal_Int32 SAL_CALL 418cdf0e10cSrcweir getRow( 419cdf0e10cSrcweir void ) 420cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 421cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 422cdf0e10cSrcweir 423cdf0e10cSrcweir virtual sal_Bool SAL_CALL 424cdf0e10cSrcweir absolute( 425cdf0e10cSrcweir sal_Int32 row ) 426cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 427cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 428cdf0e10cSrcweir 429cdf0e10cSrcweir virtual sal_Bool SAL_CALL 430cdf0e10cSrcweir relative( 431cdf0e10cSrcweir sal_Int32 rows ) 432cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 433cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 434cdf0e10cSrcweir 435cdf0e10cSrcweir virtual sal_Bool SAL_CALL 436cdf0e10cSrcweir previous( 437cdf0e10cSrcweir void ) 438cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 439cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 440cdf0e10cSrcweir 441cdf0e10cSrcweir virtual void SAL_CALL 442cdf0e10cSrcweir refreshRow( 443cdf0e10cSrcweir void ) 444cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 445cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 446cdf0e10cSrcweir 447cdf0e10cSrcweir virtual sal_Bool SAL_CALL 448cdf0e10cSrcweir rowUpdated( 449cdf0e10cSrcweir void ) 450cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 451cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 452cdf0e10cSrcweir 453cdf0e10cSrcweir virtual sal_Bool SAL_CALL 454cdf0e10cSrcweir rowInserted( 455cdf0e10cSrcweir void ) 456cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 457cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 458cdf0e10cSrcweir 459cdf0e10cSrcweir virtual sal_Bool SAL_CALL 460cdf0e10cSrcweir rowDeleted( 461cdf0e10cSrcweir void ) 462cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 463cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 464cdf0e10cSrcweir 465cdf0e10cSrcweir 466cdf0e10cSrcweir virtual com::sun::star::uno::Reference< 467cdf0e10cSrcweir com::sun::star::uno::XInterface > SAL_CALL 468cdf0e10cSrcweir getStatement( 469cdf0e10cSrcweir void ) 470cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 471cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 472cdf0e10cSrcweir 473cdf0e10cSrcweir // XCloseable 474cdf0e10cSrcweir 475cdf0e10cSrcweir virtual void SAL_CALL 476cdf0e10cSrcweir close( 477cdf0e10cSrcweir void ) 478cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 479cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 480cdf0e10cSrcweir 481cdf0e10cSrcweir // XContentAccess 482cdf0e10cSrcweir 483cdf0e10cSrcweir virtual rtl::OUString SAL_CALL 484cdf0e10cSrcweir queryContentIdentifierString( 485cdf0e10cSrcweir void ) 486cdf0e10cSrcweir throw( com::sun::star::uno::RuntimeException ); 487cdf0e10cSrcweir 488cdf0e10cSrcweir virtual com::sun::star::uno::Reference< 489cdf0e10cSrcweir com::sun::star::ucb::XContentIdentifier > SAL_CALL 490cdf0e10cSrcweir queryContentIdentifier( 491cdf0e10cSrcweir void ) 492cdf0e10cSrcweir throw( com::sun::star::uno::RuntimeException ); 493cdf0e10cSrcweir 494cdf0e10cSrcweir virtual com::sun::star::uno::Reference< 495cdf0e10cSrcweir com::sun::star::ucb::XContent > SAL_CALL 496cdf0e10cSrcweir queryContent( 497cdf0e10cSrcweir void ) 498cdf0e10cSrcweir throw( com::sun::star::uno::RuntimeException ); 499cdf0e10cSrcweir 500cdf0e10cSrcweir // XResultSetMetaDataSupplier 501cdf0e10cSrcweir virtual com::sun::star::uno::Reference< 502cdf0e10cSrcweir com::sun::star::sdbc::XResultSetMetaData > SAL_CALL 503cdf0e10cSrcweir getMetaData( 504cdf0e10cSrcweir void ) 505cdf0e10cSrcweir throw( com::sun::star::sdbc::SQLException, 506cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 507cdf0e10cSrcweir 508cdf0e10cSrcweir 509cdf0e10cSrcweir // XPropertySet 510cdf0e10cSrcweir virtual com::sun::star::uno::Reference< 511cdf0e10cSrcweir com::sun::star::beans::XPropertySetInfo > SAL_CALL 512cdf0e10cSrcweir getPropertySetInfo() 513cdf0e10cSrcweir throw( com::sun::star::uno::RuntimeException); 514cdf0e10cSrcweir 515cdf0e10cSrcweir virtual void SAL_CALL setPropertyValue( 516cdf0e10cSrcweir const rtl::OUString& aPropertyName, 517cdf0e10cSrcweir const com::sun::star::uno::Any& aValue ) 518cdf0e10cSrcweir throw( com::sun::star::beans::UnknownPropertyException, 519cdf0e10cSrcweir com::sun::star::beans::PropertyVetoException, 520cdf0e10cSrcweir com::sun::star::lang::IllegalArgumentException, 521cdf0e10cSrcweir com::sun::star::lang::WrappedTargetException, 522cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 523cdf0e10cSrcweir 524cdf0e10cSrcweir virtual com::sun::star::uno::Any SAL_CALL 525cdf0e10cSrcweir getPropertyValue( 526cdf0e10cSrcweir const rtl::OUString& PropertyName ) 527cdf0e10cSrcweir throw( com::sun::star::beans::UnknownPropertyException, 528cdf0e10cSrcweir com::sun::star::lang::WrappedTargetException, 529cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 530cdf0e10cSrcweir 531cdf0e10cSrcweir virtual void SAL_CALL 532cdf0e10cSrcweir addPropertyChangeListener( 533cdf0e10cSrcweir const rtl::OUString& aPropertyName, 534cdf0e10cSrcweir const com::sun::star::uno::Reference< 535cdf0e10cSrcweir com::sun::star::beans::XPropertyChangeListener >& xListener ) 536cdf0e10cSrcweir throw( com::sun::star::beans::UnknownPropertyException, 537cdf0e10cSrcweir com::sun::star::lang::WrappedTargetException, 538cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 539cdf0e10cSrcweir 540cdf0e10cSrcweir virtual void SAL_CALL 541cdf0e10cSrcweir removePropertyChangeListener( 542cdf0e10cSrcweir const rtl::OUString& aPropertyName, 543cdf0e10cSrcweir const com::sun::star::uno::Reference< 544cdf0e10cSrcweir com::sun::star::beans::XPropertyChangeListener >& aListener ) 545cdf0e10cSrcweir throw( com::sun::star::beans::UnknownPropertyException, 546cdf0e10cSrcweir com::sun::star::lang::WrappedTargetException, 547cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 548cdf0e10cSrcweir 549cdf0e10cSrcweir virtual void SAL_CALL 550cdf0e10cSrcweir addVetoableChangeListener( 551cdf0e10cSrcweir const rtl::OUString& PropertyName, 552cdf0e10cSrcweir const com::sun::star::uno::Reference< 553cdf0e10cSrcweir com::sun::star::beans::XVetoableChangeListener >& aListener ) 554cdf0e10cSrcweir throw( com::sun::star::beans::UnknownPropertyException, 555cdf0e10cSrcweir com::sun::star::lang::WrappedTargetException, 556cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 557cdf0e10cSrcweir 558cdf0e10cSrcweir virtual void SAL_CALL removeVetoableChangeListener( 559cdf0e10cSrcweir const rtl::OUString& PropertyName, 560cdf0e10cSrcweir const com::sun::star::uno::Reference< 561cdf0e10cSrcweir com::sun::star::beans::XVetoableChangeListener >& aListener ) 562cdf0e10cSrcweir throw( com::sun::star::beans::UnknownPropertyException, 563cdf0e10cSrcweir com::sun::star::lang::WrappedTargetException, 564cdf0e10cSrcweir com::sun::star::uno::RuntimeException); 565cdf0e10cSrcweir 566cdf0e10cSrcweir protected: 567cdf0e10cSrcweir 568cdf0e10cSrcweir com::sun::star::uno::Reference< 569cdf0e10cSrcweir com::sun::star::lang::XMultiServiceFactory > m_xMSF; 570cdf0e10cSrcweir com::sun::star::uno::Reference< 571cdf0e10cSrcweir com::sun::star::ucb::XContentProvider > m_xProvider; 572cdf0e10cSrcweir sal_Int32 m_nRow; 573cdf0e10cSrcweir sal_Bool m_nWasNull; 574cdf0e10cSrcweir sal_Int32 m_nOpenMode; 575cdf0e10cSrcweir sal_Bool m_bRowCountFinal; 576cdf0e10cSrcweir 577cdf0e10cSrcweir typedef std::vector< com::sun::star::uno::Reference< 578cdf0e10cSrcweir com::sun::star::ucb::XContentIdentifier > > IdentSet; 579cdf0e10cSrcweir typedef std::vector< com::sun::star::uno::Reference< 580cdf0e10cSrcweir com::sun::star::sdbc::XRow > > ItemSet; 581cdf0e10cSrcweir typedef std::vector< rtl::OUString > 582cdf0e10cSrcweir PathSet; 583cdf0e10cSrcweir 584cdf0e10cSrcweir IdentSet m_aIdents; 585cdf0e10cSrcweir ItemSet m_aItems; 586cdf0e10cSrcweir PathSet m_aPath; 587cdf0e10cSrcweir 588cdf0e10cSrcweir com::sun::star::uno::Sequence< 589cdf0e10cSrcweir com::sun::star::beans::Property > m_sProperty; 590cdf0e10cSrcweir com::sun::star::uno::Sequence< 591cdf0e10cSrcweir com::sun::star::ucb::NumberedSortingInfo > m_sSortingInfo; 592cdf0e10cSrcweir 593cdf0e10cSrcweir osl::Mutex m_aMutex; 594cdf0e10cSrcweir cppu::OInterfaceContainerHelper* m_pDisposeEventListeners; 595cdf0e10cSrcweir 596cdf0e10cSrcweir cppu::OInterfaceContainerHelper* m_pRowCountListeners; 597cdf0e10cSrcweir cppu::OInterfaceContainerHelper* m_pIsFinalListeners; 598cdf0e10cSrcweir }; 599cdf0e10cSrcweir 600cdf0e10cSrcweir 601cdf0e10cSrcweir } // end namespace fileaccess 602cdf0e10cSrcweir 603cdf0e10cSrcweir 604cdf0e10cSrcweir #endif 605