Project

General

Profile

Download (44.8 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2007 EDIT
3
* European Distributed Institute of Taxonomy 
4
* http://www.e-taxonomy.eu
5
* 
6
* The contents of this file are subject to the Mozilla Public License Version 1.1
7
* See LICENSE.TXT at the top of this package for the full license terms.
8
*/
9

    
10
package eu.etaxonomy.cdm.io.common;
11

    
12
import java.io.InputStream;
13
import java.io.Reader;
14
import java.math.BigDecimal;
15
import java.net.URL;
16
import java.sql.Array;
17
import java.sql.Blob;
18
import java.sql.Clob;
19
import java.sql.Date;
20
import java.sql.NClob;
21
import java.sql.Ref;
22
import java.sql.ResultSet;
23
import java.sql.ResultSetMetaData;
24
import java.sql.RowId;
25
import java.sql.SQLException;
26
import java.sql.SQLWarning;
27
import java.sql.SQLXML;
28
import java.sql.Statement;
29
import java.sql.Time;
30
import java.sql.Timestamp;
31
import java.util.Calendar;
32
import java.util.HashMap;
33
import java.util.Map;
34

    
35
import org.apache.log4j.Logger;
36

    
37
/**
38
 * Some ResultSets do not allow asking twice for the same column value. This proxy solves this
39
 * problem by storing all values to a value map. When moving do another record the value map is 
40
 * emptied.
41
 * 
42
 * @author a.mueller
43
 * @created 24.08.2010
44
 */
45
public class ResultSetProxy implements ResultSet {
46
	private static final Logger logger = Logger.getLogger(ResultSetProxy.class);
47
	
48
// ************************** FACTORY METHODS *********************************/
49
	
50
	public static ResultSetProxy NewInstance(ResultSet resultSet){
51
		return new ResultSetProxy(resultSet);
52
	}
53
	
54
// **************************** VARIABLES ************************************************/
55
	
56
	private ResultSet resultSet;
57

    
58
	private Map<String, Object> proxyMap;
59
	
60
	private Object NULL = new Object();
61
	
62
// ********************** CONSTRUCTORS ****************************************************/
63
	
64
	public ResultSetProxy(ResultSet resultSet) {
65
		this.resultSet = resultSet;
66
		newProxyMap();
67
	}
68
	
69
// ************************* METHODS ********************************************/
70
	
71
	private void newProxyMap() {
72
		proxyMap = new HashMap<String, Object>();	
73
	}
74

    
75
// ******************************* DELEGATES ****************************/
76
	
77
	/* (non-Javadoc)
78
	 * @see java.sql.ResultSet#absolute(int)
79
	 */
80
	@Override
81
	public boolean absolute(int row) throws SQLException {
82
		newProxyMap();
83
		return resultSet.absolute(row);
84
	}
85

    
86

    
87
	/* (non-Javadoc)
88
	 * @see java.sql.ResultSet#afterLast()
89
	 */
90
	@Override
91
	public void afterLast() throws SQLException {
92
		newProxyMap();
93
		resultSet.afterLast();
94
	}
95

    
96

    
97
	/* (non-Javadoc)
98
	 * @see java.sql.ResultSet#beforeFirst()
99
	 */
100
	@Override
101
	public void beforeFirst() throws SQLException {
102
		newProxyMap();
103
		resultSet.beforeFirst();
104
	}
105

    
106

    
107
	/* (non-Javadoc)
108
	 * @see java.sql.ResultSet#cancelRowUpdates()
109
	 */
110
	@Override
111
	public void cancelRowUpdates() throws SQLException {
112
		resultSet.cancelRowUpdates();
113
	}
114

    
115

    
116
	/* (non-Javadoc)
117
	 * @see java.sql.ResultSet#clearWarnings()
118
	 */
119
	@Override
120
	public void clearWarnings() throws SQLException {
121
		resultSet.clearWarnings();
122
	}
123

    
124

    
125
	/* (non-Javadoc)
126
	 * @see java.sql.ResultSet#close()
127
	 */
128
	@Override
129
	public void close() throws SQLException {
130
		newProxyMap();
131
		resultSet.close();
132
	}
133

    
134

    
135
	/* (non-Javadoc)
136
	 * @see java.sql.ResultSet#deleteRow()
137
	 */
138
	@Override
139
	public void deleteRow() throws SQLException {
140
		newProxyMap();
141
		resultSet.deleteRow();
142
	}
143

    
144

    
145
	/* (non-Javadoc)
146
	 * @see java.sql.ResultSet#findColumn(java.lang.String)
147
	 */
148
	@Override
149
	public int findColumn(String columnLabel) throws SQLException {
150
		return resultSet.findColumn(columnLabel);
151
	}
152

    
153

    
154
	/* (non-Javadoc)
155
	 * @see java.sql.ResultSet#first()
156
	 */
157
	@Override
158
	public boolean first() throws SQLException {
159
		newProxyMap();
160
		return resultSet.first();
161
	}
162

    
163

    
164
	/* (non-Javadoc)
165
	 * @see java.sql.ResultSet#getArray(int)
166
	 */
167
	@Override
168
	public Array getArray(int columnIndex) throws SQLException {
169
		return resultSet.getArray(columnIndex);
170
	}
171

    
172

    
173
	/* (non-Javadoc)
174
	 * @see java.sql.ResultSet#getArray(java.lang.String)
175
	 */
176
	@Override
177
	public Array getArray(String columnLabel) throws SQLException {
178
		return resultSet.getArray(columnLabel);
179
	}
180

    
181

    
182
	/* (non-Javadoc)
183
	 * @see java.sql.ResultSet#getAsciiStream(int)
184
	 */
185
	@Override
186
	public InputStream getAsciiStream(int columnIndex) throws SQLException {
187
		return resultSet.getAsciiStream(columnIndex);
188
	}
189

    
190

    
191
	/* (non-Javadoc)
192
	 * @see java.sql.ResultSet#getAsciiStream(java.lang.String)
193
	 */
194
	@Override
195
	public InputStream getAsciiStream(String columnLabel) throws SQLException {
196
		return resultSet.getAsciiStream(columnLabel);
197
	}
198

    
199

    
200
	/* (non-Javadoc)
201
	 * @see java.sql.ResultSet#getBigDecimal(int, int)
202
	 */
203
	@Override
204
	@Deprecated
205
	public BigDecimal getBigDecimal(int columnIndex, int scale) throws SQLException {
206
		return resultSet.getBigDecimal(columnIndex, scale);
207
	}
208

    
209

    
210
	/* (non-Javadoc)
211
	 * @see java.sql.ResultSet#getBigDecimal(int)
212
	 */
213
	@Override
214
	public BigDecimal getBigDecimal(int columnIndex) throws SQLException {
215
		return resultSet.getBigDecimal(columnIndex);
216
	}
217

    
218

    
219
	/* (non-Javadoc)
220
	 * @see java.sql.ResultSet#getBigDecimal(java.lang.String, int)
221
	 */
222
	@Override
223
	public BigDecimal getBigDecimal(String columnLabel, int scale)
224
			throws SQLException {
225
		return resultSet.getBigDecimal(columnLabel, scale);
226
	}
227

    
228

    
229
	/* (non-Javadoc)
230
	 * @see java.sql.ResultSet#getBigDecimal(java.lang.String)
231
	 */
232
	@Override
233
	public BigDecimal getBigDecimal(String columnLabel) throws SQLException {
234
		return resultSet.getBigDecimal(columnLabel);
235
	}
236

    
237

    
238
	/* (non-Javadoc)
239
	 * @see java.sql.ResultSet#getBinaryStream(int)
240
	 */
241
	@Override
242
	public InputStream getBinaryStream(int columnIndex) throws SQLException {
243
		return resultSet.getBinaryStream(columnIndex);
244
	}
245

    
246

    
247
	/* (non-Javadoc)
248
	 * @see java.sql.ResultSet#getBinaryStream(java.lang.String)
249
	 */
250
	@Override
251
	public InputStream getBinaryStream(String columnLabel) throws SQLException {
252
		return resultSet.getBinaryStream(columnLabel);
253
	}
254

    
255

    
256
	/* (non-Javadoc)
257
	 * @see java.sql.ResultSet#getBlob(int)
258
	 */
259
	@Override
260
	public Blob getBlob(int columnIndex) throws SQLException {
261
		return resultSet.getBlob(columnIndex);
262
	}
263

    
264

    
265
	/* (non-Javadoc)
266
	 * @see java.sql.ResultSet#getBlob(java.lang.String)
267
	 */
268
	@Override
269
	public Blob getBlob(String columnLabel) throws SQLException {
270
		return resultSet.getBlob(columnLabel);
271
	}
272

    
273

    
274
	/* (non-Javadoc)
275
	 * @see java.sql.ResultSet#getBoolean(int)
276
	 */
277
	@Override
278
	public boolean getBoolean(int columnIndex) throws SQLException {
279
		return resultSet.getBoolean(columnIndex);
280
	}
281

    
282

    
283
	/* (non-Javadoc)
284
	 * @see java.sql.ResultSet#getBoolean(java.lang.String)
285
	 */
286
	@Override
287
	public boolean getBoolean(String columnLabel) throws SQLException {
288
		if (proxyMap.get(columnLabel) != null){
289
			return (Boolean)proxyMap.get(columnLabel);
290
		}else{
291
			Boolean result = resultSet.getBoolean(columnLabel);
292
			proxyMap.put(columnLabel, result);
293
			return result;
294
		}
295
	}
296

    
297

    
298
	/* (non-Javadoc)
299
	 * @see java.sql.ResultSet#getByte(int)
300
	 */
301
	@Override
302
	public byte getByte(int columnIndex) throws SQLException {
303
		return resultSet.getByte(columnIndex);
304
	}
305

    
306

    
307
	/* (non-Javadoc)
308
	 * @see java.sql.ResultSet#getByte(java.lang.String)
309
	 */
310
	@Override
311
	public byte getByte(String columnLabel) throws SQLException {
312
		return resultSet.getByte(columnLabel);
313
	}
314

    
315

    
316
	/* (non-Javadoc)
317
	 * @see java.sql.ResultSet#getBytes(int)
318
	 */
319
	@Override
320
	public byte[] getBytes(int columnIndex) throws SQLException {
321
		return resultSet.getBytes(columnIndex);
322
	}
323

    
324

    
325
	/* (non-Javadoc)
326
	 * @see java.sql.ResultSet#getBytes(java.lang.String)
327
	 */
328
	@Override
329
	public byte[] getBytes(String columnLabel) throws SQLException {
330
		return resultSet.getBytes(columnLabel);
331
	}
332

    
333

    
334
	/* (non-Javadoc)
335
	 * @see java.sql.ResultSet#getCharacterStream(int)
336
	 */
337
	@Override
338
	public Reader getCharacterStream(int columnIndex) throws SQLException {
339
		return resultSet.getCharacterStream(columnIndex);
340
	}
341

    
342

    
343
	/* (non-Javadoc)
344
	 * @see java.sql.ResultSet#getCharacterStream(java.lang.String)
345
	 */
346
	@Override
347
	public Reader getCharacterStream(String columnLabel) throws SQLException {
348
		return resultSet.getCharacterStream(columnLabel);
349
	}
350

    
351

    
352
	/* (non-Javadoc)
353
	 * @see java.sql.ResultSet#getClob(int)
354
	 */
355
	@Override
356
	public Clob getClob(int columnIndex) throws SQLException {
357
		return resultSet.getClob(columnIndex);
358
	}
359

    
360

    
361
	/* (non-Javadoc)
362
	 * @see java.sql.ResultSet#getClob(java.lang.String)
363
	 */
364
	@Override
365
	public Clob getClob(String columnLabel) throws SQLException {
366
		return resultSet.getClob(columnLabel);
367
	}
368

    
369

    
370
	/* (non-Javadoc)
371
	 * @see java.sql.ResultSet#getConcurrency()
372
	 */
373
	@Override
374
	public int getConcurrency() throws SQLException {
375
		return resultSet.getConcurrency();
376
	}
377

    
378

    
379
	/* (non-Javadoc)
380
	 * @see java.sql.ResultSet#getCursorName()
381
	 */
382
	@Override
383
	public String getCursorName() throws SQLException {
384
		return resultSet.getCursorName();
385
	}
386

    
387

    
388
	/* (non-Javadoc)
389
	 * @see java.sql.ResultSet#getDate(int, java.util.Calendar)
390
	 */
391
	@Override
392
	public Date getDate(int columnIndex, Calendar cal) throws SQLException {
393
		return resultSet.getDate(columnIndex, cal);
394
	}
395

    
396

    
397
	/* (non-Javadoc)
398
	 * @see java.sql.ResultSet#getDate(int)
399
	 */
400
	@Override
401
	public Date getDate(int columnIndex) throws SQLException {
402
		return resultSet.getDate(columnIndex);
403
	}
404

    
405

    
406
	/* (non-Javadoc)
407
	 * @see java.sql.ResultSet#getDate(java.lang.String, java.util.Calendar)
408
	 */
409
	@Override
410
	public Date getDate(String columnLabel, Calendar cal) throws SQLException {
411
		return resultSet.getDate(columnLabel, cal);
412
	}
413

    
414

    
415
	/* (non-Javadoc)
416
	 * @see java.sql.ResultSet#getDate(java.lang.String)
417
	 */
418
	@Override
419
	public Date getDate(String columnLabel) throws SQLException {
420
		return resultSet.getDate(columnLabel);
421
	}
422

    
423

    
424
	/* (non-Javadoc)
425
	 * @see java.sql.ResultSet#getDouble(int)
426
	 */
427
	@Override
428
	public double getDouble(int columnIndex) throws SQLException {
429
		return resultSet.getDouble(columnIndex);
430
	}
431

    
432

    
433
	/* (non-Javadoc)
434
	 * @see java.sql.ResultSet#getDouble(java.lang.String)
435
	 */
436
	@Override
437
	public double getDouble(String columnLabel) throws SQLException {
438
		return resultSet.getDouble(columnLabel);
439
	}
440

    
441

    
442
	/* (non-Javadoc)
443
	 * @see java.sql.ResultSet#getFetchDirection()
444
	 */
445
	@Override
446
	public int getFetchDirection() throws SQLException {
447
		return resultSet.getFetchDirection();
448
	}
449

    
450

    
451
	/* (non-Javadoc)
452
	 * @see java.sql.ResultSet#getFetchSize()
453
	 */
454
	@Override
455
	public int getFetchSize() throws SQLException {
456
		return resultSet.getFetchSize();
457
	}
458

    
459

    
460
	/* (non-Javadoc)
461
	 * @see java.sql.ResultSet#getFloat(int)
462
	 */
463
	@Override
464
	public float getFloat(int columnIndex) throws SQLException {
465
		return resultSet.getFloat(columnIndex);
466
	}
467

    
468

    
469
	/* (non-Javadoc)
470
	 * @see java.sql.ResultSet#getFloat(java.lang.String)
471
	 */
472
	@Override
473
	public float getFloat(String columnLabel) throws SQLException {
474
		return resultSet.getFloat(columnLabel);
475
	}
476

    
477

    
478
	/* (non-Javadoc)
479
	 * @see java.sql.ResultSet#getHoldability()
480
	 */
481
	@Override
482
	public int getHoldability() throws SQLException {
483
		return resultSet.getHoldability();
484
	}
485

    
486

    
487
	/* (non-Javadoc)
488
	 * @see java.sql.ResultSet#getInt(int)
489
	 */
490
	@Override
491
	public int getInt(int columnIndex) throws SQLException {
492
		return resultSet.getInt(columnIndex);
493
	}
494

    
495

    
496
	/* (non-Javadoc)
497
	 * @see java.sql.ResultSet#getInt(java.lang.String)
498
	 */
499
	@Override
500
	public int getInt(String columnLabel) throws SQLException {
501
		if (proxyMap.get(columnLabel) != null){
502
			return (Integer)proxyMap.get(columnLabel);
503
		}else{
504
			int result = resultSet.getInt(columnLabel);
505
			proxyMap.put(columnLabel, result);
506
			return result;
507
		}
508
		
509
	}
510

    
511

    
512
	/* (non-Javadoc)
513
	 * @see java.sql.ResultSet#getLong(int)
514
	 */
515
	@Override
516
	public long getLong(int columnIndex) throws SQLException {
517
		return resultSet.getLong(columnIndex);
518
	}
519

    
520

    
521
	/* (non-Javadoc)
522
	 * @see java.sql.ResultSet#getLong(java.lang.String)
523
	 */
524
	@Override
525
	public long getLong(String columnLabel) throws SQLException {
526
		if (proxyMap.get(columnLabel) != null){
527
			return (Long)proxyMap.get(columnLabel);
528
		}else{
529
			long result = resultSet.getLong(columnLabel);
530
			proxyMap.put(columnLabel, result);
531
			return result;
532
		}
533
	}
534

    
535

    
536
	/* (non-Javadoc)
537
	 * @see java.sql.ResultSet#getMetaData()
538
	 */
539
	@Override
540
	public ResultSetMetaData getMetaData() throws SQLException {
541
		return resultSet.getMetaData();
542
	}
543

    
544

    
545
	/* (non-Javadoc)
546
	 * @see java.sql.ResultSet#getNCharacterStream(int)
547
	 */
548
	@Override
549
	public Reader getNCharacterStream(int columnIndex) throws SQLException {
550
		return resultSet.getNCharacterStream(columnIndex);
551
	}
552

    
553

    
554
	/* (non-Javadoc)
555
	 * @see java.sql.ResultSet#getNCharacterStream(java.lang.String)
556
	 */
557
	@Override
558
	public Reader getNCharacterStream(String columnLabel) throws SQLException {
559
		return resultSet.getNCharacterStream(columnLabel);
560
	}
561

    
562

    
563
	/* (non-Javadoc)
564
	 * @see java.sql.ResultSet#getNClob(int)
565
	 */
566
	@Override
567
	public NClob getNClob(int columnIndex) throws SQLException {
568
		return resultSet.getNClob(columnIndex);
569
	}
570

    
571

    
572
	/* (non-Javadoc)
573
	 * @see java.sql.ResultSet#getNClob(java.lang.String)
574
	 */
575
	@Override
576
	public NClob getNClob(String columnLabel) throws SQLException {
577
		if (proxyMap.get(columnLabel) != null){
578
			return (NClob)proxyMap.get(columnLabel);
579
		}else{
580
			NClob result = resultSet.getNClob(columnLabel);
581
			proxyMap.put(columnLabel, result);
582
			return result;
583
		}
584
	}
585

    
586

    
587
	/* (non-Javadoc)
588
	 * @see java.sql.ResultSet#getNString(int)
589
	 */
590
	@Override
591
	public String getNString(int columnIndex) throws SQLException {
592
		return resultSet.getNString(columnIndex);
593
	}
594

    
595

    
596
	/* (non-Javadoc)
597
	 * @see java.sql.ResultSet#getNString(java.lang.String)
598
	 */
599
	@Override
600
	public String getNString(String columnLabel) throws SQLException {
601
		if (proxyMap.get(columnLabel) != null){
602
			return (String)proxyMap.get(columnLabel);
603
		}else{
604
			String result = resultSet.getNString(columnLabel);
605
			proxyMap.put(columnLabel, result);
606
			return result;
607
		}
608
	}
609

    
610

    
611
	/* (non-Javadoc)
612
	 * @see java.sql.ResultSet#getObject(int, java.util.Map)
613
	 */
614
	@Override
615
	public Object getObject(int columnIndex, Map<String, Class<?>> map) throws SQLException {
616
		return resultSet.getObject(columnIndex, map);
617
	}
618

    
619

    
620
	/* (non-Javadoc)
621
	 * @see java.sql.ResultSet#getObject(int)
622
	 */
623
	@Override
624
	public Object getObject(int columnIndex) throws SQLException {
625
		return resultSet.getObject(columnIndex);
626
	}
627

    
628

    
629
	/* (non-Javadoc)
630
	 * @see java.sql.ResultSet#getObject(java.lang.String, java.util.Map)
631
	 */
632
	@Override
633
	public Object getObject(String columnLabel, Map<String, Class<?>> map) throws SQLException {
634
		return resultSet.getObject(columnLabel, map);
635
	}
636

    
637

    
638
	/* (non-Javadoc)
639
	 * @see java.sql.ResultSet#getObject(java.lang.String)
640
	 */
641
	@Override
642
	public Object getObject(String columnLabel) throws SQLException {
643
		Object mapValue = proxyMap.get(columnLabel);
644
		if (mapValue != null){
645
			if (mapValue == NULL){
646
				return null;
647
			}else{
648
				return mapValue;
649
			}
650
		}else{
651
			Object result = resultSet.getObject(columnLabel);
652
			if (result == null){
653
				mapValue = NULL;
654
			}else{
655
				mapValue = result;
656
			}
657
			proxyMap.put(columnLabel, mapValue);
658
			return result;
659
		}
660
	}
661

    
662

    
663
	/* (non-Javadoc)
664
	 * @see java.sql.ResultSet#getRef(int)
665
	 */
666
	@Override
667
	public Ref getRef(int columnIndex) throws SQLException {
668
		return resultSet.getRef(columnIndex);
669
	}
670

    
671

    
672
	/* (non-Javadoc)
673
	 * @see java.sql.ResultSet#getRef(java.lang.String)
674
	 */
675
	@Override
676
	public Ref getRef(String columnLabel) throws SQLException {
677
		return resultSet.getRef(columnLabel);
678
	}
679

    
680

    
681
	/* (non-Javadoc)
682
	 * @see java.sql.ResultSet#getRow()
683
	 */
684
	@Override
685
	public int getRow() throws SQLException {
686
		return resultSet.getRow();
687
	}
688

    
689

    
690
	/* (non-Javadoc)
691
	 * @see java.sql.ResultSet#getRowId(int)
692
	 */
693
	@Override
694
	public RowId getRowId(int columnIndex) throws SQLException {
695
		return resultSet.getRowId(columnIndex);
696
	}
697

    
698

    
699
	/* (non-Javadoc)
700
	 * @see java.sql.ResultSet#getRowId(java.lang.String)
701
	 */
702
	@Override
703
	public RowId getRowId(String columnLabel) throws SQLException {
704
		return resultSet.getRowId(columnLabel);
705
	}
706

    
707

    
708
	/* (non-Javadoc)
709
	 * @see java.sql.ResultSet#getShort(int)
710
	 */
711
	@Override
712
	public short getShort(int columnIndex) throws SQLException {
713
		return resultSet.getShort(columnIndex);
714
	}
715

    
716

    
717
	/* (non-Javadoc)
718
	 * @see java.sql.ResultSet#getShort(java.lang.String)
719
	 */
720
	@Override
721
	public short getShort(String columnLabel) throws SQLException {
722
		return resultSet.getShort(columnLabel);
723
	}
724

    
725

    
726
	/* (non-Javadoc)
727
	 * @see java.sql.ResultSet#getSQLXML(int)
728
	 */
729
	@Override
730
	public SQLXML getSQLXML(int columnIndex) throws SQLException {
731
		return resultSet.getSQLXML(columnIndex);
732
	}
733

    
734

    
735
	/* (non-Javadoc)
736
	 * @see java.sql.ResultSet#getSQLXML(java.lang.String)
737
	 */
738
	@Override
739
	public SQLXML getSQLXML(String columnLabel) throws SQLException {
740
		return resultSet.getSQLXML(columnLabel);
741
	}
742

    
743

    
744
	/* (non-Javadoc)
745
	 * @see java.sql.ResultSet#getStatement()
746
	 */
747
	@Override
748
	public Statement getStatement() throws SQLException {
749
		return resultSet.getStatement();
750
	}
751

    
752

    
753
	/* (non-Javadoc)
754
	 * @see java.sql.ResultSet#getString(int)
755
	 */
756
	@Override
757
	public String getString(int columnIndex) throws SQLException {
758
		return resultSet.getString(columnIndex);
759
	}
760

    
761

    
762
	/* (non-Javadoc)
763
	 * @see java.sql.ResultSet#getString(java.lang.String)
764
	 */
765
	@Override
766
	public String getString(String columnLabel) throws SQLException {
767
		Object mapValue = proxyMap.get(columnLabel);
768
		if (mapValue != null){
769
			if (mapValue == NULL){
770
				return null;
771
			}else{
772
				return (String)mapValue;
773
			}
774
		}else{
775
			String result = resultSet.getString(columnLabel);
776
			if (result == null){
777
				mapValue = NULL;
778
			}else{
779
				mapValue = result;
780
			}
781
			proxyMap.put(columnLabel, mapValue);
782
			return result;
783
		}
784
	}
785

    
786

    
787
	/* (non-Javadoc)
788
	 * @see java.sql.ResultSet#getTime(int, java.util.Calendar)
789
	 */
790
	@Override
791
	public Time getTime(int columnIndex, Calendar cal) throws SQLException {
792
		return resultSet.getTime(columnIndex, cal);
793
	}
794

    
795

    
796
	/* (non-Javadoc)
797
	 * @see java.sql.ResultSet#getTime(int)
798
	 */
799
	@Override
800
	public Time getTime(int columnIndex) throws SQLException {
801
		return resultSet.getTime(columnIndex);
802
	}
803

    
804

    
805
	/* (non-Javadoc)
806
	 * @see java.sql.ResultSet#getTime(java.lang.String, java.util.Calendar)
807
	 */
808
	@Override
809
	public Time getTime(String columnLabel, Calendar cal) throws SQLException {
810
		return resultSet.getTime(columnLabel, cal);
811
	}
812

    
813

    
814
	/* (non-Javadoc)
815
	 * @see java.sql.ResultSet#getTime(java.lang.String)
816
	 */
817
	@Override
818
	public Time getTime(String columnLabel) throws SQLException {
819
		return resultSet.getTime(columnLabel);
820
	}
821

    
822

    
823
	/* (non-Javadoc)
824
	 * @see java.sql.ResultSet#getTimestamp(int, java.util.Calendar)
825
	 */
826
	@Override
827
	public Timestamp getTimestamp(int columnIndex, Calendar cal) throws SQLException {
828
		return resultSet.getTimestamp(columnIndex, cal);
829
	}
830

    
831

    
832
	/* (non-Javadoc)
833
	 * @see java.sql.ResultSet#getTimestamp(int)
834
	 */
835
	@Override
836
	public Timestamp getTimestamp(int columnIndex) throws SQLException {
837
		return resultSet.getTimestamp(columnIndex);
838
	}
839

    
840

    
841
	/* (non-Javadoc)
842
	 * @see java.sql.ResultSet#getTimestamp(java.lang.String, java.util.Calendar)
843
	 */
844
	@Override
845
	public Timestamp getTimestamp(String columnLabel, Calendar cal)
846
			throws SQLException {
847
		return resultSet.getTimestamp(columnLabel, cal);
848
	}
849

    
850

    
851
	/* (non-Javadoc)
852
	 * @see java.sql.ResultSet#getTimestamp(java.lang.String)
853
	 */
854
	@Override
855
	public Timestamp getTimestamp(String columnLabel) throws SQLException {
856
		return resultSet.getTimestamp(columnLabel);
857
	}
858

    
859

    
860
	/* (non-Javadoc)
861
	 * @see java.sql.ResultSet#getType()
862
	 */
863
	@Override
864
	public int getType() throws SQLException {
865
		return resultSet.getType();
866
	}
867

    
868

    
869
	/* (non-Javadoc)
870
	 * @see java.sql.ResultSet#getUnicodeStream(int)
871
	 */
872
	@Override
873
	@Deprecated
874
	public InputStream getUnicodeStream(int columnIndex) throws SQLException {
875
		return resultSet.getUnicodeStream(columnIndex);
876
	}
877

    
878

    
879
	/* (non-Javadoc)
880
	 * @see java.sql.ResultSet#getUnicodeStream(java.lang.String)
881
	 */
882
	@Override
883
	@Deprecated
884
	public InputStream getUnicodeStream(String columnLabel) throws SQLException {
885
		return resultSet.getUnicodeStream(columnLabel);
886
	}
887

    
888

    
889
	/* (non-Javadoc)
890
	 * @see java.sql.ResultSet#getURL(int)
891
	 */
892
	@Override
893
	public URL getURL(int columnIndex) throws SQLException {
894
		return resultSet.getURL(columnIndex);
895
	}
896

    
897

    
898
	/* (non-Javadoc)
899
	 * @see java.sql.ResultSet#getURL(java.lang.String)
900
	 */
901
	@Override
902
	public URL getURL(String columnLabel) throws SQLException {
903
		return resultSet.getURL(columnLabel);
904
	}
905

    
906

    
907
	/* (non-Javadoc)
908
	 * @see java.sql.ResultSet#getWarnings()
909
	 */
910
	@Override
911
	public SQLWarning getWarnings() throws SQLException {
912
		return resultSet.getWarnings();
913
	}
914

    
915

    
916
	/* (non-Javadoc)
917
	 * @see java.sql.ResultSet#insertRow()
918
	 */
919
	@Override
920
	public void insertRow() throws SQLException {
921
		resultSet.insertRow();
922
	}
923

    
924

    
925
	/* (non-Javadoc)
926
	 * @see java.sql.ResultSet#isAfterLast()
927
	 */
928
	@Override
929
	public boolean isAfterLast() throws SQLException {
930
		return resultSet.isAfterLast();
931
	}
932

    
933

    
934
	/* (non-Javadoc)
935
	 * @see java.sql.ResultSet#isBeforeFirst()
936
	 */
937
	@Override
938
	public boolean isBeforeFirst() throws SQLException {
939
		return resultSet.isBeforeFirst();
940
	}
941

    
942

    
943
	/* (non-Javadoc)
944
	 * @see java.sql.ResultSet#isClosed()
945
	 */
946
	@Override
947
	public boolean isClosed() throws SQLException {
948
		return resultSet.isClosed();
949
	}
950

    
951

    
952
	/* (non-Javadoc)
953
	 * @see java.sql.ResultSet#isFirst()
954
	 */
955
	@Override
956
	public boolean isFirst() throws SQLException {
957
		return resultSet.isFirst();
958
	}
959

    
960

    
961
	/* (non-Javadoc)
962
	 * @see java.sql.ResultSet#isLast()
963
	 */
964
	@Override
965
	public boolean isLast() throws SQLException {
966
		return resultSet.isLast();
967
	}
968

    
969

    
970
	/* (non-Javadoc)
971
	 * @see java.sql.Wrapper#isWrapperFor(java.lang.Class)
972
	 */
973
	@Override
974
	public boolean isWrapperFor(Class<?> iface) throws SQLException {
975
		return resultSet.isWrapperFor(iface);
976
	}
977

    
978

    
979
	/* (non-Javadoc)
980
	 * @see java.sql.ResultSet#last()
981
	 */
982
	@Override
983
	public boolean last() throws SQLException {
984
		newProxyMap();
985
		return resultSet.last();
986
	}
987

    
988

    
989
	/* (non-Javadoc)
990
	 * @see java.sql.ResultSet#moveToCurrentRow()
991
	 */
992
	@Override
993
	public void moveToCurrentRow() throws SQLException {
994
		newProxyMap();
995
		resultSet.moveToCurrentRow();
996
	}
997

    
998

    
999
	/* (non-Javadoc)
1000
	 * @see java.sql.ResultSet#moveToInsertRow()
1001
	 */
1002
	@Override
1003
	public void moveToInsertRow() throws SQLException {
1004
		newProxyMap();
1005
		resultSet.moveToInsertRow();
1006
	}
1007

    
1008

    
1009
	/* (non-Javadoc)
1010
	 * @see java.sql.ResultSet#next()
1011
	 */
1012
	@Override
1013
	public boolean next() throws SQLException {
1014
		newProxyMap();
1015
		return resultSet.next();
1016
	}
1017

    
1018

    
1019

    
1020
	/* (non-Javadoc)
1021
	 * @see java.sql.ResultSet#previous()
1022
	 */
1023
	@Override
1024
	public boolean previous() throws SQLException {
1025
		newProxyMap();
1026
		return resultSet.previous();
1027
	}
1028

    
1029

    
1030
	/* (non-Javadoc)
1031
	 * @see java.sql.ResultSet#refreshRow()
1032
	 */
1033
	@Override
1034
	public void refreshRow() throws SQLException {
1035
		newProxyMap();
1036
		resultSet.refreshRow();
1037
	}
1038

    
1039

    
1040
	/* (non-Javadoc)
1041
	 * @see java.sql.ResultSet#relative(int)
1042
	 */
1043
	@Override
1044
	public boolean relative(int rows) throws SQLException {
1045
		newProxyMap();
1046
		return resultSet.relative(rows);
1047
	}
1048

    
1049

    
1050
	/* (non-Javadoc)
1051
	 * @see java.sql.ResultSet#rowDeleted()
1052
	 */
1053
	@Override
1054
	public boolean rowDeleted() throws SQLException {
1055
		return resultSet.rowDeleted();
1056
	}
1057

    
1058

    
1059
	/* (non-Javadoc)
1060
	 * @see java.sql.ResultSet#rowInserted()
1061
	 */
1062
	@Override
1063
	public boolean rowInserted() throws SQLException {
1064
		return resultSet.rowInserted();
1065
	}
1066

    
1067

    
1068
	/* (non-Javadoc)
1069
	 * @see java.sql.ResultSet#rowUpdated()
1070
	 */
1071
	@Override
1072
	public boolean rowUpdated() throws SQLException {
1073
		return resultSet.rowUpdated();
1074
	}
1075

    
1076

    
1077
	/* (non-Javadoc)
1078
	 * @see java.sql.ResultSet#setFetchDirection(int)
1079
	 */
1080
	@Override
1081
	public void setFetchDirection(int direction) throws SQLException {
1082
		resultSet.setFetchDirection(direction);
1083
	}
1084

    
1085

    
1086
	/* (non-Javadoc)
1087
	 * @see java.sql.ResultSet#setFetchSize(int)
1088
	 */
1089
	@Override
1090
	public void setFetchSize(int rows) throws SQLException {
1091
		resultSet.setFetchSize(rows);
1092
	}
1093

    
1094

    
1095
	/* (non-Javadoc)
1096
	 * @see java.sql.Wrapper#unwrap(java.lang.Class)
1097
	 */
1098
	@Override
1099
	public <T> T unwrap(Class<T> iface) throws SQLException {
1100
		return resultSet.unwrap(iface);
1101
	}
1102

    
1103

    
1104
	/* (non-Javadoc)
1105
	 * @see java.sql.ResultSet#updateArray(int, java.sql.Array)
1106
	 */
1107
	@Override
1108
	public void updateArray(int columnIndex, Array x) throws SQLException {
1109
		resultSet.updateArray(columnIndex, x);
1110
	}
1111

    
1112

    
1113
	/* (non-Javadoc)
1114
	 * @see java.sql.ResultSet#updateArray(java.lang.String, java.sql.Array)
1115
	 */
1116
	@Override
1117
	public void updateArray(String columnLabel, Array x) throws SQLException {
1118
		resultSet.updateArray(columnLabel, x);
1119
	}
1120

    
1121

    
1122
	/* (non-Javadoc)
1123
	 * @see java.sql.ResultSet#updateAsciiStream(int, java.io.InputStream, int)
1124
	 */
1125
	@Override
1126
	public void updateAsciiStream(int columnIndex, InputStream x, int length) throws SQLException {
1127
		resultSet.updateAsciiStream(columnIndex, x, length);
1128
	}
1129

    
1130

    
1131
	/* (non-Javadoc)
1132
	 * @see java.sql.ResultSet#updateAsciiStream(int, java.io.InputStream, long)
1133
	 */
1134
	@Override
1135
	public void updateAsciiStream(int columnIndex, InputStream x, long length) throws SQLException {
1136
		resultSet.updateAsciiStream(columnIndex, x, length);
1137
	}
1138

    
1139

    
1140
	/* (non-Javadoc)
1141
	 * @see java.sql.ResultSet#updateAsciiStream(int, java.io.InputStream)
1142
	 */
1143
	@Override
1144
	public void updateAsciiStream(int columnIndex, InputStream x) throws SQLException {
1145
		resultSet.updateAsciiStream(columnIndex, x);
1146
	}
1147

    
1148

    
1149
	/* (non-Javadoc)
1150
	 * @see java.sql.ResultSet#updateAsciiStream(java.lang.String, java.io.InputStream, int)
1151
	 */
1152
	@Override
1153
	public void updateAsciiStream(String columnLabel, InputStream x, int length) throws SQLException {
1154
		resultSet.updateAsciiStream(columnLabel, x, length);
1155
	}
1156

    
1157

    
1158
	/* (non-Javadoc)
1159
	 * @see java.sql.ResultSet#updateAsciiStream(java.lang.String, java.io.InputStream, long)
1160
	 */
1161
	@Override
1162
	public void updateAsciiStream(String columnLabel, InputStream x, long length) throws SQLException {
1163
		resultSet.updateAsciiStream(columnLabel, x, length);
1164
	}
1165

    
1166

    
1167
	/* (non-Javadoc)
1168
	 * @see java.sql.ResultSet#updateAsciiStream(java.lang.String, java.io.InputStream)
1169
	 */
1170
	@Override
1171
	public void updateAsciiStream(String columnLabel, InputStream x) throws SQLException {
1172
		resultSet.updateAsciiStream(columnLabel, x);
1173
	}
1174

    
1175

    
1176
	/* (non-Javadoc)
1177
	 * @see java.sql.ResultSet#updateBigDecimal(int, java.math.BigDecimal)
1178
	 */
1179
	@Override
1180
	public void updateBigDecimal(int columnIndex, BigDecimal x) throws SQLException {
1181
		resultSet.updateBigDecimal(columnIndex, x);
1182
	}
1183

    
1184

    
1185
	/* (non-Javadoc)
1186
	 * @see java.sql.ResultSet#updateBigDecimal(java.lang.String, java.math.BigDecimal)
1187
	 */
1188
	@Override
1189
	public void updateBigDecimal(String columnLabel, BigDecimal x) throws SQLException {
1190
		resultSet.updateBigDecimal(columnLabel, x);
1191
	}
1192

    
1193

    
1194
	/* (non-Javadoc)
1195
	 * @see java.sql.ResultSet#updateBinaryStream(int, java.io.InputStream, int)
1196
	 */
1197
	@Override
1198
	public void updateBinaryStream(int columnIndex, InputStream x, int length) throws SQLException {
1199
		resultSet.updateBinaryStream(columnIndex, x, length);
1200
	}
1201

    
1202

    
1203
	/* (non-Javadoc)
1204
	 * @see java.sql.ResultSet#updateBinaryStream(int, java.io.InputStream, long)
1205
	 */
1206
	@Override
1207
	public void updateBinaryStream(int columnIndex, InputStream x, long length) throws SQLException {
1208
		resultSet.updateBinaryStream(columnIndex, x, length);
1209
	}
1210

    
1211

    
1212
	/* (non-Javadoc)
1213
	 * @see java.sql.ResultSet#updateBinaryStream(int, java.io.InputStream)
1214
	 */
1215
	@Override
1216
	public void updateBinaryStream(int columnIndex, InputStream x) throws SQLException {
1217
		resultSet.updateBinaryStream(columnIndex, x);
1218
	}
1219

    
1220

    
1221
	/* (non-Javadoc)
1222
	 * @see java.sql.ResultSet#updateBinaryStream(java.lang.String, java.io.InputStream, int)
1223
	 */
1224
	@Override
1225
	public void updateBinaryStream(String columnLabel, InputStream x, int length) throws SQLException {
1226
		resultSet.updateBinaryStream(columnLabel, x, length);
1227
	}
1228

    
1229

    
1230
	/* (non-Javadoc)
1231
	 * @see java.sql.ResultSet#updateBinaryStream(java.lang.String, java.io.InputStream, long)
1232
	 */
1233
	@Override
1234
	public void updateBinaryStream(String columnLabel, InputStream x, long length) throws SQLException {
1235
		resultSet.updateBinaryStream(columnLabel, x, length);
1236
	}
1237

    
1238

    
1239
	/* (non-Javadoc)
1240
	 * @see java.sql.ResultSet#updateBinaryStream(java.lang.String, java.io.InputStream)
1241
	 */
1242
	@Override
1243
	public void updateBinaryStream(String columnLabel, InputStream x) throws SQLException {
1244
		resultSet.updateBinaryStream(columnLabel, x);
1245
	}
1246

    
1247

    
1248
	/* (non-Javadoc)
1249
	 * @see java.sql.ResultSet#updateBlob(int, java.sql.Blob)
1250
	 */
1251
	@Override
1252
	public void updateBlob(int columnIndex, Blob x) throws SQLException {
1253
		resultSet.updateBlob(columnIndex, x);
1254
	}
1255

    
1256

    
1257
	/* (non-Javadoc)
1258
	 * @see java.sql.ResultSet#updateBlob(int, java.io.InputStream, long)
1259
	 */
1260
	@Override
1261
	public void updateBlob(int columnIndex, InputStream inputStream, long length) throws SQLException {
1262
		resultSet.updateBlob(columnIndex, inputStream, length);
1263
	}
1264

    
1265

    
1266
	/* (non-Javadoc)
1267
	 * @see java.sql.ResultSet#updateBlob(int, java.io.InputStream)
1268
	 */
1269
	@Override
1270
	public void updateBlob(int columnIndex, InputStream inputStream) throws SQLException {
1271
		resultSet.updateBlob(columnIndex, inputStream);
1272
	}
1273

    
1274

    
1275
	/* (non-Javadoc)
1276
	 * @see java.sql.ResultSet#updateBlob(java.lang.String, java.sql.Blob)
1277
	 */
1278
	@Override
1279
	public void updateBlob(String columnLabel, Blob x) throws SQLException {
1280
		resultSet.updateBlob(columnLabel, x);
1281
	}
1282

    
1283

    
1284
	/* (non-Javadoc)
1285
	 * @see java.sql.ResultSet#updateBlob(java.lang.String, java.io.InputStream, long)
1286
	 */
1287
	@Override
1288
	public void updateBlob(String columnLabel, InputStream inputStream, long length) throws SQLException {
1289
		resultSet.updateBlob(columnLabel, inputStream, length);
1290
	}
1291

    
1292

    
1293
	/* (non-Javadoc)
1294
	 * @see java.sql.ResultSet#updateBlob(java.lang.String, java.io.InputStream)
1295
	 */
1296
	@Override
1297
	public void updateBlob(String columnLabel, InputStream inputStream)	throws SQLException {
1298
		resultSet.updateBlob(columnLabel, inputStream);
1299
	}
1300

    
1301

    
1302
	/* (non-Javadoc)
1303
	 * @see java.sql.ResultSet#updateBoolean(int, boolean)
1304
	 */
1305
	@Override
1306
	public void updateBoolean(int columnIndex, boolean x) throws SQLException {
1307
		resultSet.updateBoolean(columnIndex, x);
1308
	}
1309

    
1310

    
1311
	/* (non-Javadoc)
1312
	 * @see java.sql.ResultSet#updateBoolean(java.lang.String, boolean)
1313
	 */
1314
	@Override
1315
	public void updateBoolean(String columnLabel, boolean x) throws SQLException {
1316
		resultSet.updateBoolean(columnLabel, x);
1317
	}
1318

    
1319

    
1320
	/* (non-Javadoc)
1321
	 * @see java.sql.ResultSet#updateByte(int, byte)
1322
	 */
1323
	@Override
1324
	public void updateByte(int columnIndex, byte x) throws SQLException {
1325
		resultSet.updateByte(columnIndex, x);
1326
	}
1327

    
1328

    
1329
	@Override
1330
	public void updateByte(String columnLabel, byte x) throws SQLException {
1331
		resultSet.updateByte(columnLabel, x);
1332
	}
1333

    
1334

    
1335
	/* (non-Javadoc)
1336
	 * @see java.sql.ResultSet#updateBytes(int, byte[])
1337
	 */
1338
	@Override
1339
	public void updateBytes(int columnIndex, byte[] x) throws SQLException {
1340
		resultSet.updateBytes(columnIndex, x);
1341
	}
1342

    
1343

    
1344
	/* (non-Javadoc)
1345
	 * @see java.sql.ResultSet#updateBytes(java.lang.String, byte[])
1346
	 */
1347
	@Override
1348
	public void updateBytes(String columnLabel, byte[] x) throws SQLException {
1349
		resultSet.updateBytes(columnLabel, x);
1350
	}
1351

    
1352

    
1353
	/* (non-Javadoc)
1354
	 * @see java.sql.ResultSet#updateCharacterStream(int, java.io.Reader, int)
1355
	 */
1356
	@Override
1357
	public void updateCharacterStream(int columnIndex, Reader x, int length) throws SQLException {
1358
		resultSet.updateCharacterStream(columnIndex, x, length);
1359
	}
1360

    
1361

    
1362
	/* (non-Javadoc)
1363
	 * @see java.sql.ResultSet#updateCharacterStream(int, java.io.Reader, long)
1364
	 */
1365
	@Override
1366
	public void updateCharacterStream(int columnIndex, Reader x, long length) throws SQLException {
1367
		resultSet.updateCharacterStream(columnIndex, x, length);
1368
	}
1369

    
1370

    
1371
	/* (non-Javadoc)
1372
	 * @see java.sql.ResultSet#updateCharacterStream(int, java.io.Reader)
1373
	 */
1374
	@Override
1375
	public void updateCharacterStream(int columnIndex, Reader x) throws SQLException {
1376
		resultSet.updateCharacterStream(columnIndex, x);
1377
	}
1378

    
1379

    
1380
	/* (non-Javadoc)
1381
	 * @see java.sql.ResultSet#updateCharacterStream(java.lang.String, java.io.Reader, int)
1382
	 */
1383
	@Override
1384
	public void updateCharacterStream(String columnLabel, Reader reader,
1385
			int length) throws SQLException {
1386
		resultSet.updateCharacterStream(columnLabel, reader, length);
1387
	}
1388

    
1389

    
1390
	/* (non-Javadoc)
1391
	 * @see java.sql.ResultSet#updateCharacterStream(java.lang.String, java.io.Reader, long)
1392
	 */
1393
	@Override
1394
	public void updateCharacterStream(String columnLabel, Reader reader,
1395
			long length) throws SQLException {
1396
		resultSet.updateCharacterStream(columnLabel, reader, length);
1397
	}
1398

    
1399

    
1400
	/* (non-Javadoc)
1401
	 * @see java.sql.ResultSet#updateCharacterStream(java.lang.String, java.io.Reader)
1402
	 */
1403
	@Override
1404
	public void updateCharacterStream(String columnLabel, Reader reader)
1405
			throws SQLException {
1406
		resultSet.updateCharacterStream(columnLabel, reader);
1407
	}
1408

    
1409

    
1410
	/* (non-Javadoc)
1411
	 * @see java.sql.ResultSet#updateClob(int, java.sql.Clob)
1412
	 */
1413
	@Override
1414
	public void updateClob(int columnIndex, Clob x) throws SQLException {
1415
		resultSet.updateClob(columnIndex, x);
1416
	}
1417

    
1418

    
1419
	/* (non-Javadoc)
1420
	 * @see java.sql.ResultSet#updateClob(int, java.io.Reader, long)
1421
	 */
1422
	@Override
1423
	public void updateClob(int columnIndex, Reader reader, long length)
1424
			throws SQLException {
1425
		resultSet.updateClob(columnIndex, reader, length);
1426
	}
1427

    
1428

    
1429
	/* (non-Javadoc)
1430
	 * @see java.sql.ResultSet#updateClob(int, java.io.Reader)
1431
	 */
1432
	@Override
1433
	public void updateClob(int columnIndex, Reader reader) throws SQLException {
1434
		resultSet.updateClob(columnIndex, reader);
1435
	}
1436

    
1437

    
1438
	/* (non-Javadoc)
1439
	 * @see java.sql.ResultSet#updateClob(java.lang.String, java.sql.Clob)
1440
	 */
1441
	@Override
1442
	public void updateClob(String columnLabel, Clob x) throws SQLException {
1443
		resultSet.updateClob(columnLabel, x);
1444
	}
1445

    
1446

    
1447
	/* (non-Javadoc)
1448
	 * @see java.sql.ResultSet#updateClob(java.lang.String, java.io.Reader, long)
1449
	 */
1450
	@Override
1451
	public void updateClob(String columnLabel, Reader reader, long length)
1452
			throws SQLException {
1453
		resultSet.updateClob(columnLabel, reader, length);
1454
	}
1455

    
1456

    
1457
	/* (non-Javadoc)
1458
	 * @see java.sql.ResultSet#updateClob(java.lang.String, java.io.Reader)
1459
	 */
1460
	@Override
1461
	public void updateClob(String columnLabel, Reader reader)
1462
			throws SQLException {
1463
		resultSet.updateClob(columnLabel, reader);
1464
	}
1465

    
1466

    
1467
	/* (non-Javadoc)
1468
	 * @see java.sql.ResultSet#updateDate(int, java.sql.Date)
1469
	 */
1470
	@Override
1471
	public void updateDate(int columnIndex, Date x) throws SQLException {
1472
		resultSet.updateDate(columnIndex, x);
1473
	}
1474

    
1475

    
1476
	/* (non-Javadoc)
1477
	 * @see java.sql.ResultSet#updateDate(java.lang.String, java.sql.Date)
1478
	 */
1479
	@Override
1480
	public void updateDate(String columnLabel, Date x) throws SQLException {
1481
		resultSet.updateDate(columnLabel, x);
1482
	}
1483

    
1484

    
1485
	/* (non-Javadoc)
1486
	 * @see java.sql.ResultSet#updateDouble(int, double)
1487
	 */
1488
	@Override
1489
	public void updateDouble(int columnIndex, double x) throws SQLException {
1490
		resultSet.updateDouble(columnIndex, x);
1491
	}
1492

    
1493

    
1494
	/* (non-Javadoc)
1495
	 * @see java.sql.ResultSet#updateDouble(java.lang.String, double)
1496
	 */
1497
	@Override
1498
	public void updateDouble(String columnLabel, double x) throws SQLException {
1499
		resultSet.updateDouble(columnLabel, x);
1500
	}
1501

    
1502

    
1503
	/* (non-Javadoc)
1504
	 * @see java.sql.ResultSet#updateFloat(int, float)
1505
	 */
1506
	@Override
1507
	public void updateFloat(int columnIndex, float x) throws SQLException {
1508
		resultSet.updateFloat(columnIndex, x);
1509
	}
1510

    
1511

    
1512
	/* (non-Javadoc)
1513
	 * @see java.sql.ResultSet#updateFloat(java.lang.String, float)
1514
	 */
1515
	@Override
1516
	public void updateFloat(String columnLabel, float x) throws SQLException {
1517
		resultSet.updateFloat(columnLabel, x);
1518
	}
1519

    
1520

    
1521
	/* (non-Javadoc)
1522
	 * @see java.sql.ResultSet#updateInt(int, int)
1523
	 */
1524
	@Override
1525
	public void updateInt(int columnIndex, int x) throws SQLException {
1526
		resultSet.updateInt(columnIndex, x);
1527
	}
1528

    
1529

    
1530
	/* (non-Javadoc)
1531
	 * @see java.sql.ResultSet#updateInt(java.lang.String, int)
1532
	 */
1533
	@Override
1534
	public void updateInt(String columnLabel, int x) throws SQLException {
1535
		resultSet.updateInt(columnLabel, x);
1536
	}
1537

    
1538

    
1539
	/* (non-Javadoc)
1540
	 * @see java.sql.ResultSet#updateLong(int, long)
1541
	 */
1542
	@Override
1543
	public void updateLong(int columnIndex, long x) throws SQLException {
1544
		resultSet.updateLong(columnIndex, x);
1545
	}
1546

    
1547

    
1548
	/* (non-Javadoc)
1549
	 * @see java.sql.ResultSet#updateLong(java.lang.String, long)
1550
	 */
1551
	@Override
1552
	public void updateLong(String columnLabel, long x) throws SQLException {
1553
		resultSet.updateLong(columnLabel, x);
1554
	}
1555

    
1556

    
1557
	/* (non-Javadoc)
1558
	 * @see java.sql.ResultSet#updateNCharacterStream(int, java.io.Reader, long)
1559
	 */
1560
	@Override
1561
	public void updateNCharacterStream(int columnIndex, Reader x, long length) throws SQLException {
1562
		resultSet.updateNCharacterStream(columnIndex, x, length);
1563
	}
1564

    
1565

    
1566
	/* (non-Javadoc)
1567
	 * @see java.sql.ResultSet#updateNCharacterStream(int, java.io.Reader)
1568
	 */
1569
	@Override
1570
	public void updateNCharacterStream(int columnIndex, Reader x) throws SQLException {
1571
		resultSet.updateNCharacterStream(columnIndex, x);
1572
	}
1573

    
1574

    
1575
	/* (non-Javadoc)
1576
	 * @see java.sql.ResultSet#updateNCharacterStream(java.lang.String, java.io.Reader, long)
1577
	 */
1578
	@Override
1579
	public void updateNCharacterStream(String columnLabel, Reader reader, long length) throws SQLException {
1580
		resultSet.updateNCharacterStream(columnLabel, reader, length);
1581
	}
1582

    
1583

    
1584
	/* (non-Javadoc)
1585
	 * @see java.sql.ResultSet#updateNCharacterStream(java.lang.String, java.io.Reader)
1586
	 */
1587
	@Override
1588
	public void updateNCharacterStream(String columnLabel, Reader reader) throws SQLException {
1589
		resultSet.updateNCharacterStream(columnLabel, reader);
1590
	}
1591

    
1592

    
1593
	/* (non-Javadoc)
1594
	 * @see java.sql.ResultSet#updateNClob(int, java.sql.NClob)
1595
	 */
1596
	@Override
1597
	public void updateNClob(int columnIndex, NClob clob) throws SQLException {
1598
		resultSet.updateNClob(columnIndex, clob);
1599
	}
1600

    
1601

    
1602
	/* (non-Javadoc)
1603
	 * @see java.sql.ResultSet#updateNClob(int, java.io.Reader, long)
1604
	 */
1605
	@Override
1606
	public void updateNClob(int columnIndex, Reader reader, long length)
1607
			throws SQLException {
1608
		resultSet.updateNClob(columnIndex, reader, length);
1609
	}
1610

    
1611

    
1612
	/* (non-Javadoc)
1613
	 * @see java.sql.ResultSet#updateNClob(int, java.io.Reader)
1614
	 */
1615
	@Override
1616
	public void updateNClob(int columnIndex, Reader reader) throws SQLException {
1617
		resultSet.updateNClob(columnIndex, reader);
1618
	}
1619

    
1620

    
1621
	/* (non-Javadoc)
1622
	 * @see java.sql.ResultSet#updateNClob(java.lang.String, java.sql.NClob)
1623
	 */
1624
	@Override
1625
	public void updateNClob(String columnLabel, NClob clob) throws SQLException {
1626
		resultSet.updateNClob(columnLabel, clob);
1627
	}
1628

    
1629

    
1630
	/* (non-Javadoc)
1631
	 * @see java.sql.ResultSet#updateNClob(java.lang.String, java.io.Reader, long)
1632
	 */
1633
	@Override
1634
	public void updateNClob(String columnLabel, Reader reader, long length)
1635
			throws SQLException {
1636
		resultSet.updateNClob(columnLabel, reader, length);
1637
	}
1638

    
1639

    
1640
	/* (non-Javadoc)
1641
	 * @see java.sql.ResultSet#updateNClob(java.lang.String, java.io.Reader)
1642
	 */
1643
	@Override
1644
	public void updateNClob(String columnLabel, Reader reader)
1645
			throws SQLException {
1646
		resultSet.updateNClob(columnLabel, reader);
1647
	}
1648

    
1649

    
1650
	/* (non-Javadoc)
1651
	 * @see java.sql.ResultSet#updateNString(int, java.lang.String)
1652
	 */
1653
	@Override
1654
	public void updateNString(int columnIndex, String string)
1655
			throws SQLException {
1656
		resultSet.updateNString(columnIndex, string);
1657
	}
1658

    
1659

    
1660
	/* (non-Javadoc)
1661
	 * @see java.sql.ResultSet#updateNString(java.lang.String, java.lang.String)
1662
	 */
1663
	@Override
1664
	public void updateNString(String columnLabel, String string)
1665
			throws SQLException {
1666
		resultSet.updateNString(columnLabel, string);
1667
	}
1668

    
1669

    
1670
	/* (non-Javadoc)
1671
	 * @see java.sql.ResultSet#updateNull(int)
1672
	 */
1673
	@Override
1674
	public void updateNull(int columnIndex) throws SQLException {
1675
		resultSet.updateNull(columnIndex);
1676
	}
1677

    
1678

    
1679
	/* (non-Javadoc)
1680
	 * @see java.sql.ResultSet#updateNull(java.lang.String)
1681
	 */
1682
	@Override
1683
	public void updateNull(String columnLabel) throws SQLException {
1684
		resultSet.updateNull(columnLabel);
1685
	}
1686

    
1687

    
1688
	/* (non-Javadoc)
1689
	 * @see java.sql.ResultSet#updateObject(int, java.lang.Object, int)
1690
	 */
1691
	@Override
1692
	public void updateObject(int columnIndex, Object x, int scaleOrLength)
1693
			throws SQLException {
1694
		resultSet.updateObject(columnIndex, x, scaleOrLength);
1695
	}
1696

    
1697

    
1698
	/* (non-Javadoc)
1699
	 * @see java.sql.ResultSet#updateObject(int, java.lang.Object)
1700
	 */
1701
	@Override
1702
	public void updateObject(int columnIndex, Object x) throws SQLException {
1703
		resultSet.updateObject(columnIndex, x);
1704
	}
1705

    
1706

    
1707
	/* (non-Javadoc)
1708
	 * @see java.sql.ResultSet#updateObject(java.lang.String, java.lang.Object, int)
1709
	 */
1710
	@Override
1711
	public void updateObject(String columnLabel, Object x, int scaleOrLength)
1712
			throws SQLException {
1713
		resultSet.updateObject(columnLabel, x, scaleOrLength);
1714
	}
1715

    
1716

    
1717
	/* (non-Javadoc)
1718
	 * @see java.sql.ResultSet#updateObject(java.lang.String, java.lang.Object)
1719
	 */
1720
	@Override
1721
	public void updateObject(String columnLabel, Object x) throws SQLException {
1722
		resultSet.updateObject(columnLabel, x);
1723
	}
1724

    
1725

    
1726
	/* (non-Javadoc)
1727
	 * @see java.sql.ResultSet#updateRef(int, java.sql.Ref)
1728
	 */
1729
	@Override
1730
	public void updateRef(int columnIndex, Ref x) throws SQLException {
1731
		resultSet.updateRef(columnIndex, x);
1732
	}
1733

    
1734

    
1735
	/* (non-Javadoc)
1736
	 * @see java.sql.ResultSet#updateRef(java.lang.String, java.sql.Ref)
1737
	 */
1738
	@Override
1739
	public void updateRef(String columnLabel, Ref x) throws SQLException {
1740
		resultSet.updateRef(columnLabel, x);
1741
	}
1742

    
1743

    
1744
	/* (non-Javadoc)
1745
	 * @see java.sql.ResultSet#updateRow()
1746
	 */
1747
	@Override
1748
	public void updateRow() throws SQLException {
1749
		resultSet.updateRow();
1750
	}
1751

    
1752

    
1753
	/* (non-Javadoc)
1754
	 * @see java.sql.ResultSet#updateRowId(int, java.sql.RowId)
1755
	 */
1756
	@Override
1757
	public void updateRowId(int columnIndex, RowId x) throws SQLException {
1758
		resultSet.updateRowId(columnIndex, x);
1759
	}
1760

    
1761

    
1762
	/* (non-Javadoc)
1763
	 * @see java.sql.ResultSet#updateRowId(java.lang.String, java.sql.RowId)
1764
	 */
1765
	@Override
1766
	public void updateRowId(String columnLabel, RowId x) throws SQLException {
1767
		resultSet.updateRowId(columnLabel, x);
1768
	}
1769

    
1770

    
1771
	@Override public void updateShort(int columnIndex, short x) throws SQLException {
1772
		resultSet.updateShort(columnIndex, x);
1773
	}
1774

    
1775

    
1776
	/* (non-Javadoc)
1777
	 * @see java.sql.ResultSet#updateShort(java.lang.String, short)
1778
	 */
1779
	@Override
1780
	public void updateShort(String columnLabel, short x) throws SQLException {
1781
		resultSet.updateShort(columnLabel, x);
1782
	}
1783

    
1784

    
1785
	/* (non-Javadoc)
1786
	 * @see java.sql.ResultSet#updateSQLXML(int, java.sql.SQLXML)
1787
	 */
1788
	@Override
1789
	public void updateSQLXML(int columnIndex, SQLXML xmlObject)
1790
			throws SQLException {
1791
		resultSet.updateSQLXML(columnIndex, xmlObject);
1792
	}
1793

    
1794

    
1795
	/* (non-Javadoc)
1796
	 * @see java.sql.ResultSet#updateSQLXML(java.lang.String, java.sql.SQLXML)
1797
	 */
1798
	@Override
1799
	public void updateSQLXML(String columnLabel, SQLXML xmlObject)
1800
			throws SQLException {
1801
		resultSet.updateSQLXML(columnLabel, xmlObject);
1802
	}
1803

    
1804

    
1805
	/* (non-Javadoc)
1806
	 * @see java.sql.ResultSet#updateString(int, java.lang.String)
1807
	 */
1808
	@Override
1809
	public void updateString(int columnIndex, String x) throws SQLException {
1810
		resultSet.updateString(columnIndex, x);
1811
	}
1812

    
1813

    
1814
	/* (non-Javadoc)
1815
	 * @see java.sql.ResultSet#updateString(java.lang.String, java.lang.String)
1816
	 */
1817
	@Override
1818
	public void updateString(String columnLabel, String x) throws SQLException {
1819
		resultSet.updateString(columnLabel, x);
1820
	}
1821

    
1822

    
1823
	/* (non-Javadoc)
1824
	 * @see java.sql.ResultSet#updateTime(int, java.sql.Time)
1825
	 */
1826
	@Override
1827
	public void updateTime(int columnIndex, Time x) throws SQLException {
1828
		resultSet.updateTime(columnIndex, x);
1829
	}
1830

    
1831

    
1832
	/* (non-Javadoc)
1833
	 * @see java.sql.ResultSet#updateTime(java.lang.String, java.sql.Time)
1834
	 */
1835
	@Override
1836
	public void updateTime(String columnLabel, Time x) throws SQLException {
1837
		resultSet.updateTime(columnLabel, x);
1838
	}
1839

    
1840

    
1841
	/* (non-Javadoc)
1842
	 * @see java.sql.ResultSet#updateTimestamp(int, java.sql.Timestamp)
1843
	 */
1844
	@Override
1845
	public void updateTimestamp(int columnIndex, Timestamp x)
1846
			throws SQLException {
1847
		resultSet.updateTimestamp(columnIndex, x);
1848
	}
1849

    
1850

    
1851
	/* (non-Javadoc)
1852
	 * @see java.sql.ResultSet#updateTimestamp(java.lang.String, java.sql.Timestamp)
1853
	 */
1854
	@Override
1855
	public void updateTimestamp(String columnLabel, Timestamp x)
1856
			throws SQLException {
1857
		resultSet.updateTimestamp(columnLabel, x);
1858
	}
1859

    
1860

    
1861
	/* (non-Javadoc)
1862
	 * @see java.sql.ResultSet#wasNull()
1863
	 */
1864
	@Override 
1865
	public boolean wasNull() throws SQLException {
1866
		return resultSet.wasNull();
1867
	}
1868

    
1869
	// added for compatibility with Java 7	
1870
	public <T> T getObject(int arg0, Class<T> arg1) throws SQLException {
1871
		// TODO Auto-generated method stub
1872
		return null;
1873
	}
1874

    
1875
	// added for compatibility with Java 7
1876
	public <T> T getObject(String arg0, Class<T> arg1) throws SQLException {
1877
		// TODO Auto-generated method stub
1878
		return null;
1879
	}
1880
	
1881

    
1882

    
1883
}
(51-51/61)