xref: /AOO41X/main/mysqlc/source/mysqlc_resultset.cxx (revision cdf0e10c4e3984b49a9502b011690b615761d4a3)
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