99import com .databricks .jdbc .client .impl .helper .CommandName ;
1010import com .databricks .jdbc .client .impl .helper .MetadataResultSetBuilder ;
1111import com .databricks .jdbc .commons .LogLevel ;
12- import com .databricks .jdbc .commons .MetricsList ;
1312import com .databricks .jdbc .commons .util .LoggingUtil ;
14- import com .databricks .jdbc .core .*;
1513import com .databricks .jdbc .core .DatabricksResultSet ;
1614import com .databricks .jdbc .core .IDatabricksSession ;
1715import com .databricks .jdbc .core .ImmutableSqlParameter ;
18- import com .databricks .jdbc .driver .IDatabricksConnectionContext ;
1916import java .sql .ResultSet ;
2017import java .sql .SQLException ;
21- import java .util .*;
2218import java .util .HashMap ;
2319import java .util .Optional ;
2420
@@ -43,38 +39,22 @@ public DatabricksResultSet listTypeInfo(IDatabricksSession session) {
4339
4440 @ Override
4541 public DatabricksResultSet listCatalogs (IDatabricksSession session ) throws SQLException {
46- long startTime = System .currentTimeMillis ();
4742 CommandBuilder commandBuilder = new CommandBuilder (session );
4843 String SQL = commandBuilder .getSQLString (CommandName .LIST_CATALOGS );
4944 LoggingUtil .log (LogLevel .DEBUG , String .format ("SQL command to fetch catalogs: {%s}" , SQL ));
50- DatabricksResultSet resultSet =
51- MetadataResultSetBuilder .getCatalogsResult (
52- getResultSet (SQL , session , StatementType .METADATA ));
53- IDatabricksConnectionContext connectionContext = session .getConnectionContext ();
54- connectionContext
55- .getMetricsExporter ()
56- .record (
57- MetricsList .LIST_CATALOGS_METADATA_SEA .name (), System .currentTimeMillis () - startTime );
58- return resultSet ;
45+ return MetadataResultSetBuilder .getCatalogsResult (
46+ getResultSet (SQL , session , StatementType .METADATA ));
5947 }
6048
6149 @ Override
6250 public DatabricksResultSet listSchemas (
6351 IDatabricksSession session , String catalog , String schemaNamePattern ) throws SQLException {
64- long startTime = System .currentTimeMillis ();
6552 CommandBuilder commandBuilder =
6653 new CommandBuilder (catalog , session ).setSchemaPattern (schemaNamePattern );
6754 String SQL = commandBuilder .getSQLString (CommandName .LIST_SCHEMAS );
6855 LoggingUtil .log (LogLevel .DEBUG , String .format ("SQL command to fetch schemas: {%s}" , SQL ));
69- DatabricksResultSet resultSet =
70- MetadataResultSetBuilder .getSchemasResult (
71- getResultSet (SQL , session , StatementType .METADATA ), catalog );
72- IDatabricksConnectionContext connectionContext = session .getConnectionContext ();
73- connectionContext
74- .getMetricsExporter ()
75- .record (
76- MetricsList .LIST_SCHEMAS_METADATA_SEA .name (), System .currentTimeMillis () - startTime );
77- return resultSet ;
56+ return MetadataResultSetBuilder .getSchemasResult (
57+ getResultSet (SQL , session , StatementType .METADATA ), catalog );
7858 }
7959
8060 @ Override
@@ -89,36 +69,19 @@ public DatabricksResultSet listTables(
8969 Optional .ofNullable (tableTypes )
9070 .filter (types -> types .length > 0 )
9171 .orElse (DEFAULT_TABLE_TYPES );
92- long startTime = System .currentTimeMillis ();
9372 CommandBuilder commandBuilder =
9473 new CommandBuilder (catalog , session )
9574 .setSchemaPattern (schemaNamePattern )
9675 .setTablePattern (tableNamePattern );
9776 String SQL = commandBuilder .getSQLString (CommandName .LIST_TABLES );
98- DatabricksResultSet resultSet =
99- MetadataResultSetBuilder .getTablesResult (
100- getResultSet (SQL , session , StatementType .METADATA ), tableTypes );
101- IDatabricksConnectionContext connectionContext = session .getConnectionContext ();
102- connectionContext
103- .getMetricsExporter ()
104- .record (
105- MetricsList .LIST_TABLES_METADATA_SEA .name (), System .currentTimeMillis () - startTime );
106- return resultSet ;
77+ return MetadataResultSetBuilder .getTablesResult (
78+ getResultSet (SQL , session , StatementType .METADATA ), tableTypes );
10779 }
10880
10981 @ Override
11082 public DatabricksResultSet listTableTypes (IDatabricksSession session ) throws SQLException {
111-
11283 LoggingUtil .log (LogLevel .DEBUG , "Returning list of table types." );
113- long startTime = System .currentTimeMillis ();
114- DatabricksResultSet resultSet = MetadataResultSetBuilder .getTableTypesResult ();
115- IDatabricksConnectionContext connectionContext = session .getConnectionContext ();
116- connectionContext
117- .getMetricsExporter ()
118- .record (
119- MetricsList .LIST_TABLE_TYPES_METADATA_SEA .name (),
120- System .currentTimeMillis () - startTime );
121- return resultSet ;
84+ return MetadataResultSetBuilder .getTableTypesResult ();
12285 }
12386
12487 @ Override
@@ -129,21 +92,14 @@ public DatabricksResultSet listColumns(
12992 String tableNamePattern ,
13093 String columnNamePattern )
13194 throws SQLException {
132- long startTime = System .currentTimeMillis ();
13395 CommandBuilder commandBuilder =
13496 new CommandBuilder (catalog , session )
13597 .setSchemaPattern (schemaNamePattern )
13698 .setTablePattern (tableNamePattern )
13799 .setColumnPattern (columnNamePattern );
138100 String SQL = commandBuilder .getSQLString (CommandName .LIST_COLUMNS );
139- DatabricksResultSet resultSet =
140- MetadataResultSetBuilder .getColumnsResult (getResultSet (SQL , session , StatementType .QUERY ));
141- IDatabricksConnectionContext connectionContext = session .getConnectionContext ();
142- connectionContext
143- .getMetricsExporter ()
144- .record (
145- MetricsList .LIST_COLUMNS_METADATA_SEA .name (), System .currentTimeMillis () - startTime );
146- return resultSet ;
101+ return MetadataResultSetBuilder .getColumnsResult (
102+ getResultSet (SQL , session , StatementType .QUERY ));
147103 }
148104
149105 @ Override
@@ -153,42 +109,25 @@ public DatabricksResultSet listFunctions(
153109 String schemaNamePattern ,
154110 String functionNamePattern )
155111 throws SQLException {
156- long startTime = System .currentTimeMillis ();
157112 CommandBuilder commandBuilder =
158113 new CommandBuilder (catalog , session )
159114 .setSchemaPattern (schemaNamePattern )
160115 .setFunctionPattern (functionNamePattern );
161116 String SQL = commandBuilder .getSQLString (CommandName .LIST_FUNCTIONS );
162117 LoggingUtil .log (LogLevel .DEBUG , String .format ("SQL command to fetch functions: {%s}" , SQL ));
163- DatabricksResultSet resultSet =
164- MetadataResultSetBuilder .getFunctionsResult (
165- getResultSet (SQL , session , StatementType .QUERY ), catalog );
166- IDatabricksConnectionContext connectionContext = session .getConnectionContext ();
167- connectionContext
168- .getMetricsExporter ()
169- .record (
170- MetricsList .LIST_FUNCTIONS_METADATA_SEA .name (), System .currentTimeMillis () - startTime );
171- return resultSet ;
118+ return MetadataResultSetBuilder .getFunctionsResult (
119+ getResultSet (SQL , session , StatementType .QUERY ), catalog );
172120 }
173121
174122 @ Override
175123 public DatabricksResultSet listPrimaryKeys (
176124 IDatabricksSession session , String catalog , String schema , String table ) throws SQLException {
177- long startTime = System .currentTimeMillis ();
178125 CommandBuilder commandBuilder =
179126 new CommandBuilder (catalog , session ).setSchema (schema ).setTable (table );
180127 String SQL = commandBuilder .getSQLString (CommandName .LIST_PRIMARY_KEYS );
181128 LoggingUtil .log (LogLevel .DEBUG , String .format ("SQL command to fetch primary keys: {%s}" , SQL ));
182- DatabricksResultSet resultSet =
183- MetadataResultSetBuilder .getPrimaryKeysResult (
184- getResultSet (SQL , session , StatementType .METADATA ));
185- IDatabricksConnectionContext connectionContext = session .getConnectionContext ();
186- connectionContext
187- .getMetricsExporter ()
188- .record (
189- MetricsList .LIST_PRIMARY_KEYS_METADATA_SEA .name (),
190- System .currentTimeMillis () - startTime );
191- return resultSet ;
129+ return MetadataResultSetBuilder .getPrimaryKeysResult (
130+ getResultSet (SQL , session , StatementType .METADATA ));
192131 }
193132
194133 private ResultSet getResultSet (
0 commit comments