1*cdf0e10cSrcweir /************************************************************************* 2*cdf0e10cSrcweir * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3*cdf0e10cSrcweir * 4*cdf0e10cSrcweir * Copyright 2008 by Sun Microsystems, Inc. 5*cdf0e10cSrcweir * 6*cdf0e10cSrcweir * OpenOffice.org - a multi-platform office productivity suite 7*cdf0e10cSrcweir * 8*cdf0e10cSrcweir * $RCSfile: mysqlc_resultset.cxx,v $ 9*cdf0e10cSrcweir * 10*cdf0e10cSrcweir * $Revision: 1.1.2.5 $ 11*cdf0e10cSrcweir * 12*cdf0e10cSrcweir * This file is part of OpenOffice.org. 13*cdf0e10cSrcweir * 14*cdf0e10cSrcweir * OpenOffice.org is free software: you can redistribute it and/or modify 15*cdf0e10cSrcweir * it under the terms of the GNU Lesser General Public License version 3 16*cdf0e10cSrcweir * only, as published by the Free Software Foundation. 17*cdf0e10cSrcweir * 18*cdf0e10cSrcweir * OpenOffice.org is distributed in the hope that it will be useful, 19*cdf0e10cSrcweir * but WITHOUT ANY WARRANTY; without even the implied warranty of 20*cdf0e10cSrcweir * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21*cdf0e10cSrcweir * GNU Lesser General Public License version 3 for more details 22*cdf0e10cSrcweir * (a copy is included in the LICENSE file that accompanied this code). 23*cdf0e10cSrcweir * 24*cdf0e10cSrcweir * You should have received a copy of the GNU Lesser General Public License 25*cdf0e10cSrcweir * version 3 along with OpenOffice.org. If not, see 26*cdf0e10cSrcweir * <http://www.openoffice.org/license.html> 27*cdf0e10cSrcweir * for a copy of the LGPLv3 License. 28*cdf0e10cSrcweir ************************************************************************/ 29*cdf0e10cSrcweir 30*cdf0e10cSrcweir #include "mysqlc_propertyids.hxx" 31*cdf0e10cSrcweir #include "mysqlc_general.hxx" 32*cdf0e10cSrcweir #include "mysqlc_resultset.hxx" 33*cdf0e10cSrcweir #include "mysqlc_resultsetmetadata.hxx" 34*cdf0e10cSrcweir 35*cdf0e10cSrcweir #include <com/sun/star/sdbc/DataType.hpp> 36*cdf0e10cSrcweir #include <com/sun/star/beans/PropertyAttribute.hpp> 37*cdf0e10cSrcweir #include <com/sun/star/sdbcx/CompareBookmark.hpp> 38*cdf0e10cSrcweir #include <com/sun/star/sdbc/ResultSetConcurrency.hpp> 39*cdf0e10cSrcweir #include <com/sun/star/sdbc/ResultSetType.hpp> 40*cdf0e10cSrcweir #include <com/sun/star/sdbc/FetchDirection.hpp> 41*cdf0e10cSrcweir #include <cppuhelper/typeprovider.hxx> 42*cdf0e10cSrcweir #include <com/sun/star/lang/DisposedException.hpp> 43*cdf0e10cSrcweir 44*cdf0e10cSrcweir using namespace connectivity::mysqlc; 45*cdf0e10cSrcweir using namespace cppu; 46*cdf0e10cSrcweir using namespace com::sun::star::uno; 47*cdf0e10cSrcweir using namespace com::sun::star::lang; 48*cdf0e10cSrcweir using namespace com::sun::star::beans; 49*cdf0e10cSrcweir using namespace com::sun::star::sdbc; 50*cdf0e10cSrcweir using namespace com::sun::star::sdbcx; 51*cdf0e10cSrcweir using namespace com::sun::star::container; 52*cdf0e10cSrcweir using namespace com::sun::star::io; 53*cdf0e10cSrcweir using namespace com::sun::star::util; 54*cdf0e10cSrcweir using ::osl::MutexGuard; 55*cdf0e10cSrcweir using ::rtl::OUString; 56*cdf0e10cSrcweir 57*cdf0e10cSrcweir #include <cppconn/resultset.h> 58*cdf0e10cSrcweir #include <cppconn/resultset_metadata.h> 59*cdf0e10cSrcweir 60*cdf0e10cSrcweir #include <stdio.h> 61*cdf0e10cSrcweir 62*cdf0e10cSrcweir 63*cdf0e10cSrcweir // IMPLEMENT_SERVICE_INFO(OResultSet,"com.sun.star.sdbcx.OResultSet","com.sun.star.sdbc.ResultSet"); 64*cdf0e10cSrcweir /* {{{ OResultSet::getImplementationName() -I- */ 65*cdf0e10cSrcweir OUString SAL_CALL OResultSet::getImplementationName() 66*cdf0e10cSrcweir throw (RuntimeException) 67*cdf0e10cSrcweir { 68*cdf0e10cSrcweir OSL_TRACE("OResultSet::getImplementationName"); 69*cdf0e10cSrcweir return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.sdbcx.mysqlc.ResultSet" ) ); 70*cdf0e10cSrcweir } 71*cdf0e10cSrcweir /* }}} */ 72*cdf0e10cSrcweir 73*cdf0e10cSrcweir 74*cdf0e10cSrcweir /* {{{ OResultSet::getSupportedServiceNames() -I- */ 75*cdf0e10cSrcweir Sequence< OUString > SAL_CALL OResultSet::getSupportedServiceNames() 76*cdf0e10cSrcweir throw(RuntimeException) 77*cdf0e10cSrcweir { 78*cdf0e10cSrcweir OSL_TRACE("OResultSet::getSupportedServiceNames"); 79*cdf0e10cSrcweir Sequence< OUString > aSupported(2); 80*cdf0e10cSrcweir aSupported[0] = OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.sdbc.ResultSet" ) ); 81*cdf0e10cSrcweir aSupported[1] = OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.sdbcx.ResultSet" ) ); 82*cdf0e10cSrcweir return (aSupported); 83*cdf0e10cSrcweir } 84*cdf0e10cSrcweir /* }}} */ 85*cdf0e10cSrcweir 86*cdf0e10cSrcweir 87*cdf0e10cSrcweir /* {{{ OResultSet::supportsService() -I- */ 88*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::supportsService(const OUString& _rServiceName) 89*cdf0e10cSrcweir throw(RuntimeException) 90*cdf0e10cSrcweir { 91*cdf0e10cSrcweir OSL_TRACE("OResultSet::supportsService"); 92*cdf0e10cSrcweir Sequence< OUString > aSupported(getSupportedServiceNames()); 93*cdf0e10cSrcweir const OUString* pSupported = aSupported.getConstArray(); 94*cdf0e10cSrcweir const OUString* pEnd = pSupported + aSupported.getLength(); 95*cdf0e10cSrcweir for (;pSupported != pEnd && !pSupported->equals(_rServiceName); ++pSupported) {} 96*cdf0e10cSrcweir 97*cdf0e10cSrcweir return (pSupported != pEnd); 98*cdf0e10cSrcweir } 99*cdf0e10cSrcweir /* }}} */ 100*cdf0e10cSrcweir 101*cdf0e10cSrcweir 102*cdf0e10cSrcweir /* {{{ OResultSet::OResultSet() -I- */ 103*cdf0e10cSrcweir OResultSet::OResultSet(OCommonStatement * pStmt, sql::ResultSet * result, rtl_TextEncoding _encoding ) 104*cdf0e10cSrcweir : OResultSet_BASE(m_aMutex) 105*cdf0e10cSrcweir ,OPropertySetHelper(OResultSet_BASE::rBHelper) 106*cdf0e10cSrcweir ,m_aStatement((OWeakObject*)pStmt) 107*cdf0e10cSrcweir ,m_xMetaData(NULL) 108*cdf0e10cSrcweir ,m_result(result) 109*cdf0e10cSrcweir ,fieldCount( 0 ) 110*cdf0e10cSrcweir ,m_encoding( _encoding ) 111*cdf0e10cSrcweir { 112*cdf0e10cSrcweir OSL_TRACE("OResultSet::OResultSet"); 113*cdf0e10cSrcweir try { 114*cdf0e10cSrcweir sql::ResultSetMetaData * rs_meta = m_result->getMetaData(); 115*cdf0e10cSrcweir fieldCount = rs_meta->getColumnCount(); 116*cdf0e10cSrcweir } catch (sql::SQLException &e) { 117*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 118*cdf0e10cSrcweir } 119*cdf0e10cSrcweir } 120*cdf0e10cSrcweir /* }}} */ 121*cdf0e10cSrcweir 122*cdf0e10cSrcweir 123*cdf0e10cSrcweir /* {{{ OResultSet::~OResultSet() -I- */ 124*cdf0e10cSrcweir OResultSet::~OResultSet() 125*cdf0e10cSrcweir { 126*cdf0e10cSrcweir OSL_TRACE("OResultSet::~OResultSet"); 127*cdf0e10cSrcweir } 128*cdf0e10cSrcweir /* }}} */ 129*cdf0e10cSrcweir 130*cdf0e10cSrcweir 131*cdf0e10cSrcweir /* {{{ OResultSet::disposing() -I- */ 132*cdf0e10cSrcweir void OResultSet::disposing() 133*cdf0e10cSrcweir { 134*cdf0e10cSrcweir OSL_TRACE("OResultSet::disposing"); 135*cdf0e10cSrcweir OPropertySetHelper::disposing(); 136*cdf0e10cSrcweir 137*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 138*cdf0e10cSrcweir 139*cdf0e10cSrcweir m_aStatement = NULL; 140*cdf0e10cSrcweir m_xMetaData = NULL; 141*cdf0e10cSrcweir } 142*cdf0e10cSrcweir /* }}} */ 143*cdf0e10cSrcweir 144*cdf0e10cSrcweir 145*cdf0e10cSrcweir /* {{{ OResultSet::queryInterface() -I- */ 146*cdf0e10cSrcweir Any SAL_CALL OResultSet::queryInterface(const Type & rType) 147*cdf0e10cSrcweir throw(RuntimeException) 148*cdf0e10cSrcweir { 149*cdf0e10cSrcweir OSL_TRACE("OResultSet::queryInterface"); 150*cdf0e10cSrcweir Any aRet = OPropertySetHelper::queryInterface(rType); 151*cdf0e10cSrcweir if (!aRet.hasValue()) { 152*cdf0e10cSrcweir aRet = OResultSet_BASE::queryInterface(rType); 153*cdf0e10cSrcweir } 154*cdf0e10cSrcweir return aRet; 155*cdf0e10cSrcweir } 156*cdf0e10cSrcweir /* }}} */ 157*cdf0e10cSrcweir 158*cdf0e10cSrcweir 159*cdf0e10cSrcweir /* {{{ OResultSet::getTypes() -I- */ 160*cdf0e10cSrcweir Sequence< Type > SAL_CALL OResultSet::getTypes() 161*cdf0e10cSrcweir throw(RuntimeException) 162*cdf0e10cSrcweir { 163*cdf0e10cSrcweir OSL_TRACE("OResultSet::getTypes"); 164*cdf0e10cSrcweir OTypeCollection aTypes( ::getCppuType((const Reference< XMultiPropertySet > *) NULL), 165*cdf0e10cSrcweir ::getCppuType((const Reference< XFastPropertySet > *) NULL), 166*cdf0e10cSrcweir ::getCppuType((const Reference< XPropertySet > *) NULL)); 167*cdf0e10cSrcweir 168*cdf0e10cSrcweir return concatSequences(aTypes.getTypes(), OResultSet_BASE::getTypes()); 169*cdf0e10cSrcweir } 170*cdf0e10cSrcweir /* }}} */ 171*cdf0e10cSrcweir 172*cdf0e10cSrcweir 173*cdf0e10cSrcweir /* {{{ OResultSet::findColumn() -I- */ 174*cdf0e10cSrcweir sal_Int32 SAL_CALL OResultSet::findColumn(const OUString& columnName) 175*cdf0e10cSrcweir throw(SQLException, RuntimeException) 176*cdf0e10cSrcweir { 177*cdf0e10cSrcweir OSL_TRACE("OResultSet::findColumn"); 178*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 179*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 180*cdf0e10cSrcweir 181*cdf0e10cSrcweir try { 182*cdf0e10cSrcweir // find the first column with the name columnName 183*cdf0e10cSrcweir sql::ResultSetMetaData * meta = m_result->getMetaData(); 184*cdf0e10cSrcweir for (sal_uInt32 i = 1; i <= fieldCount; i++) { 185*cdf0e10cSrcweir if (columnName.equalsIgnoreAsciiCaseAscii(meta->getColumnName(i).c_str())) { 186*cdf0e10cSrcweir /* SDBC knows them indexed from 1 */ 187*cdf0e10cSrcweir return i; 188*cdf0e10cSrcweir } 189*cdf0e10cSrcweir } 190*cdf0e10cSrcweir } catch (sql::SQLException &e) { 191*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 192*cdf0e10cSrcweir } 193*cdf0e10cSrcweir return 0; 194*cdf0e10cSrcweir } 195*cdf0e10cSrcweir /* }}} */ 196*cdf0e10cSrcweir 197*cdf0e10cSrcweir 198*cdf0e10cSrcweir /* {{{ OResultSet::getBinaryStream() -U- */ 199*cdf0e10cSrcweir Reference< XInputStream > SAL_CALL OResultSet::getBinaryStream(sal_Int32 column) 200*cdf0e10cSrcweir throw(SQLException, RuntimeException) 201*cdf0e10cSrcweir { 202*cdf0e10cSrcweir OSL_TRACE("OResultSet::getBinaryStream"); 203*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 204*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 205*cdf0e10cSrcweir checkColumnIndex(column); 206*cdf0e10cSrcweir 207*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::getBinaryStream", *this); 208*cdf0e10cSrcweir return NULL; 209*cdf0e10cSrcweir } 210*cdf0e10cSrcweir /* }}} */ 211*cdf0e10cSrcweir 212*cdf0e10cSrcweir 213*cdf0e10cSrcweir /* {{{ OResultSet::getCharacterStream() -U- */ 214*cdf0e10cSrcweir Reference< XInputStream > SAL_CALL OResultSet::getCharacterStream(sal_Int32 column) 215*cdf0e10cSrcweir throw(SQLException, RuntimeException) 216*cdf0e10cSrcweir { 217*cdf0e10cSrcweir OSL_TRACE("OResultSet::getCharacterStream"); 218*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 219*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 220*cdf0e10cSrcweir checkColumnIndex(column); 221*cdf0e10cSrcweir 222*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::getCharacterStream", *this); 223*cdf0e10cSrcweir return NULL; 224*cdf0e10cSrcweir } 225*cdf0e10cSrcweir /* }}} */ 226*cdf0e10cSrcweir 227*cdf0e10cSrcweir 228*cdf0e10cSrcweir /* {{{ OResultSet::getBoolean() -I- */ 229*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::getBoolean(sal_Int32 column) 230*cdf0e10cSrcweir throw(SQLException, RuntimeException) 231*cdf0e10cSrcweir { 232*cdf0e10cSrcweir OSL_TRACE("OResultSet::getBoolean"); 233*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 234*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 235*cdf0e10cSrcweir 236*cdf0e10cSrcweir checkColumnIndex(column); 237*cdf0e10cSrcweir try { 238*cdf0e10cSrcweir return m_result->getBoolean(column)? sal_True:sal_False; 239*cdf0e10cSrcweir } catch (sql::SQLException &e) { 240*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 241*cdf0e10cSrcweir } 242*cdf0e10cSrcweir return sal_False; 243*cdf0e10cSrcweir #if 0 244*cdf0e10cSrcweir OUString str = getString(column); 245*cdf0e10cSrcweir switch (str[0]) { 246*cdf0e10cSrcweir case '1': 247*cdf0e10cSrcweir case 't': 248*cdf0e10cSrcweir case 'T': 249*cdf0e10cSrcweir case 'y': 250*cdf0e10cSrcweir case 'Y': 251*cdf0e10cSrcweir return sal_True; 252*cdf0e10cSrcweir } 253*cdf0e10cSrcweir return sal_False; 254*cdf0e10cSrcweir #endif 255*cdf0e10cSrcweir } 256*cdf0e10cSrcweir /* }}} */ 257*cdf0e10cSrcweir 258*cdf0e10cSrcweir 259*cdf0e10cSrcweir /* {{{ OResultSet::getByte() -I- */ 260*cdf0e10cSrcweir sal_Int8 SAL_CALL OResultSet::getByte(sal_Int32 column) 261*cdf0e10cSrcweir throw(SQLException, RuntimeException) 262*cdf0e10cSrcweir { 263*cdf0e10cSrcweir OSL_TRACE("OResultSet::getByte"); 264*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 265*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 266*cdf0e10cSrcweir 267*cdf0e10cSrcweir checkColumnIndex(column); 268*cdf0e10cSrcweir try { 269*cdf0e10cSrcweir return m_result->getInt(column); 270*cdf0e10cSrcweir } catch (sql::SQLException &e) { 271*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 272*cdf0e10cSrcweir } 273*cdf0e10cSrcweir return 0; // fool compiler 274*cdf0e10cSrcweir } 275*cdf0e10cSrcweir /* }}} */ 276*cdf0e10cSrcweir 277*cdf0e10cSrcweir 278*cdf0e10cSrcweir /* {{{ OResultSet::getBytes() -I- */ 279*cdf0e10cSrcweir Sequence< sal_Int8 > SAL_CALL OResultSet::getBytes(sal_Int32 column) 280*cdf0e10cSrcweir throw(SQLException, RuntimeException) 281*cdf0e10cSrcweir { 282*cdf0e10cSrcweir OSL_TRACE("OResultSet::getBytes"); 283*cdf0e10cSrcweir 284*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 285*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 286*cdf0e10cSrcweir 287*cdf0e10cSrcweir 288*cdf0e10cSrcweir sql::SQLString val = m_result->getString(column); 289*cdf0e10cSrcweir if (!val.length()) { 290*cdf0e10cSrcweir return Sequence< sal_Int8>(); 291*cdf0e10cSrcweir } else { 292*cdf0e10cSrcweir return Sequence< sal_Int8 > ((sal_Int8*)val.c_str(), val.length()); 293*cdf0e10cSrcweir } 294*cdf0e10cSrcweir } 295*cdf0e10cSrcweir /* }}} */ 296*cdf0e10cSrcweir 297*cdf0e10cSrcweir 298*cdf0e10cSrcweir /* {{{ OResultSet::getDate() -I- */ 299*cdf0e10cSrcweir Date SAL_CALL OResultSet::getDate(sal_Int32 column) 300*cdf0e10cSrcweir throw(SQLException, RuntimeException) 301*cdf0e10cSrcweir { 302*cdf0e10cSrcweir OSL_TRACE("OResultSet::getDate"); 303*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 304*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 305*cdf0e10cSrcweir checkColumnIndex(column); 306*cdf0e10cSrcweir 307*cdf0e10cSrcweir Date d; 308*cdf0e10cSrcweir try { 309*cdf0e10cSrcweir OUString dateString = getString(column); 310*cdf0e10cSrcweir OUString token; 311*cdf0e10cSrcweir sal_Int32 nIndex = 0, i=0; 312*cdf0e10cSrcweir 313*cdf0e10cSrcweir do { 314*cdf0e10cSrcweir token = dateString.getToken (0, '-', nIndex); 315*cdf0e10cSrcweir switch (i) { 316*cdf0e10cSrcweir case 0: 317*cdf0e10cSrcweir d.Year = static_cast<sal_uInt16>(token.toInt32(10)); 318*cdf0e10cSrcweir break; 319*cdf0e10cSrcweir case 1: 320*cdf0e10cSrcweir d.Month = static_cast<sal_uInt16>(token.toInt32(10)); 321*cdf0e10cSrcweir break; 322*cdf0e10cSrcweir case 2: 323*cdf0e10cSrcweir d.Day = static_cast<sal_uInt16>(token.toInt32(10)); 324*cdf0e10cSrcweir break; 325*cdf0e10cSrcweir default:; 326*cdf0e10cSrcweir } 327*cdf0e10cSrcweir i++; 328*cdf0e10cSrcweir } while (nIndex >= 0); 329*cdf0e10cSrcweir } catch (sql::SQLException &e) { 330*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 331*cdf0e10cSrcweir } 332*cdf0e10cSrcweir return d; 333*cdf0e10cSrcweir } 334*cdf0e10cSrcweir /* }}} */ 335*cdf0e10cSrcweir 336*cdf0e10cSrcweir 337*cdf0e10cSrcweir /* {{{ OResultSet::getDouble() -I- */ 338*cdf0e10cSrcweir double SAL_CALL OResultSet::getDouble(sal_Int32 column) 339*cdf0e10cSrcweir throw(SQLException, RuntimeException) 340*cdf0e10cSrcweir { 341*cdf0e10cSrcweir OSL_TRACE("OResultSet::getDouble"); 342*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 343*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 344*cdf0e10cSrcweir 345*cdf0e10cSrcweir checkColumnIndex(column); 346*cdf0e10cSrcweir try { 347*cdf0e10cSrcweir return m_result->getDouble(column); 348*cdf0e10cSrcweir } catch (sql::SQLException &e) { 349*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 350*cdf0e10cSrcweir } 351*cdf0e10cSrcweir return 0.0; // fool compiler 352*cdf0e10cSrcweir } 353*cdf0e10cSrcweir /* }}} */ 354*cdf0e10cSrcweir 355*cdf0e10cSrcweir 356*cdf0e10cSrcweir /* {{{ OResultSet::getFloat() -I- */ 357*cdf0e10cSrcweir float SAL_CALL OResultSet::getFloat(sal_Int32 column) 358*cdf0e10cSrcweir throw(SQLException, RuntimeException) 359*cdf0e10cSrcweir { 360*cdf0e10cSrcweir OSL_TRACE("OResultSet::getFloat"); 361*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 362*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 363*cdf0e10cSrcweir 364*cdf0e10cSrcweir checkColumnIndex(column); 365*cdf0e10cSrcweir try { 366*cdf0e10cSrcweir return m_result->getDouble(column); 367*cdf0e10cSrcweir } catch (sql::SQLException &e) { 368*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 369*cdf0e10cSrcweir } 370*cdf0e10cSrcweir return 0.0; // fool compiler 371*cdf0e10cSrcweir } 372*cdf0e10cSrcweir /* }}} */ 373*cdf0e10cSrcweir 374*cdf0e10cSrcweir 375*cdf0e10cSrcweir /* {{{ OResultSet::getInt() -I- */ 376*cdf0e10cSrcweir sal_Int32 SAL_CALL OResultSet::getInt(sal_Int32 column) 377*cdf0e10cSrcweir throw(SQLException, RuntimeException) 378*cdf0e10cSrcweir { 379*cdf0e10cSrcweir OSL_TRACE("OResultSet::getInt"); 380*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 381*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 382*cdf0e10cSrcweir 383*cdf0e10cSrcweir checkColumnIndex(column); 384*cdf0e10cSrcweir try { 385*cdf0e10cSrcweir return m_result->getInt(column); 386*cdf0e10cSrcweir } catch (sql::SQLException &e) { 387*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 388*cdf0e10cSrcweir } 389*cdf0e10cSrcweir return 0; // fool compiler 390*cdf0e10cSrcweir } 391*cdf0e10cSrcweir /* }}} */ 392*cdf0e10cSrcweir 393*cdf0e10cSrcweir 394*cdf0e10cSrcweir /* {{{ OResultSet::getRow() -I- */ 395*cdf0e10cSrcweir sal_Int32 SAL_CALL OResultSet::getRow() 396*cdf0e10cSrcweir throw(SQLException, RuntimeException) 397*cdf0e10cSrcweir { 398*cdf0e10cSrcweir OSL_TRACE("OResultSet::getRow"); 399*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 400*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 401*cdf0e10cSrcweir 402*cdf0e10cSrcweir try { 403*cdf0e10cSrcweir return m_result->getRow(); 404*cdf0e10cSrcweir } catch (sql::SQLException &e) { 405*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 406*cdf0e10cSrcweir } 407*cdf0e10cSrcweir return 0; // fool compiler 408*cdf0e10cSrcweir } 409*cdf0e10cSrcweir /* }}} */ 410*cdf0e10cSrcweir 411*cdf0e10cSrcweir 412*cdf0e10cSrcweir /* {{{ OResultSet::getLong() -I- */ 413*cdf0e10cSrcweir sal_Int64 SAL_CALL OResultSet::getLong(sal_Int32 column) 414*cdf0e10cSrcweir throw(SQLException, RuntimeException) 415*cdf0e10cSrcweir { 416*cdf0e10cSrcweir OSL_TRACE("OResultSet::getLong"); 417*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 418*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 419*cdf0e10cSrcweir 420*cdf0e10cSrcweir checkColumnIndex(column); 421*cdf0e10cSrcweir try { 422*cdf0e10cSrcweir return m_result->getInt64(column); 423*cdf0e10cSrcweir } catch (sql::SQLException &e) { 424*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 425*cdf0e10cSrcweir } 426*cdf0e10cSrcweir return 0; // fool compiler 427*cdf0e10cSrcweir } 428*cdf0e10cSrcweir /* }}} */ 429*cdf0e10cSrcweir 430*cdf0e10cSrcweir 431*cdf0e10cSrcweir /* {{{ OResultSet::getMetaData() -I- */ 432*cdf0e10cSrcweir Reference< XResultSetMetaData > SAL_CALL OResultSet::getMetaData() 433*cdf0e10cSrcweir throw(SQLException, RuntimeException) 434*cdf0e10cSrcweir { 435*cdf0e10cSrcweir OSL_TRACE("OResultSet::getMetaData"); 436*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 437*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 438*cdf0e10cSrcweir try { 439*cdf0e10cSrcweir if (!m_xMetaData.is()) { 440*cdf0e10cSrcweir m_xMetaData = new OResultSetMetaData(m_result->getMetaData(), m_encoding); 441*cdf0e10cSrcweir } 442*cdf0e10cSrcweir } catch (sql::MethodNotImplementedException) { 443*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::getMetaData", *this); 444*cdf0e10cSrcweir } catch (sql::SQLException &e) { 445*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 446*cdf0e10cSrcweir } 447*cdf0e10cSrcweir return m_xMetaData; 448*cdf0e10cSrcweir } 449*cdf0e10cSrcweir /* }}} */ 450*cdf0e10cSrcweir 451*cdf0e10cSrcweir 452*cdf0e10cSrcweir /* {{{ OResultSet::getArray() -U- */ 453*cdf0e10cSrcweir Reference< XArray > SAL_CALL OResultSet::getArray(sal_Int32 column) 454*cdf0e10cSrcweir throw(SQLException, RuntimeException) 455*cdf0e10cSrcweir { 456*cdf0e10cSrcweir OSL_TRACE("OResultSet::getArray"); 457*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 458*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 459*cdf0e10cSrcweir checkColumnIndex(column); 460*cdf0e10cSrcweir 461*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::getArray", *this); 462*cdf0e10cSrcweir return NULL; 463*cdf0e10cSrcweir } 464*cdf0e10cSrcweir /* }}} */ 465*cdf0e10cSrcweir 466*cdf0e10cSrcweir 467*cdf0e10cSrcweir /* {{{ OResultSet::getClob() -U- */ 468*cdf0e10cSrcweir Reference< XClob > SAL_CALL OResultSet::getClob(sal_Int32 column) 469*cdf0e10cSrcweir throw(SQLException, RuntimeException) 470*cdf0e10cSrcweir { 471*cdf0e10cSrcweir OSL_TRACE("OResultSet::getClob"); 472*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 473*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 474*cdf0e10cSrcweir checkColumnIndex(column); 475*cdf0e10cSrcweir 476*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::getClob", *this); 477*cdf0e10cSrcweir return NULL; 478*cdf0e10cSrcweir } 479*cdf0e10cSrcweir /* }}} */ 480*cdf0e10cSrcweir 481*cdf0e10cSrcweir 482*cdf0e10cSrcweir /* {{{ OResultSet::getBlob() -U- */ 483*cdf0e10cSrcweir Reference< XBlob > SAL_CALL OResultSet::getBlob(sal_Int32 column) 484*cdf0e10cSrcweir throw(SQLException, RuntimeException) 485*cdf0e10cSrcweir { 486*cdf0e10cSrcweir OSL_TRACE("OResultSet::getBlob"); 487*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 488*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 489*cdf0e10cSrcweir checkColumnIndex(column); 490*cdf0e10cSrcweir 491*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::getBlob", *this); 492*cdf0e10cSrcweir return NULL; 493*cdf0e10cSrcweir } 494*cdf0e10cSrcweir /* }}} */ 495*cdf0e10cSrcweir 496*cdf0e10cSrcweir 497*cdf0e10cSrcweir /* {{{ OResultSet::getRef() -U- */ 498*cdf0e10cSrcweir Reference< XRef > SAL_CALL OResultSet::getRef(sal_Int32 column) 499*cdf0e10cSrcweir throw(SQLException, RuntimeException) 500*cdf0e10cSrcweir { 501*cdf0e10cSrcweir OSL_TRACE("OResultSet::getRef"); 502*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 503*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 504*cdf0e10cSrcweir checkColumnIndex(column); 505*cdf0e10cSrcweir 506*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::getRef", *this); 507*cdf0e10cSrcweir return NULL; 508*cdf0e10cSrcweir } 509*cdf0e10cSrcweir /* }}} */ 510*cdf0e10cSrcweir 511*cdf0e10cSrcweir 512*cdf0e10cSrcweir /* {{{ OResultSet::getObject() -U- */ 513*cdf0e10cSrcweir Any SAL_CALL OResultSet::getObject(sal_Int32 column, const Reference< XNameAccess >& /* typeMap */) 514*cdf0e10cSrcweir throw(SQLException, RuntimeException) 515*cdf0e10cSrcweir { 516*cdf0e10cSrcweir OSL_TRACE("OResultSet::getObject"); 517*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 518*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 519*cdf0e10cSrcweir checkColumnIndex(column); 520*cdf0e10cSrcweir 521*cdf0e10cSrcweir Any aRet= Any(); 522*cdf0e10cSrcweir 523*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::getObject", *this); 524*cdf0e10cSrcweir return aRet; 525*cdf0e10cSrcweir } 526*cdf0e10cSrcweir /* }}} */ 527*cdf0e10cSrcweir 528*cdf0e10cSrcweir 529*cdf0e10cSrcweir /* {{{ OResultSet::getShort() -I- */ 530*cdf0e10cSrcweir sal_Int16 SAL_CALL OResultSet::getShort(sal_Int32 column) 531*cdf0e10cSrcweir throw(SQLException, RuntimeException) 532*cdf0e10cSrcweir { 533*cdf0e10cSrcweir OSL_TRACE("OResultSet::getShort"); 534*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 535*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 536*cdf0e10cSrcweir 537*cdf0e10cSrcweir try { 538*cdf0e10cSrcweir return (sal_Int16) m_result->getInt(column); 539*cdf0e10cSrcweir } catch (sql::SQLException &e) { 540*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 541*cdf0e10cSrcweir } 542*cdf0e10cSrcweir return 0; // fool compiler 543*cdf0e10cSrcweir } 544*cdf0e10cSrcweir /* }}} */ 545*cdf0e10cSrcweir 546*cdf0e10cSrcweir 547*cdf0e10cSrcweir /* {{{ OResultSet::getString() -I- */ 548*cdf0e10cSrcweir OUString SAL_CALL OResultSet::getString(sal_Int32 column) 549*cdf0e10cSrcweir throw(SQLException, RuntimeException) 550*cdf0e10cSrcweir { 551*cdf0e10cSrcweir OSL_TRACE("OResultSet::getString"); 552*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 553*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 554*cdf0e10cSrcweir 555*cdf0e10cSrcweir checkColumnIndex(column); 556*cdf0e10cSrcweir 557*cdf0e10cSrcweir try { 558*cdf0e10cSrcweir sql::SQLString val = m_result->getString(column); 559*cdf0e10cSrcweir if (!m_result->wasNull()) { 560*cdf0e10cSrcweir return OUString( val.c_str(), val.length(), m_encoding ); 561*cdf0e10cSrcweir } else { 562*cdf0e10cSrcweir return OUString(); 563*cdf0e10cSrcweir } 564*cdf0e10cSrcweir } catch (sql::SQLException &e) { 565*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 566*cdf0e10cSrcweir } 567*cdf0e10cSrcweir return OUString(); // fool compiler 568*cdf0e10cSrcweir } 569*cdf0e10cSrcweir /* }}} */ 570*cdf0e10cSrcweir 571*cdf0e10cSrcweir 572*cdf0e10cSrcweir /* {{{ OResultSet::getTime() -I- */ 573*cdf0e10cSrcweir Time SAL_CALL OResultSet::getTime(sal_Int32 column) 574*cdf0e10cSrcweir throw(SQLException, RuntimeException) 575*cdf0e10cSrcweir { 576*cdf0e10cSrcweir OSL_TRACE("OResultSet::getTime"); 577*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 578*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 579*cdf0e10cSrcweir 580*cdf0e10cSrcweir checkColumnIndex(column); 581*cdf0e10cSrcweir Time t; 582*cdf0e10cSrcweir OUString timeString = getString(column); 583*cdf0e10cSrcweir OUString token; 584*cdf0e10cSrcweir sal_Int32 nIndex, i=0; 585*cdf0e10cSrcweir 586*cdf0e10cSrcweir nIndex = timeString.indexOf(' ') + 1; 587*cdf0e10cSrcweir 588*cdf0e10cSrcweir do { 589*cdf0e10cSrcweir token = timeString.getToken (0, ':', nIndex); 590*cdf0e10cSrcweir switch (i) { 591*cdf0e10cSrcweir case 0: 592*cdf0e10cSrcweir t.Hours = static_cast<sal_uInt16>(token.toInt32(10)); 593*cdf0e10cSrcweir break; 594*cdf0e10cSrcweir case 1: 595*cdf0e10cSrcweir t.Minutes = static_cast<sal_uInt16>(token.toInt32(10)); 596*cdf0e10cSrcweir break; 597*cdf0e10cSrcweir case 2: 598*cdf0e10cSrcweir t.Seconds = static_cast<sal_uInt16>(token.toInt32(10)); 599*cdf0e10cSrcweir break; 600*cdf0e10cSrcweir } 601*cdf0e10cSrcweir i++; 602*cdf0e10cSrcweir } while (nIndex >= 0); 603*cdf0e10cSrcweir 604*cdf0e10cSrcweir return t; 605*cdf0e10cSrcweir } 606*cdf0e10cSrcweir /* }}} */ 607*cdf0e10cSrcweir 608*cdf0e10cSrcweir 609*cdf0e10cSrcweir /* {{{ OResultSet::getTimestamp() -I- */ 610*cdf0e10cSrcweir DateTime SAL_CALL OResultSet::getTimestamp(sal_Int32 column) 611*cdf0e10cSrcweir throw(SQLException, RuntimeException) 612*cdf0e10cSrcweir { 613*cdf0e10cSrcweir OSL_TRACE("OResultSet::getTimestamp"); 614*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 615*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 616*cdf0e10cSrcweir 617*cdf0e10cSrcweir checkColumnIndex(column); 618*cdf0e10cSrcweir DateTime dt; 619*cdf0e10cSrcweir Date d = getDate(column); 620*cdf0e10cSrcweir Time t = getTime(column); 621*cdf0e10cSrcweir 622*cdf0e10cSrcweir dt.Year = d.Year; 623*cdf0e10cSrcweir dt.Month = d.Month; 624*cdf0e10cSrcweir dt.Day = d.Day; 625*cdf0e10cSrcweir dt.Hours = t.Hours; 626*cdf0e10cSrcweir dt.Minutes = t.Minutes; 627*cdf0e10cSrcweir dt.Seconds = t.Seconds; 628*cdf0e10cSrcweir return dt; 629*cdf0e10cSrcweir } 630*cdf0e10cSrcweir /* }}} */ 631*cdf0e10cSrcweir 632*cdf0e10cSrcweir 633*cdf0e10cSrcweir /* {{{ OResultSet::isBeforeFirst() -I- */ 634*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::isBeforeFirst() 635*cdf0e10cSrcweir throw(SQLException, RuntimeException) 636*cdf0e10cSrcweir { 637*cdf0e10cSrcweir OSL_TRACE("OResultSet::isBeforeFirst"); 638*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 639*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 640*cdf0e10cSrcweir 641*cdf0e10cSrcweir try { 642*cdf0e10cSrcweir return m_result->isBeforeFirst()? sal_True:sal_False; 643*cdf0e10cSrcweir } catch (sql::SQLException &e) { 644*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 645*cdf0e10cSrcweir } 646*cdf0e10cSrcweir return sal_False; //fool 647*cdf0e10cSrcweir } 648*cdf0e10cSrcweir /* }}} */ 649*cdf0e10cSrcweir 650*cdf0e10cSrcweir 651*cdf0e10cSrcweir /* {{{ OResultSet::isAfterLast() -I- */ 652*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::isAfterLast() 653*cdf0e10cSrcweir throw(SQLException, RuntimeException) 654*cdf0e10cSrcweir { 655*cdf0e10cSrcweir OSL_TRACE("OResultSet::isAfterLast"); 656*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 657*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 658*cdf0e10cSrcweir 659*cdf0e10cSrcweir try { 660*cdf0e10cSrcweir return m_result->isAfterLast()? sal_True:sal_False; 661*cdf0e10cSrcweir } catch (sql::SQLException &e) { 662*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 663*cdf0e10cSrcweir } 664*cdf0e10cSrcweir return sal_False; //fool 665*cdf0e10cSrcweir } 666*cdf0e10cSrcweir /* }}} */ 667*cdf0e10cSrcweir 668*cdf0e10cSrcweir 669*cdf0e10cSrcweir /* {{{ OResultSet::isFirst() -I- */ 670*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::isFirst() 671*cdf0e10cSrcweir throw(SQLException, RuntimeException) 672*cdf0e10cSrcweir { 673*cdf0e10cSrcweir OSL_TRACE("OResultSet::isFirst"); 674*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 675*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 676*cdf0e10cSrcweir 677*cdf0e10cSrcweir try { 678*cdf0e10cSrcweir return m_result->isFirst(); 679*cdf0e10cSrcweir } catch (sql::SQLException &e) { 680*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 681*cdf0e10cSrcweir } 682*cdf0e10cSrcweir return sal_False; //fool 683*cdf0e10cSrcweir } 684*cdf0e10cSrcweir /* }}} */ 685*cdf0e10cSrcweir 686*cdf0e10cSrcweir 687*cdf0e10cSrcweir /* {{{ OResultSet::isLast() -I- */ 688*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::isLast() 689*cdf0e10cSrcweir throw(SQLException, RuntimeException) 690*cdf0e10cSrcweir { 691*cdf0e10cSrcweir OSL_TRACE("OResultSet::isLast"); 692*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 693*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 694*cdf0e10cSrcweir 695*cdf0e10cSrcweir try { 696*cdf0e10cSrcweir return m_result->isLast()? sal_True:sal_False; 697*cdf0e10cSrcweir } catch (sql::SQLException &e) { 698*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 699*cdf0e10cSrcweir } 700*cdf0e10cSrcweir return sal_False; //fool 701*cdf0e10cSrcweir } 702*cdf0e10cSrcweir /* }}} */ 703*cdf0e10cSrcweir 704*cdf0e10cSrcweir 705*cdf0e10cSrcweir /* {{{ OResultSet::beforeFirst() -I- */ 706*cdf0e10cSrcweir void SAL_CALL OResultSet::beforeFirst() 707*cdf0e10cSrcweir throw(SQLException, RuntimeException) 708*cdf0e10cSrcweir { 709*cdf0e10cSrcweir OSL_TRACE("OResultSet::beforeFirst"); 710*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 711*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 712*cdf0e10cSrcweir 713*cdf0e10cSrcweir try { 714*cdf0e10cSrcweir m_result->beforeFirst(); 715*cdf0e10cSrcweir } catch (sql::SQLException &e) { 716*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 717*cdf0e10cSrcweir } 718*cdf0e10cSrcweir } 719*cdf0e10cSrcweir /* }}} */ 720*cdf0e10cSrcweir 721*cdf0e10cSrcweir 722*cdf0e10cSrcweir /* {{{ OResultSet::afterLast() -I- */ 723*cdf0e10cSrcweir void SAL_CALL OResultSet::afterLast() 724*cdf0e10cSrcweir throw(SQLException, RuntimeException) 725*cdf0e10cSrcweir { 726*cdf0e10cSrcweir OSL_TRACE("OResultSet::afterLast"); 727*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 728*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 729*cdf0e10cSrcweir 730*cdf0e10cSrcweir try { 731*cdf0e10cSrcweir m_result->afterLast(); 732*cdf0e10cSrcweir } catch (sql::SQLException &e) { 733*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 734*cdf0e10cSrcweir } 735*cdf0e10cSrcweir } 736*cdf0e10cSrcweir /* }}} */ 737*cdf0e10cSrcweir 738*cdf0e10cSrcweir 739*cdf0e10cSrcweir /* {{{ OResultSet::close() -I- */ 740*cdf0e10cSrcweir void SAL_CALL OResultSet::close() throw(SQLException, RuntimeException) 741*cdf0e10cSrcweir { 742*cdf0e10cSrcweir OSL_TRACE("OResultSet::close"); 743*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 744*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 745*cdf0e10cSrcweir 746*cdf0e10cSrcweir try { 747*cdf0e10cSrcweir m_result->close(); 748*cdf0e10cSrcweir } catch (sql::SQLException &e) { 749*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 750*cdf0e10cSrcweir } 751*cdf0e10cSrcweir 752*cdf0e10cSrcweir dispose(); 753*cdf0e10cSrcweir } 754*cdf0e10cSrcweir /* }}} */ 755*cdf0e10cSrcweir 756*cdf0e10cSrcweir 757*cdf0e10cSrcweir /* {{{ OResultSet::first() -I- */ 758*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::first() throw(SQLException, RuntimeException) 759*cdf0e10cSrcweir { 760*cdf0e10cSrcweir OSL_TRACE("OResultSet::first"); 761*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 762*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 763*cdf0e10cSrcweir 764*cdf0e10cSrcweir try { 765*cdf0e10cSrcweir return m_result->first()? sal_True:sal_False; 766*cdf0e10cSrcweir } catch (sql::SQLException &e) { 767*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 768*cdf0e10cSrcweir } 769*cdf0e10cSrcweir return sal_False; //fool 770*cdf0e10cSrcweir } 771*cdf0e10cSrcweir /* }}} */ 772*cdf0e10cSrcweir 773*cdf0e10cSrcweir 774*cdf0e10cSrcweir /* {{{ OResultSet::last() -I- */ 775*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::last() 776*cdf0e10cSrcweir throw(SQLException, RuntimeException) 777*cdf0e10cSrcweir { 778*cdf0e10cSrcweir OSL_TRACE("OResultSet::last"); 779*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 780*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 781*cdf0e10cSrcweir 782*cdf0e10cSrcweir try { 783*cdf0e10cSrcweir return m_result->last()? sal_True:sal_False; 784*cdf0e10cSrcweir } catch (sql::SQLException &e) { 785*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 786*cdf0e10cSrcweir } 787*cdf0e10cSrcweir return sal_False; //fool 788*cdf0e10cSrcweir } 789*cdf0e10cSrcweir /* }}} */ 790*cdf0e10cSrcweir 791*cdf0e10cSrcweir 792*cdf0e10cSrcweir /* {{{ OResultSet::absolute() -I- */ 793*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::absolute(sal_Int32 row) 794*cdf0e10cSrcweir throw(SQLException, RuntimeException) 795*cdf0e10cSrcweir { 796*cdf0e10cSrcweir OSL_TRACE("OResultSet::absolute"); 797*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 798*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 799*cdf0e10cSrcweir 800*cdf0e10cSrcweir try { 801*cdf0e10cSrcweir return m_result->absolute(row)? sal_True:sal_False; 802*cdf0e10cSrcweir } catch (sql::SQLException &e) { 803*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 804*cdf0e10cSrcweir } 805*cdf0e10cSrcweir return sal_False; //fool 806*cdf0e10cSrcweir } 807*cdf0e10cSrcweir /* }}} */ 808*cdf0e10cSrcweir 809*cdf0e10cSrcweir 810*cdf0e10cSrcweir /* {{{ OResultSet::relative() -I- */ 811*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::relative(sal_Int32 row) 812*cdf0e10cSrcweir throw(SQLException, RuntimeException) 813*cdf0e10cSrcweir { 814*cdf0e10cSrcweir OSL_TRACE("OResultSet::relative"); 815*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 816*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 817*cdf0e10cSrcweir 818*cdf0e10cSrcweir try { 819*cdf0e10cSrcweir return m_result->relative(row)? sal_True:sal_False; 820*cdf0e10cSrcweir } catch (sql::SQLException &e) { 821*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 822*cdf0e10cSrcweir } 823*cdf0e10cSrcweir return sal_False; //fool 824*cdf0e10cSrcweir } 825*cdf0e10cSrcweir /* }}} */ 826*cdf0e10cSrcweir 827*cdf0e10cSrcweir 828*cdf0e10cSrcweir /* {{{ OResultSet::previous() -I- */ 829*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::previous() 830*cdf0e10cSrcweir throw(SQLException, RuntimeException) 831*cdf0e10cSrcweir { 832*cdf0e10cSrcweir OSL_TRACE("OResultSet::previous"); 833*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 834*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 835*cdf0e10cSrcweir 836*cdf0e10cSrcweir try { 837*cdf0e10cSrcweir return m_result->previous()? sal_True:sal_False; 838*cdf0e10cSrcweir } catch (sql::SQLException &e) { 839*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 840*cdf0e10cSrcweir } 841*cdf0e10cSrcweir return sal_False; //fool 842*cdf0e10cSrcweir } 843*cdf0e10cSrcweir /* }}} */ 844*cdf0e10cSrcweir 845*cdf0e10cSrcweir 846*cdf0e10cSrcweir /* {{{ OResultSet::getStatement() -I- */ 847*cdf0e10cSrcweir Reference< XInterface > SAL_CALL OResultSet::getStatement() 848*cdf0e10cSrcweir throw(SQLException, RuntimeException) 849*cdf0e10cSrcweir { 850*cdf0e10cSrcweir OSL_TRACE("OResultSet::getStatement"); 851*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 852*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 853*cdf0e10cSrcweir 854*cdf0e10cSrcweir return m_aStatement.get(); 855*cdf0e10cSrcweir } 856*cdf0e10cSrcweir /* }}} */ 857*cdf0e10cSrcweir 858*cdf0e10cSrcweir 859*cdf0e10cSrcweir /* {{{ OResultSet::rowDeleted() -I- */ 860*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::rowDeleted() 861*cdf0e10cSrcweir throw(SQLException, RuntimeException) 862*cdf0e10cSrcweir { 863*cdf0e10cSrcweir OSL_TRACE("OResultSet::rowDeleted"); 864*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 865*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 866*cdf0e10cSrcweir 867*cdf0e10cSrcweir return sal_False; 868*cdf0e10cSrcweir } 869*cdf0e10cSrcweir /* }}} */ 870*cdf0e10cSrcweir 871*cdf0e10cSrcweir 872*cdf0e10cSrcweir /* {{{ OResultSet::rowInserted() -I- */ 873*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::rowInserted() 874*cdf0e10cSrcweir throw(SQLException, RuntimeException) 875*cdf0e10cSrcweir { 876*cdf0e10cSrcweir OSL_TRACE("OResultSet::rowInserted"); 877*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 878*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 879*cdf0e10cSrcweir 880*cdf0e10cSrcweir return sal_False; 881*cdf0e10cSrcweir } 882*cdf0e10cSrcweir /* }}} */ 883*cdf0e10cSrcweir 884*cdf0e10cSrcweir 885*cdf0e10cSrcweir /* {{{ OResultSet::rowUpdated() -I- */ 886*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::rowUpdated() 887*cdf0e10cSrcweir throw(SQLException, RuntimeException) 888*cdf0e10cSrcweir { 889*cdf0e10cSrcweir OSL_TRACE("OResultSet::rowUpdated"); 890*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 891*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 892*cdf0e10cSrcweir 893*cdf0e10cSrcweir return sal_False; 894*cdf0e10cSrcweir } 895*cdf0e10cSrcweir /* }}} */ 896*cdf0e10cSrcweir 897*cdf0e10cSrcweir 898*cdf0e10cSrcweir /* {{{ OResultSet::next() -I- */ 899*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::next() 900*cdf0e10cSrcweir throw(SQLException, RuntimeException) 901*cdf0e10cSrcweir { 902*cdf0e10cSrcweir OSL_TRACE("OResultSet::next"); 903*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 904*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 905*cdf0e10cSrcweir 906*cdf0e10cSrcweir try { 907*cdf0e10cSrcweir return m_result->next()? sal_True:sal_False; 908*cdf0e10cSrcweir } catch (sql::SQLException &e) { 909*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 910*cdf0e10cSrcweir } 911*cdf0e10cSrcweir return sal_False; //fool 912*cdf0e10cSrcweir } 913*cdf0e10cSrcweir /* }}} */ 914*cdf0e10cSrcweir 915*cdf0e10cSrcweir 916*cdf0e10cSrcweir /* {{{ OResultSet::wasNull() -I- */ 917*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::wasNull() 918*cdf0e10cSrcweir throw(SQLException, RuntimeException) 919*cdf0e10cSrcweir { 920*cdf0e10cSrcweir OSL_TRACE("OResultSet::wasNull"); 921*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 922*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 923*cdf0e10cSrcweir 924*cdf0e10cSrcweir try { 925*cdf0e10cSrcweir return m_result->wasNull()? sal_True:sal_False; 926*cdf0e10cSrcweir } catch (sql::SQLException &e) { 927*cdf0e10cSrcweir mysqlc_sdbc_driver::translateAndThrow(e, *this, m_encoding); 928*cdf0e10cSrcweir } 929*cdf0e10cSrcweir return sal_False; //fool 930*cdf0e10cSrcweir } 931*cdf0e10cSrcweir /* }}} */ 932*cdf0e10cSrcweir 933*cdf0e10cSrcweir 934*cdf0e10cSrcweir /* {{{ OResultSet::cancel() -I- */ 935*cdf0e10cSrcweir void SAL_CALL OResultSet::cancel() 936*cdf0e10cSrcweir throw(RuntimeException) 937*cdf0e10cSrcweir { 938*cdf0e10cSrcweir OSL_TRACE("OResultSet::cancel"); 939*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 940*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 941*cdf0e10cSrcweir } 942*cdf0e10cSrcweir /* }}} */ 943*cdf0e10cSrcweir 944*cdf0e10cSrcweir 945*cdf0e10cSrcweir /* {{{ OResultSet::clearWarnings() -I- */ 946*cdf0e10cSrcweir void SAL_CALL OResultSet::clearWarnings() 947*cdf0e10cSrcweir throw(SQLException, RuntimeException) 948*cdf0e10cSrcweir { 949*cdf0e10cSrcweir OSL_TRACE("OResultSet::clearWarnings"); 950*cdf0e10cSrcweir } 951*cdf0e10cSrcweir /* }}} */ 952*cdf0e10cSrcweir 953*cdf0e10cSrcweir 954*cdf0e10cSrcweir /* {{{ OResultSet::getWarnings() -I- */ 955*cdf0e10cSrcweir Any SAL_CALL OResultSet::getWarnings() 956*cdf0e10cSrcweir throw(SQLException, RuntimeException) 957*cdf0e10cSrcweir { 958*cdf0e10cSrcweir OSL_TRACE("OResultSet::getWarnings"); 959*cdf0e10cSrcweir Any aRet= Any(); 960*cdf0e10cSrcweir return aRet; 961*cdf0e10cSrcweir } 962*cdf0e10cSrcweir /* }}} */ 963*cdf0e10cSrcweir 964*cdf0e10cSrcweir 965*cdf0e10cSrcweir /* {{{ OResultSet::insertRow() -I- */ 966*cdf0e10cSrcweir void SAL_CALL OResultSet::insertRow() 967*cdf0e10cSrcweir throw(SQLException, RuntimeException) 968*cdf0e10cSrcweir { 969*cdf0e10cSrcweir OSL_TRACE("OResultSet::insertRow"); 970*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 971*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 972*cdf0e10cSrcweir // you only have to implement this if you want to insert new rows 973*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::insertRow", *this); 974*cdf0e10cSrcweir } 975*cdf0e10cSrcweir /* }}} */ 976*cdf0e10cSrcweir 977*cdf0e10cSrcweir 978*cdf0e10cSrcweir /* {{{ OResultSet::updateRow() -I- */ 979*cdf0e10cSrcweir void SAL_CALL OResultSet::updateRow() 980*cdf0e10cSrcweir throw(SQLException, RuntimeException) 981*cdf0e10cSrcweir { 982*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateRow"); 983*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 984*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 985*cdf0e10cSrcweir 986*cdf0e10cSrcweir // only when you allow updates 987*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateRow", *this); 988*cdf0e10cSrcweir } 989*cdf0e10cSrcweir /* }}} */ 990*cdf0e10cSrcweir 991*cdf0e10cSrcweir 992*cdf0e10cSrcweir /* {{{ OResultSet::deleteRow() -I- */ 993*cdf0e10cSrcweir void SAL_CALL OResultSet::deleteRow() 994*cdf0e10cSrcweir throw(SQLException, RuntimeException) 995*cdf0e10cSrcweir { 996*cdf0e10cSrcweir OSL_TRACE("OResultSet::deleteRow"); 997*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 998*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 999*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::deleteRow", *this); 1000*cdf0e10cSrcweir } 1001*cdf0e10cSrcweir /* }}} */ 1002*cdf0e10cSrcweir 1003*cdf0e10cSrcweir 1004*cdf0e10cSrcweir /* {{{ OResultSet::cancelRowUpdates() -I- */ 1005*cdf0e10cSrcweir void SAL_CALL OResultSet::cancelRowUpdates() 1006*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1007*cdf0e10cSrcweir { 1008*cdf0e10cSrcweir OSL_TRACE("OResultSet::cancelRowUpdates"); 1009*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1010*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1011*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::cancelRowUpdates", *this); 1012*cdf0e10cSrcweir } 1013*cdf0e10cSrcweir /* }}} */ 1014*cdf0e10cSrcweir 1015*cdf0e10cSrcweir 1016*cdf0e10cSrcweir /* {{{ OResultSet::moveToInsertRow() -I- */ 1017*cdf0e10cSrcweir void SAL_CALL OResultSet::moveToInsertRow() 1018*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1019*cdf0e10cSrcweir { 1020*cdf0e10cSrcweir OSL_TRACE("OResultSet::moveToInsertRow"); 1021*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1022*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1023*cdf0e10cSrcweir 1024*cdf0e10cSrcweir // only when you allow insert's 1025*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::moveToInsertRow", *this); 1026*cdf0e10cSrcweir } 1027*cdf0e10cSrcweir /* }}} */ 1028*cdf0e10cSrcweir 1029*cdf0e10cSrcweir 1030*cdf0e10cSrcweir /* {{{ OResultSet::moveToCurrentRow() -I- */ 1031*cdf0e10cSrcweir void SAL_CALL OResultSet::moveToCurrentRow() 1032*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1033*cdf0e10cSrcweir { 1034*cdf0e10cSrcweir OSL_TRACE("OResultSet::moveToCurrentRow"); 1035*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1036*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1037*cdf0e10cSrcweir } 1038*cdf0e10cSrcweir /* }}} */ 1039*cdf0e10cSrcweir 1040*cdf0e10cSrcweir 1041*cdf0e10cSrcweir /* {{{ OResultSet::updateNull() -U- */ 1042*cdf0e10cSrcweir void SAL_CALL OResultSet::updateNull(sal_Int32 column) 1043*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1044*cdf0e10cSrcweir { 1045*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateNull"); 1046*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1047*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1048*cdf0e10cSrcweir checkColumnIndex(column); 1049*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateNull", *this); 1050*cdf0e10cSrcweir } 1051*cdf0e10cSrcweir /* }}} */ 1052*cdf0e10cSrcweir 1053*cdf0e10cSrcweir 1054*cdf0e10cSrcweir /* {{{ OResultSet::updateBoolean() -U- */ 1055*cdf0e10cSrcweir void SAL_CALL OResultSet::updateBoolean(sal_Int32 column, sal_Bool /* x */) 1056*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1057*cdf0e10cSrcweir { 1058*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateBoolean"); 1059*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1060*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1061*cdf0e10cSrcweir checkColumnIndex(column); 1062*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateBoolean", *this); 1063*cdf0e10cSrcweir } 1064*cdf0e10cSrcweir /* }}} */ 1065*cdf0e10cSrcweir 1066*cdf0e10cSrcweir 1067*cdf0e10cSrcweir /* {{{ OResultSet::updateByte() -U- */ 1068*cdf0e10cSrcweir void SAL_CALL OResultSet::updateByte(sal_Int32 column, sal_Int8 /* x */) 1069*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1070*cdf0e10cSrcweir { 1071*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateByte"); 1072*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1073*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1074*cdf0e10cSrcweir checkColumnIndex(column); 1075*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateByte", *this); 1076*cdf0e10cSrcweir } 1077*cdf0e10cSrcweir /* }}} */ 1078*cdf0e10cSrcweir 1079*cdf0e10cSrcweir 1080*cdf0e10cSrcweir /* {{{ OResultSet::updateShort() -U- */ 1081*cdf0e10cSrcweir void SAL_CALL OResultSet::updateShort(sal_Int32 column, sal_Int16 /* x */) 1082*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1083*cdf0e10cSrcweir { 1084*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateShort"); 1085*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1086*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1087*cdf0e10cSrcweir checkColumnIndex(column); 1088*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateShort", *this); 1089*cdf0e10cSrcweir } 1090*cdf0e10cSrcweir /* }}} */ 1091*cdf0e10cSrcweir 1092*cdf0e10cSrcweir 1093*cdf0e10cSrcweir /* {{{ OResultSet::updateInt() -U- */ 1094*cdf0e10cSrcweir void SAL_CALL OResultSet::updateInt(sal_Int32 column, sal_Int32 /* x */) 1095*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1096*cdf0e10cSrcweir { 1097*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateInt"); 1098*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1099*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1100*cdf0e10cSrcweir checkColumnIndex(column); 1101*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateInt", *this); 1102*cdf0e10cSrcweir } 1103*cdf0e10cSrcweir /* }}} */ 1104*cdf0e10cSrcweir 1105*cdf0e10cSrcweir 1106*cdf0e10cSrcweir /* {{{ OResultSet::updateLong() -U- */ 1107*cdf0e10cSrcweir void SAL_CALL OResultSet::updateLong(sal_Int32 column, sal_Int64 /* x */) 1108*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1109*cdf0e10cSrcweir { 1110*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateLong"); 1111*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1112*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1113*cdf0e10cSrcweir checkColumnIndex(column); 1114*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateLong", *this); 1115*cdf0e10cSrcweir } 1116*cdf0e10cSrcweir /* }}} */ 1117*cdf0e10cSrcweir 1118*cdf0e10cSrcweir 1119*cdf0e10cSrcweir /* {{{ OResultSet::updateFloat() -U- */ 1120*cdf0e10cSrcweir void SAL_CALL OResultSet::updateFloat(sal_Int32 column, float /* x */) 1121*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1122*cdf0e10cSrcweir { 1123*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateFloat"); 1124*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1125*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1126*cdf0e10cSrcweir checkColumnIndex(column); 1127*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateFloat", *this); 1128*cdf0e10cSrcweir } 1129*cdf0e10cSrcweir /* }}} */ 1130*cdf0e10cSrcweir 1131*cdf0e10cSrcweir 1132*cdf0e10cSrcweir /* {{{ OResultSet::updateDouble() -U- */ 1133*cdf0e10cSrcweir void SAL_CALL OResultSet::updateDouble(sal_Int32 column, double /* x */) 1134*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1135*cdf0e10cSrcweir { 1136*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateDouble"); 1137*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1138*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1139*cdf0e10cSrcweir checkColumnIndex(column); 1140*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateDouble", *this); 1141*cdf0e10cSrcweir } 1142*cdf0e10cSrcweir /* }}} */ 1143*cdf0e10cSrcweir 1144*cdf0e10cSrcweir 1145*cdf0e10cSrcweir /* {{{ OResultSet::updateString() -U- */ 1146*cdf0e10cSrcweir void SAL_CALL OResultSet::updateString(sal_Int32 column, const OUString& /* x */) 1147*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1148*cdf0e10cSrcweir { 1149*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateString"); 1150*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1151*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1152*cdf0e10cSrcweir checkColumnIndex(column); 1153*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateString", *this); 1154*cdf0e10cSrcweir } 1155*cdf0e10cSrcweir /* }}} */ 1156*cdf0e10cSrcweir 1157*cdf0e10cSrcweir 1158*cdf0e10cSrcweir /* {{{ OResultSet::updateBytes() -U- */ 1159*cdf0e10cSrcweir void SAL_CALL OResultSet::updateBytes(sal_Int32 column, const Sequence< sal_Int8 >& /* x */) 1160*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1161*cdf0e10cSrcweir { 1162*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateBytes"); 1163*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1164*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1165*cdf0e10cSrcweir checkColumnIndex(column); 1166*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateBytes", *this); 1167*cdf0e10cSrcweir } 1168*cdf0e10cSrcweir /* }}} */ 1169*cdf0e10cSrcweir 1170*cdf0e10cSrcweir 1171*cdf0e10cSrcweir /* {{{ OResultSet::updateDate() -U- */ 1172*cdf0e10cSrcweir void SAL_CALL OResultSet::updateDate(sal_Int32 column, const Date& /* x */) 1173*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1174*cdf0e10cSrcweir { 1175*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateDate"); 1176*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1177*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1178*cdf0e10cSrcweir checkColumnIndex(column); 1179*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateDate", *this); 1180*cdf0e10cSrcweir } 1181*cdf0e10cSrcweir /* }}} */ 1182*cdf0e10cSrcweir 1183*cdf0e10cSrcweir 1184*cdf0e10cSrcweir /* {{{ OResultSet::updateTime() -U- */ 1185*cdf0e10cSrcweir void SAL_CALL OResultSet::updateTime(sal_Int32 column, const Time& /* x */) 1186*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1187*cdf0e10cSrcweir { 1188*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateTime"); 1189*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1190*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1191*cdf0e10cSrcweir checkColumnIndex(column); 1192*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateTime", *this); 1193*cdf0e10cSrcweir } 1194*cdf0e10cSrcweir /* }}} */ 1195*cdf0e10cSrcweir 1196*cdf0e10cSrcweir 1197*cdf0e10cSrcweir /* {{{ OResultSet::updateTimestamp() -U- */ 1198*cdf0e10cSrcweir void SAL_CALL OResultSet::updateTimestamp(sal_Int32 column, const DateTime& /* x */) 1199*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1200*cdf0e10cSrcweir { 1201*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateTimestamp"); 1202*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1203*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1204*cdf0e10cSrcweir checkColumnIndex(column); 1205*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateTimestamp", *this); 1206*cdf0e10cSrcweir } 1207*cdf0e10cSrcweir /* }}} */ 1208*cdf0e10cSrcweir 1209*cdf0e10cSrcweir 1210*cdf0e10cSrcweir /* {{{ OResultSet::updateBinaryStream() -U- */ 1211*cdf0e10cSrcweir void SAL_CALL OResultSet::updateBinaryStream(sal_Int32 column, const Reference< XInputStream >& /* x */, 1212*cdf0e10cSrcweir sal_Int32 /* length */) 1213*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1214*cdf0e10cSrcweir { 1215*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateBinaryStream"); 1216*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1217*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1218*cdf0e10cSrcweir checkColumnIndex(column); 1219*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateBinaryStream", *this); 1220*cdf0e10cSrcweir } 1221*cdf0e10cSrcweir /* }}} */ 1222*cdf0e10cSrcweir 1223*cdf0e10cSrcweir 1224*cdf0e10cSrcweir /* {{{ OResultSet::updateCharacterStream() -U- */ 1225*cdf0e10cSrcweir void SAL_CALL OResultSet::updateCharacterStream(sal_Int32 column, const Reference< XInputStream >& /* x */, 1226*cdf0e10cSrcweir sal_Int32 /* length */) 1227*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1228*cdf0e10cSrcweir { 1229*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateCharacterStream"); 1230*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1231*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1232*cdf0e10cSrcweir checkColumnIndex(column); 1233*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateCharacterStream", *this); 1234*cdf0e10cSrcweir } 1235*cdf0e10cSrcweir /* }}} */ 1236*cdf0e10cSrcweir 1237*cdf0e10cSrcweir 1238*cdf0e10cSrcweir /* {{{ OResultSet::refreshRow() -U- */ 1239*cdf0e10cSrcweir void SAL_CALL OResultSet::refreshRow() 1240*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1241*cdf0e10cSrcweir { 1242*cdf0e10cSrcweir OSL_TRACE("OResultSet::refreshRow"); 1243*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1244*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1245*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::refreshRow", *this); 1246*cdf0e10cSrcweir } 1247*cdf0e10cSrcweir /* }}} */ 1248*cdf0e10cSrcweir 1249*cdf0e10cSrcweir 1250*cdf0e10cSrcweir /* {{{ OResultSet::updateObject() -U- */ 1251*cdf0e10cSrcweir void SAL_CALL OResultSet::updateObject(sal_Int32 column, const Any& /* x */) 1252*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1253*cdf0e10cSrcweir { 1254*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateObject"); 1255*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1256*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1257*cdf0e10cSrcweir checkColumnIndex(column); 1258*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateObject", *this); 1259*cdf0e10cSrcweir } 1260*cdf0e10cSrcweir /* }}} */ 1261*cdf0e10cSrcweir 1262*cdf0e10cSrcweir 1263*cdf0e10cSrcweir /* {{{ OResultSet::updateNumericObject() -U- */ 1264*cdf0e10cSrcweir void SAL_CALL OResultSet::updateNumericObject(sal_Int32 column, const Any& /* x */, sal_Int32 /* scale */) 1265*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1266*cdf0e10cSrcweir { 1267*cdf0e10cSrcweir OSL_TRACE("OResultSet::updateNumericObject"); 1268*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1269*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1270*cdf0e10cSrcweir checkColumnIndex(column); 1271*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::updateNumericObject", *this); 1272*cdf0e10cSrcweir } 1273*cdf0e10cSrcweir /* }}} */ 1274*cdf0e10cSrcweir 1275*cdf0e10cSrcweir 1276*cdf0e10cSrcweir // XRowLocate 1277*cdf0e10cSrcweir /* {{{ OResultSet::getBookmark() -U- */ 1278*cdf0e10cSrcweir Any SAL_CALL OResultSet::getBookmark() 1279*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1280*cdf0e10cSrcweir { 1281*cdf0e10cSrcweir OSL_TRACE("OResultSet::getBookmark"); 1282*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1283*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1284*cdf0e10cSrcweir Any aRet = Any(); 1285*cdf0e10cSrcweir 1286*cdf0e10cSrcweir // if you don't want to support bookmark you must remove the XRowLocate interface 1287*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::getBookmark", *this); 1288*cdf0e10cSrcweir 1289*cdf0e10cSrcweir return aRet; 1290*cdf0e10cSrcweir } 1291*cdf0e10cSrcweir /* }}} */ 1292*cdf0e10cSrcweir 1293*cdf0e10cSrcweir 1294*cdf0e10cSrcweir /* {{{ OResultSet::moveToBookmark() -U- */ 1295*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::moveToBookmark(const Any& /* bookmark */) 1296*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1297*cdf0e10cSrcweir { 1298*cdf0e10cSrcweir OSL_TRACE("OResultSet::moveToBookmark"); 1299*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1300*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1301*cdf0e10cSrcweir 1302*cdf0e10cSrcweir return sal_False; 1303*cdf0e10cSrcweir } 1304*cdf0e10cSrcweir /* }}} */ 1305*cdf0e10cSrcweir 1306*cdf0e10cSrcweir 1307*cdf0e10cSrcweir /* {{{ OResultSet::moveRelativeToBookmark() -U- */ 1308*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::moveRelativeToBookmark(const Any& /* bookmark */, sal_Int32 /* rows */) 1309*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1310*cdf0e10cSrcweir { 1311*cdf0e10cSrcweir OSL_TRACE("OResultSet::moveRelativeToBookmark"); 1312*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1313*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1314*cdf0e10cSrcweir 1315*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::moveRelativeToBookmark", *this); 1316*cdf0e10cSrcweir return sal_False; 1317*cdf0e10cSrcweir } 1318*cdf0e10cSrcweir /* }}} */ 1319*cdf0e10cSrcweir 1320*cdf0e10cSrcweir 1321*cdf0e10cSrcweir /* {{{ OResultSet::compareBookmarks() -I- */ 1322*cdf0e10cSrcweir sal_Int32 SAL_CALL OResultSet::compareBookmarks(const Any& /* n1 */, const Any& /* n2 */) 1323*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1324*cdf0e10cSrcweir { 1325*cdf0e10cSrcweir OSL_TRACE("OResultSet::compareBookmarks"); 1326*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1327*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1328*cdf0e10cSrcweir 1329*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::compareBookmarks", *this); 1330*cdf0e10cSrcweir 1331*cdf0e10cSrcweir return CompareBookmark::NOT_EQUAL; 1332*cdf0e10cSrcweir } 1333*cdf0e10cSrcweir /* }}} */ 1334*cdf0e10cSrcweir 1335*cdf0e10cSrcweir 1336*cdf0e10cSrcweir /* {{{ OResultSet::hasOrderedBookmarks() -I- */ 1337*cdf0e10cSrcweir sal_Bool SAL_CALL OResultSet::hasOrderedBookmarks() 1338*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1339*cdf0e10cSrcweir { 1340*cdf0e10cSrcweir OSL_TRACE("OResultSet::hasOrderedBookmarks"); 1341*cdf0e10cSrcweir return sal_False; 1342*cdf0e10cSrcweir } 1343*cdf0e10cSrcweir /* }}} */ 1344*cdf0e10cSrcweir 1345*cdf0e10cSrcweir 1346*cdf0e10cSrcweir /* {{{ OResultSet::hashBookmark() -U- */ 1347*cdf0e10cSrcweir sal_Int32 SAL_CALL OResultSet::hashBookmark(const Any& /* bookmark */) 1348*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1349*cdf0e10cSrcweir { 1350*cdf0e10cSrcweir OSL_TRACE("OResultSet::hashBookmark"); 1351*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::hashBookmark", *this); 1352*cdf0e10cSrcweir return 0; 1353*cdf0e10cSrcweir } 1354*cdf0e10cSrcweir /* }}} */ 1355*cdf0e10cSrcweir 1356*cdf0e10cSrcweir 1357*cdf0e10cSrcweir // XDeleteRows 1358*cdf0e10cSrcweir /* {{{ OResultSet::deleteRows() -U- */ 1359*cdf0e10cSrcweir Sequence< sal_Int32 > SAL_CALL OResultSet::deleteRows(const Sequence< Any >& /* rows */) 1360*cdf0e10cSrcweir throw(SQLException, RuntimeException) 1361*cdf0e10cSrcweir { 1362*cdf0e10cSrcweir OSL_TRACE("OResultSet::deleteRows"); 1363*cdf0e10cSrcweir MutexGuard aGuard(m_aMutex); 1364*cdf0e10cSrcweir checkDisposed(OResultSet_BASE::rBHelper.bDisposed); 1365*cdf0e10cSrcweir Sequence< sal_Int32 > aRet = Sequence< sal_Int32 >(); 1366*cdf0e10cSrcweir 1367*cdf0e10cSrcweir mysqlc_sdbc_driver::throwFeatureNotImplementedException("OResultSet::deleteRows", *this); 1368*cdf0e10cSrcweir return aRet; 1369*cdf0e10cSrcweir } 1370*cdf0e10cSrcweir /* }}} */ 1371*cdf0e10cSrcweir 1372*cdf0e10cSrcweir 1373*cdf0e10cSrcweir /* {{{ OResultSet::createArrayHelper() -I- */ 1374*cdf0e10cSrcweir IPropertyArrayHelper * OResultSet::createArrayHelper() const 1375*cdf0e10cSrcweir { 1376*cdf0e10cSrcweir OSL_TRACE("OResultSet::createArrayHelper"); 1377*cdf0e10cSrcweir Sequence< Property > aProps(5); 1378*cdf0e10cSrcweir Property* pProperties = aProps.getArray(); 1379*cdf0e10cSrcweir sal_Int32 nPos = 0; 1380*cdf0e10cSrcweir DECL_PROP0(FETCHDIRECTION, sal_Int32); 1381*cdf0e10cSrcweir DECL_PROP0(FETCHSIZE, sal_Int32); 1382*cdf0e10cSrcweir DECL_BOOL_PROP1IMPL(ISBOOKMARKABLE) PropertyAttribute::READONLY); 1383*cdf0e10cSrcweir DECL_PROP1IMPL(RESULTSETCONCURRENCY,sal_Int32) PropertyAttribute::READONLY); 1384*cdf0e10cSrcweir DECL_PROP1IMPL(RESULTSETTYPE, sal_Int32) PropertyAttribute::READONLY); 1385*cdf0e10cSrcweir 1386*cdf0e10cSrcweir return new OPropertyArrayHelper(aProps); 1387*cdf0e10cSrcweir } 1388*cdf0e10cSrcweir /* }}} */ 1389*cdf0e10cSrcweir 1390*cdf0e10cSrcweir 1391*cdf0e10cSrcweir /* {{{ OResultSet::getInfoHelper() -I- */ 1392*cdf0e10cSrcweir IPropertyArrayHelper & OResultSet::getInfoHelper() 1393*cdf0e10cSrcweir { 1394*cdf0e10cSrcweir OSL_TRACE("OResultSet::getInfoHelper"); 1395*cdf0e10cSrcweir return (*const_cast<OResultSet*>(this)->getArrayHelper()); 1396*cdf0e10cSrcweir } 1397*cdf0e10cSrcweir /* }}} */ 1398*cdf0e10cSrcweir 1399*cdf0e10cSrcweir 1400*cdf0e10cSrcweir /* {{{ OResultSet::convertFastPropertyValue() -I- */ 1401*cdf0e10cSrcweir sal_Bool OResultSet::convertFastPropertyValue(Any & /* rConvertedValue */, 1402*cdf0e10cSrcweir Any & /* rOldValue */, 1403*cdf0e10cSrcweir sal_Int32 nHandle, 1404*cdf0e10cSrcweir const Any& /* rValue */) 1405*cdf0e10cSrcweir throw (::com::sun::star::lang::IllegalArgumentException) 1406*cdf0e10cSrcweir { 1407*cdf0e10cSrcweir OSL_TRACE("OResultSet::convertFastPropertyValue"); 1408*cdf0e10cSrcweir switch (nHandle) { 1409*cdf0e10cSrcweir case PROPERTY_ID_ISBOOKMARKABLE: 1410*cdf0e10cSrcweir case PROPERTY_ID_CURSORNAME: 1411*cdf0e10cSrcweir case PROPERTY_ID_RESULTSETCONCURRENCY: 1412*cdf0e10cSrcweir case PROPERTY_ID_RESULTSETTYPE: 1413*cdf0e10cSrcweir throw ::com::sun::star::lang::IllegalArgumentException(); 1414*cdf0e10cSrcweir case PROPERTY_ID_FETCHDIRECTION: 1415*cdf0e10cSrcweir case PROPERTY_ID_FETCHSIZE: 1416*cdf0e10cSrcweir default: 1417*cdf0e10cSrcweir ; 1418*cdf0e10cSrcweir } 1419*cdf0e10cSrcweir return sal_False; 1420*cdf0e10cSrcweir } 1421*cdf0e10cSrcweir /* }}} */ 1422*cdf0e10cSrcweir 1423*cdf0e10cSrcweir 1424*cdf0e10cSrcweir /* {{{ OResultSet::setFastPropertyValue_NoBroadcast() -I- */ 1425*cdf0e10cSrcweir void OResultSet::setFastPropertyValue_NoBroadcast(sal_Int32 nHandle, const Any& /* rValue */) 1426*cdf0e10cSrcweir throw (Exception) 1427*cdf0e10cSrcweir { 1428*cdf0e10cSrcweir OSL_TRACE("OResultSet::setFastPropertyValue_NoBroadcast"); 1429*cdf0e10cSrcweir switch (nHandle) { 1430*cdf0e10cSrcweir case PROPERTY_ID_ISBOOKMARKABLE: 1431*cdf0e10cSrcweir case PROPERTY_ID_CURSORNAME: 1432*cdf0e10cSrcweir case PROPERTY_ID_RESULTSETCONCURRENCY: 1433*cdf0e10cSrcweir case PROPERTY_ID_RESULTSETTYPE: 1434*cdf0e10cSrcweir throw Exception(); 1435*cdf0e10cSrcweir case PROPERTY_ID_FETCHDIRECTION: 1436*cdf0e10cSrcweir break; 1437*cdf0e10cSrcweir case PROPERTY_ID_FETCHSIZE: 1438*cdf0e10cSrcweir break; 1439*cdf0e10cSrcweir default: 1440*cdf0e10cSrcweir ; 1441*cdf0e10cSrcweir } 1442*cdf0e10cSrcweir } 1443*cdf0e10cSrcweir /* }}} */ 1444*cdf0e10cSrcweir 1445*cdf0e10cSrcweir 1446*cdf0e10cSrcweir /* {{{ OResultSet::getFastPropertyValue() -I- */ 1447*cdf0e10cSrcweir void OResultSet::getFastPropertyValue(Any& _rValue, sal_Int32 nHandle) const 1448*cdf0e10cSrcweir { 1449*cdf0e10cSrcweir OSL_TRACE("OResultSet::getFastPropertyValue"); 1450*cdf0e10cSrcweir switch (nHandle) { 1451*cdf0e10cSrcweir case PROPERTY_ID_ISBOOKMARKABLE: 1452*cdf0e10cSrcweir _rValue <<= sal_False; 1453*cdf0e10cSrcweir break; 1454*cdf0e10cSrcweir case PROPERTY_ID_CURSORNAME: 1455*cdf0e10cSrcweir break; 1456*cdf0e10cSrcweir case PROPERTY_ID_RESULTSETCONCURRENCY: 1457*cdf0e10cSrcweir _rValue <<= ResultSetConcurrency::READ_ONLY; 1458*cdf0e10cSrcweir break; 1459*cdf0e10cSrcweir case PROPERTY_ID_RESULTSETTYPE: 1460*cdf0e10cSrcweir _rValue <<= ResultSetType::SCROLL_INSENSITIVE; 1461*cdf0e10cSrcweir break; 1462*cdf0e10cSrcweir case PROPERTY_ID_FETCHDIRECTION: 1463*cdf0e10cSrcweir _rValue <<= FetchDirection::FORWARD; 1464*cdf0e10cSrcweir break; 1465*cdf0e10cSrcweir case PROPERTY_ID_FETCHSIZE: 1466*cdf0e10cSrcweir _rValue <<= sal_Int32(50); 1467*cdf0e10cSrcweir break; 1468*cdf0e10cSrcweir ; 1469*cdf0e10cSrcweir default: 1470*cdf0e10cSrcweir ; 1471*cdf0e10cSrcweir } 1472*cdf0e10cSrcweir } 1473*cdf0e10cSrcweir /* }}} */ 1474*cdf0e10cSrcweir 1475*cdf0e10cSrcweir 1476*cdf0e10cSrcweir /* {{{ OResultSet::acquire() -I- */ 1477*cdf0e10cSrcweir void SAL_CALL OResultSet::acquire() 1478*cdf0e10cSrcweir throw() 1479*cdf0e10cSrcweir { 1480*cdf0e10cSrcweir OSL_TRACE("OResultSet::acquire"); 1481*cdf0e10cSrcweir OResultSet_BASE::acquire(); 1482*cdf0e10cSrcweir } 1483*cdf0e10cSrcweir /* }}} */ 1484*cdf0e10cSrcweir 1485*cdf0e10cSrcweir 1486*cdf0e10cSrcweir /* {{{ OResultSet::release() -I- */ 1487*cdf0e10cSrcweir void SAL_CALL OResultSet::release() 1488*cdf0e10cSrcweir throw() 1489*cdf0e10cSrcweir { 1490*cdf0e10cSrcweir OSL_TRACE("OResultSet::release"); 1491*cdf0e10cSrcweir OResultSet_BASE::release(); 1492*cdf0e10cSrcweir } 1493*cdf0e10cSrcweir /* }}} */ 1494*cdf0e10cSrcweir 1495*cdf0e10cSrcweir 1496*cdf0e10cSrcweir /* {{{ OResultSet::getPropertySetInfo() -I- */ 1497*cdf0e10cSrcweir ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL OResultSet::getPropertySetInfo() throw(::com::sun::star::uno::RuntimeException) 1498*cdf0e10cSrcweir { 1499*cdf0e10cSrcweir OSL_TRACE("OResultSet::getPropertySetInfo"); 1500*cdf0e10cSrcweir return (::cppu::OPropertySetHelper::createPropertySetInfo(getInfoHelper())); 1501*cdf0e10cSrcweir } 1502*cdf0e10cSrcweir /* }}} */ 1503*cdf0e10cSrcweir 1504*cdf0e10cSrcweir 1505*cdf0e10cSrcweir /* {{{ OResultSet::checkColumnIndex() -I- */ 1506*cdf0e10cSrcweir void OResultSet::checkColumnIndex(sal_Int32 index) 1507*cdf0e10cSrcweir throw (SQLException, RuntimeException) 1508*cdf0e10cSrcweir { 1509*cdf0e10cSrcweir OSL_TRACE("OResultSet::checkColumnIndex"); 1510*cdf0e10cSrcweir if ((index < 1 || index > (int) fieldCount)) { 1511*cdf0e10cSrcweir /* static object for efficiency or thread safety is a problem ? */ 1512*cdf0e10cSrcweir OUString buf( RTL_CONSTASCII_USTRINGPARAM( "index out of range" ) ); 1513*cdf0e10cSrcweir throw SQLException(buf, *this, OUString(), 1, Any()); 1514*cdf0e10cSrcweir } 1515*cdf0e10cSrcweir } 1516*cdf0e10cSrcweir /* }}} */ 1517*cdf0e10cSrcweir 1518*cdf0e10cSrcweir 1519*cdf0e10cSrcweir /* 1520*cdf0e10cSrcweir * Local variables: 1521*cdf0e10cSrcweir * tab-width: 4 1522*cdf0e10cSrcweir * c-basic-offset: 4 1523*cdf0e10cSrcweir * End: 1524*cdf0e10cSrcweir * vim600: noet sw=4 ts=4 fdm=marker 1525*cdf0e10cSrcweir * vim<600: noet sw=4 ts=4 1526*cdf0e10cSrcweir */ 1527