001/* 002 * Licensed to the Apache Software Foundation (ASF) under one or more 003 * contributor license agreements. See the NOTICE file distributed with 004 * this work for additional information regarding copyright ownership. 005 * The ASF licenses this file to You under the Apache License, Version 2.0 006 * (the "License"); you may not use this file except in compliance with 007 * the License. You may obtain a copy of the License at 008 * 009 * http://www.apache.org/licenses/LICENSE-2.0 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the License for the specific language governing permissions and 015 * limitations under the License. 016 */ 017 018package org.apache.commons.dbcp2; 019 020import java.io.InputStream; 021import java.io.Reader; 022import java.math.BigDecimal; 023import java.net.URL; 024import java.sql.Array; 025import java.sql.Blob; 026import java.sql.CallableStatement; 027import java.sql.Clob; 028import java.sql.Date; 029import java.sql.NClob; 030import java.sql.Ref; 031import java.sql.RowId; 032import java.sql.SQLException; 033import java.sql.SQLXML; 034import java.sql.Time; 035import java.sql.Timestamp; 036import java.util.Calendar; 037import java.util.Map; 038 039/** 040 * A base delegating implementation of {@link CallableStatement}. 041 * <p> 042 * All of the methods from the {@link CallableStatement} interface 043 * simply call the corresponding method on the "delegate" 044 * provided in my constructor. 045 * <p> 046 * Extends AbandonedTrace to implement Statement tracking and 047 * logging of code which created the Statement. Tracking the 048 * Statement ensures that the Connection which created it can 049 * close any open Statement's on Connection close. 050 * 051 * @author Glenn L. Nielsen 052 * @author James House 053 * @author Dirk Verbeeck 054 * @since 2.0 055 */ 056public class DelegatingCallableStatement extends DelegatingPreparedStatement 057 implements CallableStatement { 058 059 /** 060 * Create a wrapper for the Statement which traces this 061 * Statement to the Connection which created it and the 062 * code which created it. 063 * 064 * @param c the {@link DelegatingConnection} that created this statement 065 * @param s the {@link CallableStatement} to delegate all calls to 066 */ 067 public DelegatingCallableStatement(final DelegatingConnection<?> c, 068 final CallableStatement s) { 069 super(c, s); 070 } 071 072 @Override 073 public void registerOutParameter(final int parameterIndex, final int sqlType) throws SQLException 074 { checkOpen(); try { ((CallableStatement)getDelegate()).registerOutParameter( parameterIndex, sqlType); } catch (final SQLException e) { handleException(e); } } 075 076 @Override 077 public void registerOutParameter(final int parameterIndex, final int sqlType, final int scale) throws SQLException 078 { checkOpen(); try { ((CallableStatement)getDelegate()).registerOutParameter( parameterIndex, sqlType, scale); } catch (final SQLException e) { handleException(e); } } 079 080 @Override 081 public boolean wasNull() throws SQLException 082 { checkOpen(); try { return ((CallableStatement)getDelegate()).wasNull(); } catch (final SQLException e) { handleException(e); return false; } } 083 084 @Override 085 public String getString(final int parameterIndex) throws SQLException 086 { checkOpen(); try { return ((CallableStatement)getDelegate()).getString( parameterIndex); } catch (final SQLException e) { handleException(e); return null; } } 087 088 @Override 089 public boolean getBoolean(final int parameterIndex) throws SQLException 090 { checkOpen(); try { return ((CallableStatement)getDelegate()).getBoolean( parameterIndex); } catch (final SQLException e) { handleException(e); return false; } } 091 092 @Override 093 public byte getByte(final int parameterIndex) throws SQLException 094 { checkOpen(); try { return ((CallableStatement)getDelegate()).getByte( parameterIndex); } catch (final SQLException e) { handleException(e); return 0; } } 095 096 @Override 097 public short getShort(final int parameterIndex) throws SQLException 098 { checkOpen(); try { return ((CallableStatement)getDelegate()).getShort( parameterIndex); } catch (final SQLException e) { handleException(e); return 0; } } 099 100 @Override 101 public int getInt(final int parameterIndex) throws SQLException 102 { checkOpen(); try { return ((CallableStatement)getDelegate()).getInt( parameterIndex); } catch (final SQLException e) { handleException(e); return 0; } } 103 104 @Override 105 public long getLong(final int parameterIndex) throws SQLException 106 { checkOpen(); try { return ((CallableStatement)getDelegate()).getLong( parameterIndex); } catch (final SQLException e) { handleException(e); return 0; } } 107 108 @Override 109 public float getFloat(final int parameterIndex) throws SQLException 110 { checkOpen(); try { return ((CallableStatement)getDelegate()).getFloat( parameterIndex); } catch (final SQLException e) { handleException(e); return 0; } } 111 112 @Override 113 public double getDouble(final int parameterIndex) throws SQLException 114 { checkOpen(); try { return ((CallableStatement)getDelegate()).getDouble( parameterIndex); } catch (final SQLException e) { handleException(e); return 0; } } 115 116 /** @deprecated Use {@link #getBigDecimal(int)} or {@link #getBigDecimal(String)} */ 117 @Override 118 @Deprecated 119 public BigDecimal getBigDecimal(final int parameterIndex, final int scale) throws SQLException 120 { checkOpen(); try { return ((CallableStatement)getDelegate()).getBigDecimal( parameterIndex, scale); } catch (final SQLException e) { handleException(e); return null; } } 121 122 @Override 123 public byte[] getBytes(final int parameterIndex) throws SQLException 124 { checkOpen(); try { return ((CallableStatement)getDelegate()).getBytes( parameterIndex); } catch (final SQLException e) { handleException(e); return null; } } 125 126 @Override 127 public Date getDate(final int parameterIndex) throws SQLException 128 { checkOpen(); try { return ((CallableStatement)getDelegate()).getDate( parameterIndex); } catch (final SQLException e) { handleException(e); return null; } } 129 130 @Override 131 public Time getTime(final int parameterIndex) throws SQLException 132 { checkOpen(); try { return ((CallableStatement)getDelegate()).getTime( parameterIndex); } catch (final SQLException e) { handleException(e); return null; } } 133 134 @Override 135 public Timestamp getTimestamp(final int parameterIndex) throws SQLException 136 { checkOpen(); try { return ((CallableStatement)getDelegate()).getTimestamp( parameterIndex); } catch (final SQLException e) { handleException(e); return null; } } 137 138 @Override 139 public Object getObject(final int parameterIndex) throws SQLException 140 { checkOpen(); try { return ((CallableStatement)getDelegate()).getObject( parameterIndex); } catch (final SQLException e) { handleException(e); return null; } } 141 142 @Override 143 public BigDecimal getBigDecimal(final int parameterIndex) throws SQLException 144 { checkOpen(); try { return ((CallableStatement)getDelegate()).getBigDecimal( parameterIndex); } catch (final SQLException e) { handleException(e); return null; } } 145 146 @Override 147 public Object getObject(final int i, final Map<String,Class<?>> map) throws SQLException 148 { checkOpen(); try { return ((CallableStatement)getDelegate()).getObject( i, map); } catch (final SQLException e) { handleException(e); return null; } } 149 150 @Override 151 public Ref getRef(final int i) throws SQLException 152 { checkOpen(); try { return ((CallableStatement)getDelegate()).getRef( i); } catch (final SQLException e) { handleException(e); return null; } } 153 154 @Override 155 public Blob getBlob(final int i) throws SQLException 156 { checkOpen(); try { return ((CallableStatement)getDelegate()).getBlob( i); } catch (final SQLException e) { handleException(e); return null; } } 157 158 @Override 159 public Clob getClob(final int i) throws SQLException 160 { checkOpen(); try { return ((CallableStatement)getDelegate()).getClob( i); } catch (final SQLException e) { handleException(e); return null; } } 161 162 @Override 163 public Array getArray(final int i) throws SQLException 164 { checkOpen(); try { return ((CallableStatement)getDelegate()).getArray( i); } catch (final SQLException e) { handleException(e); return null; } } 165 166 @Override 167 public Date getDate(final int parameterIndex, final Calendar cal) throws SQLException 168 { checkOpen(); try { return ((CallableStatement)getDelegate()).getDate( parameterIndex, cal); } catch (final SQLException e) { handleException(e); return null; } } 169 170 @Override 171 public Time getTime(final int parameterIndex, final Calendar cal) throws SQLException 172 { checkOpen(); try { return ((CallableStatement)getDelegate()).getTime( parameterIndex, cal); } catch (final SQLException e) { handleException(e); return null; } } 173 174 @Override 175 public Timestamp getTimestamp(final int parameterIndex, final Calendar cal) throws SQLException 176 { checkOpen(); try { return ((CallableStatement)getDelegate()).getTimestamp( parameterIndex, cal); } catch (final SQLException e) { handleException(e); return null; } } 177 178 @Override 179 public void registerOutParameter(final int paramIndex, final int sqlType, final String typeName) throws SQLException 180 { checkOpen(); try { ((CallableStatement)getDelegate()).registerOutParameter( paramIndex, sqlType, typeName); } catch (final SQLException e) { handleException(e); } } 181 182 @Override 183 public void registerOutParameter(final String parameterName, final int sqlType) throws SQLException 184 { checkOpen(); try { ((CallableStatement)getDelegate()).registerOutParameter(parameterName, sqlType); } catch (final SQLException e) { handleException(e); } } 185 186 @Override 187 public void registerOutParameter(final String parameterName, final int sqlType, final int scale) throws SQLException 188 { checkOpen(); try { ((CallableStatement)getDelegate()).registerOutParameter(parameterName, sqlType, scale); } catch (final SQLException e) { handleException(e); } } 189 190 @Override 191 public void registerOutParameter(final String parameterName, final int sqlType, final String typeName) throws SQLException 192 { checkOpen(); try { ((CallableStatement)getDelegate()).registerOutParameter(parameterName, sqlType, typeName); } catch (final SQLException e) { handleException(e); } } 193 194 @Override 195 public URL getURL(final int parameterIndex) throws SQLException 196 { checkOpen(); try { return ((CallableStatement)getDelegate()).getURL(parameterIndex); } catch (final SQLException e) { handleException(e); return null; } } 197 198 @Override 199 public void setURL(final String parameterName, final URL val) throws SQLException 200 { checkOpen(); try { ((CallableStatement)getDelegate()).setURL(parameterName, val); } catch (final SQLException e) { handleException(e); } } 201 202 @Override 203 public void setNull(final String parameterName, final int sqlType) throws SQLException 204 { checkOpen(); try { ((CallableStatement)getDelegate()).setNull(parameterName, sqlType); } catch (final SQLException e) { handleException(e); } } 205 206 @Override 207 public void setBoolean(final String parameterName, final boolean x) throws SQLException 208 { checkOpen(); try { ((CallableStatement)getDelegate()).setBoolean(parameterName, x); } catch (final SQLException e) { handleException(e); } } 209 210 @Override 211 public void setByte(final String parameterName, final byte x) throws SQLException 212 { checkOpen(); try { ((CallableStatement)getDelegate()).setByte(parameterName, x); } catch (final SQLException e) { handleException(e); } } 213 214 @Override 215 public void setShort(final String parameterName, final short x) throws SQLException 216 { checkOpen(); try { ((CallableStatement)getDelegate()).setShort(parameterName, x); } catch (final SQLException e) { handleException(e); } } 217 218 @Override 219 public void setInt(final String parameterName, final int x) throws SQLException 220 { checkOpen(); try { ((CallableStatement)getDelegate()).setInt(parameterName, x); } catch (final SQLException e) { handleException(e); } } 221 222 @Override 223 public void setLong(final String parameterName, final long x) throws SQLException 224 { checkOpen(); try { ((CallableStatement)getDelegate()).setLong(parameterName, x); } catch (final SQLException e) { handleException(e); } } 225 226 @Override 227 public void setFloat(final String parameterName, final float x) throws SQLException 228 { checkOpen(); try { ((CallableStatement)getDelegate()).setFloat(parameterName, x); } catch (final SQLException e) { handleException(e); } } 229 230 @Override 231 public void setDouble(final String parameterName, final double x) throws SQLException 232 { checkOpen(); try { ((CallableStatement)getDelegate()).setDouble(parameterName, x); } catch (final SQLException e) { handleException(e); } } 233 234 @Override 235 public void setBigDecimal(final String parameterName, final BigDecimal x) throws SQLException 236 { checkOpen(); try { ((CallableStatement)getDelegate()).setBigDecimal(parameterName, x); } catch (final SQLException e) { handleException(e); } } 237 238 @Override 239 public void setString(final String parameterName, final String x) throws SQLException 240 { checkOpen(); try { ((CallableStatement)getDelegate()).setString(parameterName, x); } catch (final SQLException e) { handleException(e); } } 241 242 @Override 243 public void setBytes(final String parameterName, final byte [] x) throws SQLException 244 { checkOpen(); try { ((CallableStatement)getDelegate()).setBytes(parameterName, x); } catch (final SQLException e) { handleException(e); } } 245 246 @Override 247 public void setDate(final String parameterName, final Date x) throws SQLException 248 { checkOpen(); try { ((CallableStatement)getDelegate()).setDate(parameterName, x); } catch (final SQLException e) { handleException(e); } } 249 250 @Override 251 public void setTime(final String parameterName, final Time x) throws SQLException 252 { checkOpen(); try { ((CallableStatement)getDelegate()).setTime(parameterName, x); } catch (final SQLException e) { handleException(e); } } 253 254 @Override 255 public void setTimestamp(final String parameterName, final Timestamp x) throws SQLException 256 { checkOpen(); try { ((CallableStatement)getDelegate()).setTimestamp(parameterName, x); } catch (final SQLException e) { handleException(e); } } 257 258 @Override 259 public void setAsciiStream(final String parameterName, final InputStream x, final int length) throws SQLException 260 { checkOpen(); try { ((CallableStatement)getDelegate()).setAsciiStream(parameterName, x, length); } catch (final SQLException e) { handleException(e); } } 261 262 @Override 263 public void setBinaryStream(final String parameterName, final InputStream x, final int length) throws SQLException 264 { checkOpen(); try { ((CallableStatement)getDelegate()).setBinaryStream(parameterName, x, length); } catch (final SQLException e) { handleException(e); } } 265 266 @Override 267 public void setObject(final String parameterName, final Object x, final int targetSqlType, final int scale) throws SQLException 268 { checkOpen(); try { ((CallableStatement)getDelegate()).setObject(parameterName, x, targetSqlType, scale); } catch (final SQLException e) { handleException(e); } } 269 270 @Override 271 public void setObject(final String parameterName, final Object x, final int targetSqlType) throws SQLException 272 { checkOpen(); try { ((CallableStatement)getDelegate()).setObject(parameterName, x, targetSqlType); } catch (final SQLException e) { handleException(e); } } 273 274 @Override 275 public void setObject(final String parameterName, final Object x) throws SQLException 276 { checkOpen(); try { ((CallableStatement)getDelegate()).setObject(parameterName, x); } catch (final SQLException e) { handleException(e); } } 277 278 @Override 279 public void setCharacterStream(final String parameterName, final Reader reader, final int length) throws SQLException 280 { checkOpen(); ((CallableStatement)getDelegate()).setCharacterStream(parameterName, reader, length); } 281 282 @Override 283 public void setDate(final String parameterName, final Date x, final Calendar cal) throws SQLException 284 { checkOpen(); try { ((CallableStatement)getDelegate()).setDate(parameterName, x, cal); } catch (final SQLException e) { handleException(e); } } 285 286 @Override 287 public void setTime(final String parameterName, final Time x, final Calendar cal) throws SQLException 288 { checkOpen(); try { ((CallableStatement)getDelegate()).setTime(parameterName, x, cal); } catch (final SQLException e) { handleException(e); } } 289 290 @Override 291 public void setTimestamp(final String parameterName, final Timestamp x, final Calendar cal) throws SQLException 292 { checkOpen(); try { ((CallableStatement)getDelegate()).setTimestamp(parameterName, x, cal); } catch (final SQLException e) { handleException(e); } } 293 294 @Override 295 public void setNull(final String parameterName, final int sqlType, final String typeName) throws SQLException 296 { checkOpen(); try { ((CallableStatement)getDelegate()).setNull(parameterName, sqlType, typeName); } catch (final SQLException e) { handleException(e); } } 297 298 @Override 299 public String getString(final String parameterName) throws SQLException 300 { checkOpen(); try { return ((CallableStatement)getDelegate()).getString(parameterName); } catch (final SQLException e) { handleException(e); return null; } } 301 302 @Override 303 public boolean getBoolean(final String parameterName) throws SQLException 304 { checkOpen(); try { return ((CallableStatement)getDelegate()).getBoolean(parameterName); } catch (final SQLException e) { handleException(e); return false; } } 305 306 @Override 307 public byte getByte(final String parameterName) throws SQLException 308 { checkOpen(); try { return ((CallableStatement)getDelegate()).getByte(parameterName); } catch (final SQLException e) { handleException(e); return 0; } } 309 310 @Override 311 public short getShort(final String parameterName) throws SQLException 312 { checkOpen(); try { return ((CallableStatement)getDelegate()).getShort(parameterName); } catch (final SQLException e) { handleException(e); return 0; } } 313 314 @Override 315 public int getInt(final String parameterName) throws SQLException 316 { checkOpen(); try { return ((CallableStatement)getDelegate()).getInt(parameterName); } catch (final SQLException e) { handleException(e); return 0; } } 317 318 @Override 319 public long getLong(final String parameterName) throws SQLException 320 { checkOpen(); try { return ((CallableStatement)getDelegate()).getLong(parameterName); } catch (final SQLException e) { handleException(e); return 0; } } 321 322 @Override 323 public float getFloat(final String parameterName) throws SQLException 324 { checkOpen(); try { return ((CallableStatement)getDelegate()).getFloat(parameterName); } catch (final SQLException e) { handleException(e); return 0; } } 325 326 @Override 327 public double getDouble(final String parameterName) throws SQLException 328 { checkOpen(); try { return ((CallableStatement)getDelegate()).getDouble(parameterName); } catch (final SQLException e) { handleException(e); return 0; } } 329 330 @Override 331 public byte[] getBytes(final String parameterName) throws SQLException 332 { checkOpen(); try { return ((CallableStatement)getDelegate()).getBytes(parameterName); } catch (final SQLException e) { handleException(e); return null; } } 333 334 @Override 335 public Date getDate(final String parameterName) throws SQLException 336 { checkOpen(); try { return ((CallableStatement)getDelegate()).getDate(parameterName); } catch (final SQLException e) { handleException(e); return null; } } 337 338 @Override 339 public Time getTime(final String parameterName) throws SQLException 340 { checkOpen(); try { return ((CallableStatement)getDelegate()).getTime(parameterName); } catch (final SQLException e) { handleException(e); return null; } } 341 342 @Override 343 public Timestamp getTimestamp(final String parameterName) throws SQLException 344 { checkOpen(); try { return ((CallableStatement)getDelegate()).getTimestamp(parameterName); } catch (final SQLException e) { handleException(e); return null; } } 345 346 @Override 347 public Object getObject(final String parameterName) throws SQLException 348 { checkOpen(); try { return ((CallableStatement)getDelegate()).getObject(parameterName); } catch (final SQLException e) { handleException(e); return null; } } 349 350 @Override 351 public BigDecimal getBigDecimal(final String parameterName) throws SQLException 352 { checkOpen(); try { return ((CallableStatement)getDelegate()).getBigDecimal(parameterName); } catch (final SQLException e) { handleException(e); return null; } } 353 354 @Override 355 public Object getObject(final String parameterName, final Map<String,Class<?>> map) throws SQLException 356 { checkOpen(); try { return ((CallableStatement)getDelegate()).getObject(parameterName, map); } catch (final SQLException e) { handleException(e); return null; } } 357 358 @Override 359 public Ref getRef(final String parameterName) throws SQLException 360 { checkOpen(); try { return ((CallableStatement)getDelegate()).getRef(parameterName); } catch (final SQLException e) { handleException(e); return null; } } 361 362 @Override 363 public Blob getBlob(final String parameterName) throws SQLException 364 { checkOpen(); try { return ((CallableStatement)getDelegate()).getBlob(parameterName); } catch (final SQLException e) { handleException(e); return null; } } 365 366 @Override 367 public Clob getClob(final String parameterName) throws SQLException 368 { checkOpen(); try { return ((CallableStatement)getDelegate()).getClob(parameterName); } catch (final SQLException e) { handleException(e); return null; } } 369 370 @Override 371 public Array getArray(final String parameterName) throws SQLException 372 { checkOpen(); try { return ((CallableStatement)getDelegate()).getArray(parameterName); } catch (final SQLException e) { handleException(e); return null; } } 373 374 @Override 375 public Date getDate(final String parameterName, final Calendar cal) throws SQLException 376 { checkOpen(); try { return ((CallableStatement)getDelegate()).getDate(parameterName, cal); } catch (final SQLException e) { handleException(e); return null; } } 377 378 @Override 379 public Time getTime(final String parameterName, final Calendar cal) throws SQLException 380 { checkOpen(); try { return ((CallableStatement)getDelegate()).getTime(parameterName, cal); } catch (final SQLException e) { handleException(e); return null; } } 381 382 @Override 383 public Timestamp getTimestamp(final String parameterName, final Calendar cal) throws SQLException 384 { checkOpen(); try { return ((CallableStatement)getDelegate()).getTimestamp(parameterName, cal); } catch (final SQLException e) { handleException(e); return null; } } 385 386 @Override 387 public URL getURL(final String parameterName) throws SQLException 388 { checkOpen(); try { return ((CallableStatement)getDelegate()).getURL(parameterName); } catch (final SQLException e) { handleException(e); return null; } } 389 390 391 @Override 392 public RowId getRowId(final int parameterIndex) throws SQLException { 393 checkOpen(); 394 try { 395 return ((CallableStatement)getDelegate()).getRowId(parameterIndex); 396 } 397 catch (final SQLException e) { 398 handleException(e); 399 return null; 400 } 401 } 402 403 @Override 404 public RowId getRowId(final String parameterName) throws SQLException { 405 checkOpen(); 406 try { 407 return ((CallableStatement)getDelegate()).getRowId(parameterName); 408 } 409 catch (final SQLException e) { 410 handleException(e); 411 return null; 412 } 413 } 414 415 @Override 416 public void setRowId(final String parameterName, final RowId value) throws SQLException { 417 checkOpen(); 418 try { 419 ((CallableStatement)getDelegate()).setRowId(parameterName, value); 420 } 421 catch (final SQLException e) { 422 handleException(e); 423 } 424 } 425 426 @Override 427 public void setNString(final String parameterName, final String value) throws SQLException { 428 checkOpen(); 429 try { 430 ((CallableStatement)getDelegate()).setNString(parameterName, value); 431 } 432 catch (final SQLException e) { 433 handleException(e); 434 } 435 } 436 437 @Override 438 public void setNCharacterStream(final String parameterName, final Reader reader, final long length) throws SQLException { 439 checkOpen(); 440 try { 441 ((CallableStatement)getDelegate()).setNCharacterStream(parameterName, reader, length); 442 } 443 catch (final SQLException e) { 444 handleException(e); 445 } 446 } 447 448 @Override 449 public void setNClob(final String parameterName, final NClob value) throws SQLException { 450 checkOpen(); 451 try { 452 ((CallableStatement)getDelegate()).setNClob(parameterName, value); 453 } 454 catch (final SQLException e) { 455 handleException(e); 456 } 457 } 458 459 @Override 460 public void setClob(final String parameterName, final Reader reader, final long length) throws SQLException { 461 checkOpen(); 462 try { 463 ((CallableStatement)getDelegate()).setClob(parameterName, reader, length); 464 } 465 catch (final SQLException e) { 466 handleException(e); 467 } 468 } 469 470 @Override 471 public void setBlob(final String parameterName, final InputStream inputStream, final long length) throws SQLException { 472 checkOpen(); 473 try { 474 ((CallableStatement)getDelegate()).setBlob(parameterName, inputStream, length); 475 } 476 catch (final SQLException e) { 477 handleException(e); 478 } 479 } 480 481 @Override 482 public void setNClob(final String parameterName, final Reader reader, final long length) throws SQLException { 483 checkOpen(); 484 try { 485 ((CallableStatement)getDelegate()).setNClob(parameterName, reader, length); 486 } 487 catch (final SQLException e) { 488 handleException(e); 489 } 490 } 491 492 @Override 493 public NClob getNClob(final int parameterIndex) throws SQLException { 494 checkOpen(); 495 try { 496 return ((CallableStatement)getDelegate()).getNClob(parameterIndex); 497 } 498 catch (final SQLException e) { 499 handleException(e); 500 return null; 501 } 502 } 503 504 @Override 505 public NClob getNClob(final String parameterName) throws SQLException { 506 checkOpen(); 507 try { 508 return ((CallableStatement)getDelegate()).getNClob(parameterName); 509 } 510 catch (final SQLException e) { 511 handleException(e); 512 return null; 513 } 514 } 515 516 @Override 517 public void setSQLXML(final String parameterName, final SQLXML value) throws SQLException { 518 checkOpen(); 519 try { 520 ((CallableStatement)getDelegate()).setSQLXML(parameterName, value); 521 } 522 catch (final SQLException e) { 523 handleException(e); 524 } 525 } 526 527 @Override 528 public SQLXML getSQLXML(final int parameterIndex) throws SQLException { 529 checkOpen(); 530 try { 531 return ((CallableStatement)getDelegate()).getSQLXML(parameterIndex); 532 } 533 catch (final SQLException e) { 534 handleException(e); 535 return null; 536 } 537 } 538 539 @Override 540 public SQLXML getSQLXML(final String parameterName) throws SQLException { 541 checkOpen(); 542 try { 543 return ((CallableStatement)getDelegate()).getSQLXML(parameterName); 544 } 545 catch (final SQLException e) { 546 handleException(e); 547 return null; 548 } 549 } 550 551 @Override 552 public String getNString(final int parameterIndex) throws SQLException { 553 checkOpen(); 554 try { 555 return ((CallableStatement)getDelegate()).getNString(parameterIndex); 556 } 557 catch (final SQLException e) { 558 handleException(e); 559 return null; 560 } 561 } 562 563 @Override 564 public String getNString(final String parameterName) throws SQLException { 565 checkOpen(); 566 try { 567 return ((CallableStatement)getDelegate()).getNString(parameterName); 568 } 569 catch (final SQLException e) { 570 handleException(e); 571 return null; 572 } 573 } 574 575 @Override 576 public Reader getNCharacterStream(final int parameterIndex) throws SQLException { 577 checkOpen(); 578 try { 579 return ((CallableStatement)getDelegate()).getNCharacterStream(parameterIndex); 580 } 581 catch (final SQLException e) { 582 handleException(e); 583 return null; 584 } 585 } 586 587 @Override 588 public Reader getNCharacterStream(final String parameterName) throws SQLException { 589 checkOpen(); 590 try { 591 return ((CallableStatement)getDelegate()).getNCharacterStream(parameterName); 592 } 593 catch (final SQLException e) { 594 handleException(e); 595 return null; 596 } 597 } 598 599 @Override 600 public Reader getCharacterStream(final int parameterIndex) throws SQLException { 601 checkOpen(); 602 try { 603 return ((CallableStatement)getDelegate()).getCharacterStream(parameterIndex); 604 } 605 catch (final SQLException e) { 606 handleException(e); 607 return null; 608 } 609 } 610 611 @Override 612 public Reader getCharacterStream(final String parameterName) throws SQLException { 613 checkOpen(); 614 try { 615 return ((CallableStatement)getDelegate()).getCharacterStream(parameterName); 616 } 617 catch (final SQLException e) { 618 handleException(e); 619 return null; 620 } 621 } 622 623 @Override 624 public void setBlob(final String parameterName, final Blob blob) throws SQLException { 625 checkOpen(); 626 try { 627 ((CallableStatement)getDelegate()).setBlob(parameterName, blob); 628 } 629 catch (final SQLException e) { 630 handleException(e); 631 } 632 } 633 634 @Override 635 public void setClob(final String parameterName, final Clob clob) throws SQLException { 636 checkOpen(); 637 try { 638 ((CallableStatement)getDelegate()).setClob(parameterName, clob); 639 } 640 catch (final SQLException e) { 641 handleException(e); 642 } 643 } 644 645 @Override 646 public void setAsciiStream(final String parameterName, final InputStream inputStream, final long length) throws SQLException { 647 checkOpen(); 648 try { 649 ((CallableStatement)getDelegate()).setAsciiStream(parameterName, inputStream, length); 650 } 651 catch (final SQLException e) { 652 handleException(e); 653 } 654 } 655 656 @Override 657 public void setBinaryStream(final String parameterName, final InputStream inputStream, final long length) throws SQLException { 658 checkOpen(); 659 try { 660 ((CallableStatement)getDelegate()).setBinaryStream(parameterName, inputStream, length); 661 } 662 catch (final SQLException e) { 663 handleException(e); 664 } 665 } 666 667 @Override 668 public void setCharacterStream(final String parameterName, final Reader reader, final long length) throws SQLException { 669 checkOpen(); 670 try { 671 ((CallableStatement)getDelegate()).setCharacterStream(parameterName, reader, length); 672 } 673 catch (final SQLException e) { 674 handleException(e); 675 } 676 } 677 678 @Override 679 public void setAsciiStream(final String parameterName, final InputStream inputStream) throws SQLException { 680 checkOpen(); 681 try { 682 ((CallableStatement)getDelegate()).setAsciiStream(parameterName, inputStream); 683 } 684 catch (final SQLException e) { 685 handleException(e); 686 } 687 } 688 689 @Override 690 public void setBinaryStream(final String parameterName, final InputStream inputStream) throws SQLException { 691 checkOpen(); 692 try { 693 ((CallableStatement)getDelegate()).setBinaryStream(parameterName, inputStream); 694 } 695 catch (final SQLException e) { 696 handleException(e); 697 } 698 } 699 700 @Override 701 public void setCharacterStream(final String parameterName, final Reader reader) throws SQLException { 702 checkOpen(); 703 try { 704 ((CallableStatement)getDelegate()).setCharacterStream(parameterName, reader); 705 } 706 catch (final SQLException e) { 707 handleException(e); 708 } 709 } 710 711 @Override 712 public void setNCharacterStream(final String parameterName, final Reader reader) throws SQLException { 713 checkOpen(); 714 try { 715 ((CallableStatement)getDelegate()).setNCharacterStream(parameterName, reader); 716 } 717 catch (final SQLException e) { 718 handleException(e); 719 } 720 } 721 722 @Override 723 public void setClob(final String parameterName, final Reader reader) throws SQLException { 724 checkOpen(); 725 try { 726 ((CallableStatement)getDelegate()).setClob(parameterName, reader); 727 } 728 catch (final SQLException e) { 729 handleException(e); 730 } 731 } 732 733 @Override 734 public void setBlob(final String parameterName, final InputStream inputStream) throws SQLException { 735 checkOpen(); 736 try { 737 ((CallableStatement)getDelegate()).setBlob(parameterName, inputStream); 738 } 739 catch (final SQLException e) { 740 handleException(e); 741 } 742 } 743 744 @Override 745 public void setNClob(final String parameterName, final Reader reader) throws SQLException { 746 checkOpen(); 747 try { 748 ((CallableStatement)getDelegate()).setNClob(parameterName, reader); 749 } 750 catch (final SQLException e) { 751 handleException(e); 752 } 753 } 754 755 @Override 756 public <T> T getObject(final int parameterIndex, final Class<T> type) 757 throws SQLException { 758 checkOpen(); 759 try { 760 return ((CallableStatement)getDelegate()).getObject(parameterIndex, type); 761} 762 catch (final SQLException e) { 763 handleException(e); 764 return null; 765 } 766 } 767 768 @Override 769 public <T> T getObject(final String parameterName, final Class<T> type) 770 throws SQLException { 771 checkOpen(); 772 try { 773 return ((CallableStatement)getDelegate()).getObject(parameterName, type); 774 } 775 catch (final SQLException e) { 776 handleException(e); 777 return null; 778 } 779 } 780 781 782}