@Override public RecordCursor cursor(ConnectorTransactionHandle transactionHandle, ConnectorSession connectorSession, TupleDomain<Integer> constraint) { Session session = toSession(transactionHandle, connectorSession); Builder table = InMemoryRecordSet.builder(CATALOG_TABLE); for (Map.Entry<String, ConnectorId> entry : listCatalogs(session, metadata, accessControl).entrySet()) { table.addRow(entry.getKey(), entry.getValue().toString()); } return table.build().cursor(); } }
@Override public RecordCursor cursor(ConnectorTransactionHandle transactionHandle, ConnectorSession connectorSession, TupleDomain<Integer> constraint) { Session session = toSession(transactionHandle, connectorSession); Builder table = InMemoryRecordSet.builder(CATALOG_TABLE); for (Map.Entry<String, ConnectorId> entry : listCatalogs(session, metadata, accessControl).entrySet()) { table.addRow(entry.getKey(), entry.getValue().toString()); } return table.build().cursor(); } }
@Override protected Node visitShowCatalogs(ShowCatalogs node, Void context) { List<Expression> rows = listCatalogs(session, metadata, accessControl).keySet().stream() .map(name -> row(new StringLiteral(name))) .collect(toList()); Optional<Expression> predicate = Optional.empty(); Optional<String> likePattern = node.getLikePattern(); if (likePattern.isPresent()) { predicate = Optional.of(new LikePredicate(identifier("Catalog"), new StringLiteral(likePattern.get()), Optional.empty())); } return simpleQuery( selectList(new AllColumns()), aliased(new Values(rows), "catalogs", ImmutableList.of("Catalog")), predicate, Optional.of(ordering(ascending("Catalog")))); }
@Override public RecordCursor cursor(ConnectorTransactionHandle transactionHandle, ConnectorSession connectorSession, TupleDomain<Integer> constraint) { Session session = toSession(transactionHandle, connectorSession); Builder table = InMemoryRecordSet.builder(METADATA); for (String name : listCatalogs(session, metadata, accessControl).keySet()) { table.addRow(name); } return table.build().cursor(); } }
@Override protected Node visitShowCatalogs(ShowCatalogs node, Void context) { List<Expression> rows = listCatalogs(session, metadata, accessControl).keySet().stream() .map(name -> row(new StringLiteral(name))) .collect(toList()); Optional<Expression> predicate = Optional.empty(); Optional<String> likePattern = node.getLikePattern(); if (likePattern.isPresent()) { predicate = Optional.of(new LikePredicate(identifier("Catalog"), new StringLiteral(likePattern.get()), Optional.empty())); } return simpleQuery( selectList(new AllColumns()), aliased(new Values(rows), "catalogs", ImmutableList.of("Catalog")), predicate, Optional.of(ordering(ascending("Catalog")))); }
@Override public RecordCursor cursor(ConnectorTransactionHandle transactionHandle, ConnectorSession connectorSession, TupleDomain<Integer> constraint) { Session session = toSession(transactionHandle, connectorSession); Builder table = InMemoryRecordSet.builder(METADATA); for (String name : listCatalogs(session, metadata, accessControl).keySet()) { table.addRow(name); } return table.build().cursor(); } }
@Override public RecordCursor cursor(ConnectorTransactionHandle transactionHandle, ConnectorSession connectorSession, TupleDomain<Integer> constraint) { Session session = toSession(transactionHandle, connectorSession); Optional<String> catalogFilter = stringFilter(constraint, 0); Optional<String> schemaFilter = stringFilter(constraint, 1); Optional<String> tableFilter = stringFilter(constraint, 2); Builder table = InMemoryRecordSet.builder(METADATA); for (String catalog : filter(listCatalogs(session, metadata, accessControl).keySet(), catalogFilter)) { QualifiedTablePrefix prefix = FilterUtil.tablePrefix(catalog, schemaFilter, tableFilter); for (Entry<SchemaTableName, List<ColumnMetadata>> entry : listTableColumns(session, metadata, accessControl, prefix).entrySet()) { addColumnRows(table, catalog, entry.getKey(), entry.getValue()); } } return table.build().cursor(); }
@Override public RecordCursor cursor(ConnectorTransactionHandle transactionHandle, ConnectorSession connectorSession, TupleDomain<Integer> constraint) { Session session = toSession(transactionHandle, connectorSession); Optional<String> catalogFilter = stringFilter(constraint, 0); Optional<String> schemaFilter = stringFilter(constraint, 1); Optional<String> tableFilter = stringFilter(constraint, 2); Builder table = InMemoryRecordSet.builder(METADATA); for (String catalog : filter(listCatalogs(session, metadata, accessControl).keySet(), catalogFilter)) { QualifiedTablePrefix prefix = FilterUtil.tablePrefix(catalog, schemaFilter, tableFilter); for (Entry<SchemaTableName, List<ColumnMetadata>> entry : listTableColumns(session, metadata, accessControl, prefix).entrySet()) { addColumnRows(table, catalog, entry.getKey(), entry.getValue()); } } return table.build().cursor(); }
@Override public RecordCursor cursor(ConnectorTransactionHandle transactionHandle, ConnectorSession connectorSession, TupleDomain<Integer> constraint) { Session session = toSession(transactionHandle, connectorSession); Optional<String> catalogFilter = FilterUtil.stringFilter(constraint, 1); Builder table = InMemoryRecordSet.builder(METADATA); for (String catalog : filter(listCatalogs(session, metadata, accessControl).keySet(), catalogFilter)) { for (String schema : listSchemas(session, metadata, accessControl, catalog)) { table.addRow(schema, catalog); } } return table.build().cursor(); } }
@Override public RecordCursor cursor(ConnectorTransactionHandle transactionHandle, ConnectorSession connectorSession, TupleDomain<Integer> constraint) { Session session = toSession(transactionHandle, connectorSession); Optional<String> catalogFilter = FilterUtil.stringFilter(constraint, 1); Builder table = InMemoryRecordSet.builder(METADATA); for (String catalog : filter(listCatalogs(session, metadata, accessControl).keySet(), catalogFilter)) { for (String schema : listSchemas(session, metadata, accessControl, catalog)) { table.addRow(schema, catalog); } } return table.build().cursor(); } }
SortedMap<String, ConnectorId> catalogNames = listCatalogs(session, metadata, accessControl); List<SessionPropertyValue> sessionProperties = metadata.getSessionPropertyManager().getAllSessionProperties(session, catalogNames); for (SessionPropertyValue sessionProperty : sessionProperties) {
SortedMap<String, ConnectorId> catalogNames = listCatalogs(session, metadata, accessControl); List<SessionPropertyValue> sessionProperties = metadata.getSessionPropertyManager().getAllSessionProperties(session, catalogNames); for (SessionPropertyValue sessionProperty : sessionProperties) {
@Override public RecordCursor cursor(ConnectorTransactionHandle transactionHandle, ConnectorSession connectorSession, TupleDomain<Integer> constraint) { Session session = toSession(transactionHandle, connectorSession); Optional<String> catalogFilter = stringFilter(constraint, 0); Optional<String> schemaFilter = stringFilter(constraint, 1); Optional<String> tableFilter = stringFilter(constraint, 2); Optional<String> typeFilter = stringFilter(constraint, 3); Builder table = InMemoryRecordSet.builder(METADATA); for (String catalog : filter(listCatalogs(session, metadata, accessControl).keySet(), catalogFilter)) { QualifiedTablePrefix prefix = tablePrefix(catalog, schemaFilter, tableFilter); if (FilterUtil.emptyOrEquals(typeFilter, "TABLE")) { for (SchemaTableName name : listTables(session, metadata, accessControl, prefix)) { table.addRow(tableRow(catalog, name, "TABLE")); } } if (FilterUtil.emptyOrEquals(typeFilter, "VIEW")) { for (SchemaTableName name : listViews(session, metadata, accessControl, prefix)) { table.addRow(tableRow(catalog, name, "VIEW")); } } } return table.build().cursor(); }
@Override public RecordCursor cursor(ConnectorTransactionHandle transactionHandle, ConnectorSession connectorSession, TupleDomain<Integer> constraint) { Session session = toSession(transactionHandle, connectorSession); Optional<String> catalogFilter = stringFilter(constraint, 0); Optional<String> schemaFilter = stringFilter(constraint, 1); Optional<String> tableFilter = stringFilter(constraint, 2); Optional<String> typeFilter = stringFilter(constraint, 3); Builder table = InMemoryRecordSet.builder(METADATA); for (String catalog : filter(listCatalogs(session, metadata, accessControl).keySet(), catalogFilter)) { QualifiedTablePrefix prefix = tablePrefix(catalog, schemaFilter, tableFilter); if (FilterUtil.emptyOrEquals(typeFilter, "TABLE")) { for (SchemaTableName name : listTables(session, metadata, accessControl, prefix)) { table.addRow(tableRow(catalog, name, "TABLE")); } } if (FilterUtil.emptyOrEquals(typeFilter, "VIEW")) { for (SchemaTableName name : listViews(session, metadata, accessControl, prefix)) { table.addRow(tableRow(catalog, name, "VIEW")); } } } return table.build().cursor(); }