ColumnMetadata getColumnMetadata(boolean hidden) { return new ColumnMetadata(columnName, type, comment, hidden); } }
ColumnMetadata getColumnMetadata(boolean hidden) { return new ColumnMetadata(columnName, type, comment, hidden); } }
public ColumnMetadata getColumnMetadata() { return new ColumnMetadata(columnName, columnType); } }
public TableMetadataBuilder column(String columnName, Type type) { columns.add(new ColumnMetadata(columnName, type)); return this; }
@JsonIgnore public ColumnMetadata getColumnMetadata() { return new ColumnMetadata(name, type, comment, false); }
public ColumnMetadata getColumnMetadata() { Map<String, Object> properties = new HashMap<>(); properties.put("jsonPath", columnJsonPath); properties.put("jsonType", columnJsonType); properties.put("isList", isList); properties.put("ordinalPosition", ordinalPosition); return new ColumnMetadata(columnName, columnType, "", "", false, properties); }
private static List<ColumnMetadata> getOutputTableColumns(RelationPlan plan, Optional<List<Identifier>> columnAliases) { ImmutableList.Builder<ColumnMetadata> columns = ImmutableList.builder(); int aliasPosition = 0; for (Field field : plan.getDescriptor().getVisibleFields()) { String columnName = columnAliases.isPresent() ? columnAliases.get().get(aliasPosition).getValue() : field.getName().get(); columns.add(new ColumnMetadata(columnName, field.getType())); aliasPosition++; } return columns.build(); }
@Override public ColumnMetadata getColumnMetadata(ConnectorSession session, ConnectorTableHandle tableHandle, ColumnHandle columnHandle) { KuduColumnHandle kuduColumnHandle = (KuduColumnHandle) columnHandle; if (kuduColumnHandle.isVirtualRowId()) { return new ColumnMetadata(KuduColumnHandle.ROW_ID, VarbinaryType.VARBINARY, null, true); } else { return kuduColumnHandle.getColumnMetadata(); } }
public ColumnMetadata toColumnMetadata(TypeManager typeManager) { return new ColumnMetadata( name, typeManager.getType(parseTypeSignature(type)), comment, hidden); }
private static ConnectorTableMetadata getTableMetadata(String schemaName, TpchTable<?> tpchTable, ColumnNaming columnNaming) { ImmutableList.Builder<ColumnMetadata> columns = ImmutableList.builder(); for (TpchColumn<? extends TpchEntity> column : tpchTable.getColumns()) { columns.add(new ColumnMetadata(columnNaming.getName(column), getPrestoType(column))); } columns.add(new ColumnMetadata(ROW_NUMBER_COLUMN_NAME, BIGINT, null, true)); SchemaTableName tableName = new SchemaTableName(schemaName, tpchTable.getTableName()); return new ConnectorTableMetadata(tableName, columns.build()); }
private static ConnectorTableMetadata getTableMetadata(String schemaName, Table tpcdsTable) { ImmutableList.Builder<ColumnMetadata> columns = ImmutableList.builder(); for (Column column : tpcdsTable.getColumns()) { columns.add(new ColumnMetadata(column.getName(), getPrestoType(column.getType()))); } SchemaTableName tableName = new SchemaTableName(schemaName, tpcdsTable.getName()); return new ConnectorTableMetadata(tableName, columns.build()); }
@Override public void renameColumn(ConnectorSession session, ConnectorTableHandle tableHandle, ColumnHandle source, String target) { ConnectorTableMetadata tableMetadata = getTableMetadata(session, tableHandle); SchemaTableName tableName = getTableName(tableHandle); ColumnMetadata columnMetadata = getColumnMetadata(session, tableHandle, source); List<ColumnMetadata> columns = new ArrayList<>(tableMetadata.getColumns()); columns.set(columns.indexOf(columnMetadata), new ColumnMetadata(target, columnMetadata.getType(), columnMetadata.getComment(), columnMetadata.isHidden())); tables.put(tableName, new ConnectorTableMetadata(tableName, ImmutableList.copyOf(columns), tableMetadata.getProperties(), tableMetadata.getComment())); }
@Test public void getColumnMetadata() { assertEquals( metadata.getColumnMetadata(SESSION, tableHandle, new JdbcColumnHandle(CONNECTOR_ID, "text", JDBC_VARCHAR, VARCHAR)), new ColumnMetadata("text", VARCHAR)); }
@Test(expectedExceptions = PrestoException.class) public void testCreateTable() { metadata.createTable( SESSION, new ConnectorTableMetadata( new SchemaTableName("example", "foo"), ImmutableList.of(new ColumnMetadata("text", VARCHAR))), false); }
@Override public ConnectorTableMetadata getTableMetadata(ConnectorSession session, ConnectorTableHandle tableHandle) { AtopTableHandle atopTableHandle = (AtopTableHandle) tableHandle; ImmutableList.Builder<ColumnMetadata> columns = ImmutableList.builder(); for (AtopColumn column : atopTableHandle.getTable().getColumns()) { columns.add(new ColumnMetadata(column.getName(), typeManager.getType(column.getType()))); } SchemaTableName schemaTableName = new SchemaTableName(atopTableHandle.getSchema(), atopTableHandle.getTable().getName()); return new ConnectorTableMetadata(schemaTableName, columns.build()); }
@Test(expectedExceptions = PrestoException.class) public void testCreateTable() { metadata.createTable( SESSION, new ConnectorTableMetadata( new SchemaTableName("example", "foo"), ImmutableList.of(new ColumnMetadata("text", createUnboundedVarcharType()))), false); }
@Override public ColumnMetadata getColumnMetadata(ConnectorSession session, ConnectorTableHandle tableHandle, ColumnHandle columnHandle) { TpchColumnHandle tpchColumnHandle = (TpchColumnHandle) columnHandle; return new ColumnMetadata(tpchColumnHandle.getColumnName(), tpchColumnHandle.getType()); }
@Override public Map<SchemaTableName, List<ColumnMetadata>> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix) { return listTables(session, prefix.getSchemaName()).stream() .collect(toImmutableMap(table -> table, table -> IntStream.range(0, 100) .boxed() .map(i -> new ColumnMetadata("column_" + i, createUnboundedVarcharType())) .collect(toImmutableList()))); }
@Test public void getColumnMetadata() { assertEquals(metadata.getColumnMetadata(SESSION, NUMBERS_TABLE_HANDLE, new ExampleColumnHandle(CONNECTOR_ID, "text", createUnboundedVarcharType(), 0)), new ColumnMetadata("text", createUnboundedVarcharType())); // example connector assumes that the table handle and column handle are // properly formed, so it will return a metadata object for any // ExampleTableHandle and ExampleColumnHandle passed in. This is on because // it is not possible for the Presto Metadata system to create the handles // directly. }
private void createDummyTable(SchemaTableName tableName) { try (Transaction transaction = newTransaction()) { ConnectorSession session = newSession(); ConnectorMetadata metadata = transaction.getMetadata(); List<ColumnMetadata> columns = ImmutableList.of(new ColumnMetadata("dummy", createUnboundedVarcharType())); ConnectorTableMetadata tableMetadata = new ConnectorTableMetadata(tableName, columns, createTableProperties(TEXTFILE)); ConnectorOutputTableHandle handle = metadata.beginCreateTable(session, tableMetadata, Optional.empty()); metadata.finishCreateTable(session, handle, ImmutableList.of(), ImmutableList.of()); transaction.commit(); } }