Commit ccd13eb
authored
feat(bigquery-jdbc): standardize parameter handling and calendar defensive copying across statement interfaces (#13805)
b/535194644
* **Hardened CallableStatement Getters**: Replaced reversed
`isAssignableFrom` checks with `instanceof`, `Number`/`Date` coercions,
and direct delegation to `getObject()`.
* **Standardized JDBC Parameter Names**: Updated synthetic parameter
names (`arg0`, `arg1`) to standard JDBC names (`parameterIndex`,
`parameterName`, `scale`).
* **Symmetrical Timezone Coercion**: Centralized `Calendar` timezone
conversions using `java.time` APIs across statements and result sets.
* **ParameterMetaData & Dynamic Modes**: Added support for dynamic `IN`,
`OUT`, and `INOUT` parameter modes in `BigQueryParameterMetaData`.
* **PreparedStatement Hardening**: Added defensive copying for
`Calendar` setters and replaced silent stubs with explicit unsupported
feature exceptions.1 parent bc19822 commit ccd13eb
3 files changed
Lines changed: 547 additions & 636 deletions
File tree
- java-bigquery-jdbc/src
- main/java/com/google/cloud/bigquery/jdbc
- test/java/com/google/cloud/bigquery/jdbc
Lines changed: 4 additions & 16 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
544 | 544 | | |
545 | 545 | | |
546 | 546 | | |
547 | | - | |
548 | | - | |
549 | | - | |
550 | | - | |
551 | | - | |
| 547 | + | |
552 | 548 | | |
553 | 549 | | |
554 | 550 | | |
555 | 551 | | |
556 | 552 | | |
557 | 553 | | |
558 | | - | |
559 | | - | |
560 | | - | |
561 | | - | |
562 | | - | |
| 554 | + | |
563 | 555 | | |
564 | 556 | | |
565 | 557 | | |
566 | 558 | | |
567 | 559 | | |
568 | | - | |
569 | | - | |
570 | | - | |
571 | | - | |
572 | | - | |
573 | | - | |
| 560 | + | |
| 561 | + | |
574 | 562 | | |
575 | 563 | | |
576 | 564 | | |
| |||
0 commit comments