Ejemplo n.º 1
0
  @Override
  public List<QualifiedTableName> listTables(QualifiedTablePrefix prefix) {
    checkNotNull(prefix, "prefix is null");

    String schemaNameOrNull = prefix.getSchemaName().orNull();
    LinkedHashSet<QualifiedTableName> tables = new LinkedHashSet<>();
    for (ConnectorMetadataEntry entry : allConnectorsFor(prefix.getCatalogName())) {
      for (QualifiedTableName tableName :
          transform(
              entry.getMetadata().listTables(schemaNameOrNull),
              convertFromSchemaTableName(prefix.getCatalogName()))) {
        tables.add(tableName);
      }
    }
    return ImmutableList.copyOf(tables);
  }
Ejemplo n.º 2
0
  @Override
  public Map<QualifiedTableName, List<ColumnMetadata>> listTableColumns(
      QualifiedTablePrefix prefix) {
    checkNotNull(prefix, "prefix is null");

    LinkedHashMap<QualifiedTableName, List<ColumnMetadata>> tableColumns = new LinkedHashMap<>();
    for (ConnectorMetadataEntry connectorMetadata : allConnectorsFor(prefix.getCatalogName())) {
      for (Entry<SchemaTableName, List<ColumnMetadata>> entry :
          connectorMetadata
              .getMetadata()
              .listTableColumns(prefix.asSchemaTablePrefix())
              .entrySet()) {
        QualifiedTableName tableName =
            new QualifiedTableName(
                prefix.getCatalogName(),
                entry.getKey().getSchemaName(),
                entry.getKey().getTableName());
        if (!tableColumns.containsKey(tableName)) {
          tableColumns.put(tableName, entry.getValue());
        }
      }
    }
    return ImmutableMap.copyOf(tableColumns);
  }