View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one or more
3    * contributor license agreements.  See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * The ASF licenses this file to You under the Apache License, Version 2.0
6    * (the "License"); you may not use this file except in compliance with
7    * the License.  You may obtain a copy of the License at
8    *
9    *     http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the License for the specific language governing permissions and
15   * limitations under the License.
16   */
17  
18  package org.apache.shardingsphere.driver.jdbc.adapter;
19  
20  import lombok.RequiredArgsConstructor;
21  
22  import java.sql.DatabaseMetaData;
23  import java.sql.RowIdLifetime;
24  import java.sql.SQLException;
25  
26  /**
27   * Adapted database meta data.
28   */
29  @RequiredArgsConstructor
30  public abstract class AdaptedDatabaseMetaData extends WrapperAdapter implements DatabaseMetaData {
31      
32      private final DatabaseMetaData databaseMetaData;
33      
34      @Override
35      public final String getURL() throws SQLException {
36          return databaseMetaData.getURL();
37      }
38      
39      @Override
40      public final String getUserName() throws SQLException {
41          return databaseMetaData.getUserName();
42      }
43      
44      @Override
45      public final String getDatabaseProductName() throws SQLException {
46          return databaseMetaData.getDatabaseProductName();
47      }
48      
49      @Override
50      public final String getDatabaseProductVersion() throws SQLException {
51          return databaseMetaData.getDatabaseProductVersion();
52      }
53      
54      @Override
55      public final String getDriverName() throws SQLException {
56          return databaseMetaData.getDriverName();
57      }
58      
59      @Override
60      public final String getDriverVersion() throws SQLException {
61          return databaseMetaData.getDriverVersion();
62      }
63      
64      @Override
65      public final int getDriverMajorVersion() {
66          return databaseMetaData.getDriverMajorVersion();
67      }
68      
69      @Override
70      public final int getDriverMinorVersion() {
71          return databaseMetaData.getDriverMinorVersion();
72      }
73      
74      @Override
75      public final int getDatabaseMajorVersion() throws SQLException {
76          return databaseMetaData.getDatabaseMajorVersion();
77      }
78      
79      @Override
80      public final int getDatabaseMinorVersion() throws SQLException {
81          return databaseMetaData.getDatabaseMinorVersion();
82      }
83      
84      @Override
85      public final int getJDBCMajorVersion() throws SQLException {
86          return databaseMetaData.getJDBCMajorVersion();
87      }
88      
89      @Override
90      public final int getJDBCMinorVersion() throws SQLException {
91          return databaseMetaData.getJDBCMinorVersion();
92      }
93      
94      @Override
95      public final boolean isReadOnly() throws SQLException {
96          return databaseMetaData.isReadOnly();
97      }
98      
99      @Override
100     public final boolean allProceduresAreCallable() throws SQLException {
101         return databaseMetaData.allProceduresAreCallable();
102     }
103     
104     @Override
105     public final boolean allTablesAreSelectable() throws SQLException {
106         return databaseMetaData.allTablesAreSelectable();
107     }
108     
109     @Override
110     public final boolean nullsAreSortedHigh() throws SQLException {
111         return databaseMetaData.nullsAreSortedHigh();
112     }
113     
114     @Override
115     public final boolean nullsAreSortedLow() throws SQLException {
116         return databaseMetaData.nullsAreSortedLow();
117     }
118     
119     @Override
120     public final boolean nullsAreSortedAtStart() throws SQLException {
121         return databaseMetaData.nullsAreSortedAtStart();
122     }
123     
124     @Override
125     public final boolean nullsAreSortedAtEnd() throws SQLException {
126         return databaseMetaData.nullsAreSortedAtEnd();
127     }
128     
129     @Override
130     public final boolean usesLocalFiles() throws SQLException {
131         return databaseMetaData.usesLocalFiles();
132     }
133     
134     @Override
135     public final boolean usesLocalFilePerTable() throws SQLException {
136         return databaseMetaData.usesLocalFilePerTable();
137     }
138     
139     @Override
140     public final boolean supportsMixedCaseIdentifiers() throws SQLException {
141         return databaseMetaData.storesMixedCaseIdentifiers();
142     }
143     
144     @Override
145     public final boolean storesUpperCaseIdentifiers() throws SQLException {
146         return databaseMetaData.storesUpperCaseIdentifiers();
147     }
148     
149     @Override
150     public final boolean storesLowerCaseIdentifiers() throws SQLException {
151         return databaseMetaData.storesLowerCaseIdentifiers();
152     }
153     
154     @Override
155     public final boolean storesMixedCaseIdentifiers() throws SQLException {
156         return databaseMetaData.storesMixedCaseIdentifiers();
157     }
158     
159     @Override
160     public final boolean supportsMixedCaseQuotedIdentifiers() throws SQLException {
161         return databaseMetaData.supportsMixedCaseQuotedIdentifiers();
162     }
163     
164     @Override
165     public final boolean storesUpperCaseQuotedIdentifiers() throws SQLException {
166         return databaseMetaData.storesUpperCaseQuotedIdentifiers();
167     }
168     
169     @Override
170     public final boolean storesLowerCaseQuotedIdentifiers() throws SQLException {
171         return databaseMetaData.storesLowerCaseQuotedIdentifiers();
172     }
173     
174     @Override
175     public final boolean storesMixedCaseQuotedIdentifiers() throws SQLException {
176         return databaseMetaData.storesMixedCaseQuotedIdentifiers();
177     }
178     
179     @Override
180     public final String getIdentifierQuoteString() throws SQLException {
181         return databaseMetaData.getIdentifierQuoteString();
182     }
183     
184     @Override
185     public final String getSQLKeywords() throws SQLException {
186         return databaseMetaData.getSQLKeywords();
187     }
188     
189     @Override
190     public final String getNumericFunctions() throws SQLException {
191         return databaseMetaData.getNumericFunctions();
192     }
193     
194     @Override
195     public final String getStringFunctions() throws SQLException {
196         return databaseMetaData.getStringFunctions();
197     }
198     
199     @Override
200     public final String getSystemFunctions() throws SQLException {
201         return databaseMetaData.getSystemFunctions();
202     }
203     
204     @Override
205     public final String getTimeDateFunctions() throws SQLException {
206         return databaseMetaData.getTimeDateFunctions();
207     }
208     
209     @Override
210     public final String getSearchStringEscape() throws SQLException {
211         return databaseMetaData.getSearchStringEscape();
212     }
213     
214     @Override
215     public final String getExtraNameCharacters() throws SQLException {
216         return databaseMetaData.getExtraNameCharacters();
217     }
218     
219     @Override
220     public final boolean supportsAlterTableWithAddColumn() throws SQLException {
221         return databaseMetaData.supportsAlterTableWithAddColumn();
222     }
223     
224     @Override
225     public final boolean supportsAlterTableWithDropColumn() throws SQLException {
226         return databaseMetaData.supportsAlterTableWithDropColumn();
227     }
228     
229     @Override
230     public final boolean supportsColumnAliasing() throws SQLException {
231         return databaseMetaData.supportsColumnAliasing();
232     }
233     
234     @Override
235     public final boolean nullPlusNonNullIsNull() throws SQLException {
236         return databaseMetaData.nullPlusNonNullIsNull();
237     }
238     
239     @Override
240     public final boolean supportsConvert() throws SQLException {
241         return databaseMetaData.supportsConvert();
242     }
243     
244     @Override
245     public final boolean supportsConvert(final int fromType, final int toType) throws SQLException {
246         return databaseMetaData.supportsConvert();
247     }
248     
249     @Override
250     public final boolean supportsTableCorrelationNames() throws SQLException {
251         return databaseMetaData.supportsTableCorrelationNames();
252     }
253     
254     @Override
255     public final boolean supportsDifferentTableCorrelationNames() throws SQLException {
256         return databaseMetaData.supportsDifferentTableCorrelationNames();
257     }
258     
259     @Override
260     public final boolean supportsExpressionsInOrderBy() throws SQLException {
261         return databaseMetaData.supportsExpressionsInOrderBy();
262     }
263     
264     @Override
265     public final boolean supportsOrderByUnrelated() throws SQLException {
266         return databaseMetaData.supportsOrderByUnrelated();
267     }
268     
269     @Override
270     public final boolean supportsGroupBy() throws SQLException {
271         return databaseMetaData.supportsGroupBy();
272     }
273     
274     @Override
275     public final boolean supportsGroupByUnrelated() throws SQLException {
276         return databaseMetaData.supportsGroupByUnrelated();
277     }
278     
279     @Override
280     public final boolean supportsGroupByBeyondSelect() throws SQLException {
281         return databaseMetaData.supportsGroupByBeyondSelect();
282     }
283     
284     @Override
285     public final boolean supportsLikeEscapeClause() throws SQLException {
286         return databaseMetaData.supportsLikeEscapeClause();
287     }
288     
289     @Override
290     public final boolean supportsMultipleResultSets() throws SQLException {
291         return databaseMetaData.supportsMultipleResultSets();
292     }
293     
294     @Override
295     public final boolean supportsMultipleTransactions() throws SQLException {
296         return databaseMetaData.supportsMultipleTransactions();
297     }
298     
299     @Override
300     public final boolean supportsNonNullableColumns() throws SQLException {
301         return databaseMetaData.supportsNonNullableColumns();
302     }
303     
304     @Override
305     public final boolean supportsMinimumSQLGrammar() throws SQLException {
306         return databaseMetaData.supportsMinimumSQLGrammar();
307     }
308     
309     @Override
310     public final boolean supportsCoreSQLGrammar() throws SQLException {
311         return databaseMetaData.supportsCoreSQLGrammar();
312     }
313     
314     @Override
315     public final boolean supportsExtendedSQLGrammar() throws SQLException {
316         return databaseMetaData.supportsExtendedSQLGrammar();
317     }
318     
319     @Override
320     public final boolean supportsANSI92EntryLevelSQL() throws SQLException {
321         return databaseMetaData.supportsANSI92EntryLevelSQL();
322     }
323     
324     @Override
325     public final boolean supportsANSI92IntermediateSQL() throws SQLException {
326         return databaseMetaData.supportsANSI92IntermediateSQL();
327     }
328     
329     @Override
330     public final boolean supportsANSI92FullSQL() throws SQLException {
331         return databaseMetaData.supportsANSI92FullSQL();
332     }
333     
334     @Override
335     public final boolean supportsIntegrityEnhancementFacility() throws SQLException {
336         return databaseMetaData.supportsIntegrityEnhancementFacility();
337     }
338     
339     @Override
340     public final boolean supportsOuterJoins() throws SQLException {
341         return databaseMetaData.supportsOuterJoins();
342     }
343     
344     @Override
345     public final boolean supportsFullOuterJoins() throws SQLException {
346         return databaseMetaData.supportsFullOuterJoins();
347     }
348     
349     @Override
350     public final boolean supportsLimitedOuterJoins() throws SQLException {
351         return databaseMetaData.supportsLimitedOuterJoins();
352     }
353     
354     @Override
355     public final String getSchemaTerm() throws SQLException {
356         return databaseMetaData.getSchemaTerm();
357     }
358     
359     @Override
360     public final String getProcedureTerm() throws SQLException {
361         return databaseMetaData.getProcedureTerm();
362     }
363     
364     @Override
365     public final String getCatalogTerm() throws SQLException {
366         return databaseMetaData.getCatalogTerm();
367     }
368     
369     @Override
370     public final boolean isCatalogAtStart() throws SQLException {
371         return databaseMetaData.isCatalogAtStart();
372     }
373     
374     @Override
375     public final String getCatalogSeparator() throws SQLException {
376         return databaseMetaData.getCatalogSeparator();
377     }
378     
379     @Override
380     public final boolean supportsSchemasInDataManipulation() throws SQLException {
381         return databaseMetaData.supportsSchemasInDataManipulation();
382     }
383     
384     @Override
385     public final boolean supportsSchemasInProcedureCalls() throws SQLException {
386         return databaseMetaData.supportsSchemasInProcedureCalls();
387     }
388     
389     @Override
390     public final boolean supportsSchemasInTableDefinitions() throws SQLException {
391         return databaseMetaData.supportsSchemasInTableDefinitions();
392     }
393     
394     @Override
395     public final boolean supportsSchemasInIndexDefinitions() throws SQLException {
396         return databaseMetaData.supportsSchemasInIndexDefinitions();
397     }
398     
399     @Override
400     public final boolean supportsSchemasInPrivilegeDefinitions() throws SQLException {
401         return databaseMetaData.supportsSchemasInPrivilegeDefinitions();
402     }
403     
404     @Override
405     public final boolean supportsCatalogsInDataManipulation() throws SQLException {
406         return databaseMetaData.supportsCatalogsInDataManipulation();
407     }
408     
409     @Override
410     public final boolean supportsCatalogsInProcedureCalls() throws SQLException {
411         return databaseMetaData.supportsCatalogsInProcedureCalls();
412     }
413     
414     @Override
415     public final boolean supportsCatalogsInTableDefinitions() throws SQLException {
416         return databaseMetaData.supportsCatalogsInTableDefinitions();
417     }
418     
419     @Override
420     public final boolean supportsCatalogsInIndexDefinitions() throws SQLException {
421         return databaseMetaData.supportsCatalogsInIndexDefinitions();
422     }
423     
424     @Override
425     public final boolean supportsCatalogsInPrivilegeDefinitions() throws SQLException {
426         return databaseMetaData.supportsCatalogsInPrivilegeDefinitions();
427     }
428     
429     @Override
430     public final boolean supportsPositionedDelete() throws SQLException {
431         return databaseMetaData.supportsPositionedDelete();
432     }
433     
434     @Override
435     public final boolean supportsPositionedUpdate() throws SQLException {
436         return databaseMetaData.supportsPositionedUpdate();
437     }
438     
439     @Override
440     public final boolean supportsSelectForUpdate() throws SQLException {
441         return databaseMetaData.supportsSelectForUpdate();
442     }
443     
444     @Override
445     public final boolean supportsStoredProcedures() throws SQLException {
446         return databaseMetaData.supportsStoredProcedures();
447     }
448     
449     @Override
450     public final boolean supportsSubqueriesInComparisons() throws SQLException {
451         return databaseMetaData.supportsSubqueriesInComparisons();
452     }
453     
454     @Override
455     public final boolean supportsSubqueriesInExists() throws SQLException {
456         return databaseMetaData.supportsSubqueriesInExists();
457     }
458     
459     @Override
460     public final boolean supportsSubqueriesInIns() throws SQLException {
461         return databaseMetaData.supportsSubqueriesInIns();
462     }
463     
464     @Override
465     public final boolean supportsSubqueriesInQuantifieds() throws SQLException {
466         return databaseMetaData.supportsSubqueriesInQuantifieds();
467     }
468     
469     @Override
470     public final boolean supportsCorrelatedSubqueries() throws SQLException {
471         return databaseMetaData.supportsCorrelatedSubqueries();
472     }
473     
474     @Override
475     public final boolean supportsUnion() throws SQLException {
476         return databaseMetaData.supportsUnion();
477     }
478     
479     @Override
480     public final boolean supportsUnionAll() throws SQLException {
481         return databaseMetaData.supportsUnionAll();
482     }
483     
484     @Override
485     public final boolean supportsOpenCursorsAcrossCommit() throws SQLException {
486         return databaseMetaData.supportsOpenCursorsAcrossCommit();
487     }
488     
489     @Override
490     public final boolean supportsOpenCursorsAcrossRollback() throws SQLException {
491         return databaseMetaData.supportsOpenCursorsAcrossRollback();
492     }
493     
494     @Override
495     public final boolean supportsOpenStatementsAcrossCommit() throws SQLException {
496         return databaseMetaData.supportsOpenStatementsAcrossCommit();
497     }
498     
499     @Override
500     public final boolean supportsOpenStatementsAcrossRollback() throws SQLException {
501         return databaseMetaData.supportsOpenStatementsAcrossRollback();
502     }
503     
504     @Override
505     public final int getMaxBinaryLiteralLength() throws SQLException {
506         return databaseMetaData.getMaxBinaryLiteralLength();
507     }
508     
509     @Override
510     public final int getMaxCharLiteralLength() throws SQLException {
511         return databaseMetaData.getMaxCharLiteralLength();
512     }
513     
514     @Override
515     public final int getMaxColumnNameLength() throws SQLException {
516         return databaseMetaData.getMaxColumnNameLength();
517     }
518     
519     @Override
520     public final int getMaxColumnsInGroupBy() throws SQLException {
521         return databaseMetaData.getMaxColumnsInGroupBy();
522     }
523     
524     @Override
525     public final int getMaxColumnsInIndex() throws SQLException {
526         return databaseMetaData.getMaxColumnsInIndex();
527     }
528     
529     @Override
530     public final int getMaxColumnsInOrderBy() throws SQLException {
531         return databaseMetaData.getMaxColumnsInOrderBy();
532     }
533     
534     @Override
535     public final int getMaxColumnsInSelect() throws SQLException {
536         return databaseMetaData.getMaxColumnsInSelect();
537     }
538     
539     @Override
540     public final int getMaxColumnsInTable() throws SQLException {
541         return databaseMetaData.getMaxColumnsInTable();
542     }
543     
544     @Override
545     public final int getMaxConnections() throws SQLException {
546         return databaseMetaData.getMaxConnections();
547     }
548     
549     @Override
550     public final int getMaxCursorNameLength() throws SQLException {
551         return databaseMetaData.getMaxCursorNameLength();
552     }
553     
554     @Override
555     public final int getMaxIndexLength() throws SQLException {
556         return databaseMetaData.getMaxIndexLength();
557     }
558     
559     @Override
560     public final int getMaxSchemaNameLength() throws SQLException {
561         return databaseMetaData.getMaxSchemaNameLength();
562     }
563     
564     @Override
565     public final int getMaxProcedureNameLength() throws SQLException {
566         return databaseMetaData.getMaxProcedureNameLength();
567     }
568     
569     @Override
570     public final int getMaxCatalogNameLength() throws SQLException {
571         return databaseMetaData.getMaxCatalogNameLength();
572     }
573     
574     @Override
575     public final int getMaxRowSize() throws SQLException {
576         return databaseMetaData.getMaxRowSize();
577     }
578     
579     @Override
580     public final boolean doesMaxRowSizeIncludeBlobs() throws SQLException {
581         return databaseMetaData.doesMaxRowSizeIncludeBlobs();
582     }
583     
584     @Override
585     public final int getMaxStatementLength() throws SQLException {
586         return databaseMetaData.getMaxStatementLength();
587     }
588     
589     @Override
590     public final int getMaxStatements() throws SQLException {
591         return databaseMetaData.getMaxStatements();
592     }
593     
594     @Override
595     public final int getMaxTableNameLength() throws SQLException {
596         return databaseMetaData.getMaxTableNameLength();
597     }
598     
599     @Override
600     public final int getMaxTablesInSelect() throws SQLException {
601         return databaseMetaData.getMaxTablesInSelect();
602     }
603     
604     @Override
605     public final int getMaxUserNameLength() throws SQLException {
606         return databaseMetaData.getMaxUserNameLength();
607     }
608     
609     @Override
610     public final int getDefaultTransactionIsolation() throws SQLException {
611         return databaseMetaData.getDefaultTransactionIsolation();
612     }
613     
614     @Override
615     public final boolean supportsTransactions() throws SQLException {
616         return databaseMetaData.supportsTransactions();
617     }
618     
619     @Override
620     public final boolean supportsDataDefinitionAndDataManipulationTransactions() throws SQLException {
621         return databaseMetaData.supportsDataDefinitionAndDataManipulationTransactions();
622     }
623     
624     @Override
625     public final boolean supportsDataManipulationTransactionsOnly() throws SQLException {
626         return databaseMetaData.supportsDataManipulationTransactionsOnly();
627     }
628     
629     @Override
630     public final boolean dataDefinitionCausesTransactionCommit() throws SQLException {
631         return databaseMetaData.dataDefinitionCausesTransactionCommit();
632     }
633     
634     @Override
635     public final boolean dataDefinitionIgnoredInTransactions() throws SQLException {
636         return databaseMetaData.dataDefinitionIgnoredInTransactions();
637     }
638     
639     @Override
640     public final boolean supportsBatchUpdates() throws SQLException {
641         return databaseMetaData.supportsBatchUpdates();
642     }
643     
644     @Override
645     public final boolean supportsSavepoints() throws SQLException {
646         return databaseMetaData.supportsSavepoints();
647     }
648     
649     @Override
650     public final boolean supportsNamedParameters() throws SQLException {
651         return databaseMetaData.supportsNamedParameters();
652     }
653     
654     @Override
655     public final boolean supportsMultipleOpenResults() throws SQLException {
656         return databaseMetaData.supportsMultipleOpenResults();
657     }
658     
659     @Override
660     public final boolean supportsGetGeneratedKeys() throws SQLException {
661         return databaseMetaData.supportsGetGeneratedKeys();
662     }
663     
664     @Override
665     public final int getResultSetHoldability() throws SQLException {
666         return databaseMetaData.getResultSetHoldability();
667     }
668     
669     @Override
670     public final int getSQLStateType() throws SQLException {
671         return databaseMetaData.getSQLStateType();
672     }
673     
674     @Override
675     public final boolean locatorsUpdateCopy() throws SQLException {
676         return databaseMetaData.locatorsUpdateCopy();
677     }
678     
679     @Override
680     public final boolean supportsStatementPooling() throws SQLException {
681         return databaseMetaData.supportsStatementPooling();
682     }
683     
684     @Override
685     public final boolean supportsStoredFunctionsUsingCallSyntax() throws SQLException {
686         return databaseMetaData.supportsStoredFunctionsUsingCallSyntax();
687     }
688     
689     @Override
690     public final boolean autoCommitFailureClosesAllResultSets() throws SQLException {
691         return databaseMetaData.autoCommitFailureClosesAllResultSets();
692     }
693     
694     @Override
695     public final RowIdLifetime getRowIdLifetime() throws SQLException {
696         return databaseMetaData.getRowIdLifetime();
697     }
698     
699     @Override
700     public final boolean generatedKeyAlwaysReturned() throws SQLException {
701         return databaseMetaData.generatedKeyAlwaysReturned();
702     }
703     
704     @Override
705     public final boolean ownInsertsAreVisible(final int type) {
706         return true;
707     }
708     
709     @Override
710     public final boolean ownUpdatesAreVisible(final int type) {
711         return true;
712     }
713     
714     @Override
715     public final boolean ownDeletesAreVisible(final int type) {
716         return true;
717     }
718     
719     @Override
720     public final boolean othersInsertsAreVisible(final int type) {
721         return true;
722     }
723     
724     @Override
725     public final boolean othersUpdatesAreVisible(final int type) {
726         return true;
727     }
728     
729     @Override
730     public final boolean othersDeletesAreVisible(final int type) {
731         return true;
732     }
733     
734     @Override
735     public final boolean insertsAreDetected(final int type) {
736         return true;
737     }
738     
739     @Override
740     public final boolean updatesAreDetected(final int type) {
741         return true;
742     }
743     
744     @Override
745     public final boolean deletesAreDetected(final int type) {
746         return true;
747     }
748     
749     @Override
750     public final boolean supportsResultSetType(final int type) {
751         return true;
752     }
753     
754     @Override
755     public final boolean supportsResultSetConcurrency(final int type, final int concurrency) {
756         return true;
757     }
758     
759     @Override
760     public final boolean supportsResultSetHoldability(final int holdability) {
761         return true;
762     }
763     
764     @Override
765     public final boolean supportsTransactionIsolationLevel(final int level) {
766         return true;
767     }
768 }