@Override public TableDto hiveToMetacatTable(final QualifiedName name, final Table table) { final TableDto dto = new TableDto(); dto.setSerde(toStorageDto(table.getSd(), table.getOwner())); dto.setAudit(new AuditDto()); dto.setName(name); if (table.isSetCreateTime()) { dto.getAudit().setCreatedDate(epochSecondsToDate(table.getCreateTime())); } dto.setMetadata(table.getParameters()); final List<FieldSchema> nonPartitionColumns = table.getSd().getCols(); final List<FieldSchema> partitionColumns = table.getPartitionKeys(); final List<FieldDto> allFields = Lists.newArrayListWithCapacity(nonPartitionColumns.size() + partitionColumns.size()); nonPartitionColumns.stream() .map(field -> this.hiveToMetacatField(field, false)) .forEachOrdered(allFields::add); partitionColumns.stream() .map(field -> this.hiveToMetacatField(field, true)) .forEachOrdered(allFields::add); dto.setFields(allFields); return dto; }
/** * {@inheritDoc} */ @Override public Optional<TableDto> getOpt(final QualifiedName name, final GetTableServiceParameters tableParameters) { final QualifiedName viewQName = QualifiedName.ofTable(name.getCatalogName(), VIEW_DB_NAME, createViewName(name)); final Optional<TableDto> result = tableService.get(viewQName, tableParameters); // // User definition metadata of the underlying table is returned // if (result.isPresent()) { final TableDto table = result.get(); table.setName(name); final QualifiedName tableName = QualifiedName .ofTable(name.getCatalogName(), name.getDatabaseName(), name.getTableName()); final Optional<ObjectNode> definitionMetadata = userMetadataService.getDefinitionMetadataWithInterceptor(tableName, GetMetadataInterceptorParameters.builder().hasMetadata(table).build()); definitionMetadata.ifPresent( jsonNodes -> userMetadataService.populateMetadata(table, jsonNodes, null)); } return result; }
/** * {@inheritDoc} */ @Override public TableDto hiveToMetacatTable(final QualifiedName name, final Table table) { final TableDto dto = new TableDto(); dto.setSerde(toStorageDto(table.getSd(), table.getOwner())); dto.setAudit(new AuditDto()); dto.setName(name); if (table.isSetCreateTime()) { dto.getAudit().setCreatedDate(epochSecondsToDate(table.getCreateTime())); } dto.setMetadata(table.getParameters()); final List<FieldSchema> nonPartitionColumns = table.getSd().getCols(); final List<FieldSchema> partitionColumns = table.getPartitionKeys(); final List<FieldDto> allFields = Lists.newArrayListWithCapacity(nonPartitionColumns.size() + partitionColumns.size()); nonPartitionColumns.stream() .map(field -> this.hiveToMetacatField(field, false)) .forEachOrdered(allFields::add); partitionColumns.stream() .map(field -> this.hiveToMetacatField(field, true)) .forEachOrdered(allFields::add); dto.setFields(allFields); dto.setView(new ViewDto(table.getViewOriginalText(), table.getViewExpandedText())); return dto; }
/** * {@inheritDoc} */ @Override public TableDto hiveToMetacatTable(final QualifiedName name, final Table table) { final TableDto dto = new TableDto(); dto.setSerde(toStorageDto(table.getSd(), table.getOwner())); dto.setAudit(new AuditDto()); dto.setName(name); if (table.isSetCreateTime()) { dto.getAudit().setCreatedDate(epochSecondsToDate(table.getCreateTime())); } dto.setMetadata(table.getParameters()); final List<FieldSchema> nonPartitionColumns = table.getSd().getCols(); final List<FieldSchema> partitionColumns = table.getPartitionKeys(); final List<FieldDto> allFields = Lists.newArrayListWithCapacity(nonPartitionColumns.size() + partitionColumns.size()); nonPartitionColumns.stream() .map(field -> this.hiveToMetacatField(field, false)) .forEachOrdered(allFields::add); partitionColumns.stream() .map(field -> this.hiveToMetacatField(field, true)) .forEachOrdered(allFields::add); dto.setFields(allFields); dto.setView(new ViewDto(table.getViewOriginalText(), table.getViewExpandedText())); return dto; }
} else if (name.isViewDefinition()) { final TableDto dto = new TableDto(); dto.setName(name); this.eventBus.post(new MetacatDeleteMViewPostEvent(name, metacatRequestContext, this, dto)); } else if (name.isTableDefinition()) { final TableDto dto = new TableDto(); dto.setName(name); this.eventBus.post(new MetacatDeleteTablePostEvent(name, metacatRequestContext, this, dto, false));
t.setName(name); return t; });
} else { table = new TableDto(); table.setName(name);
@Override public TableDto toTableDto(QualifiedName name, String type, TableMetadata ptm) { if ( name == null && type == null && ptm == null ) { return null; } TableDto tableDto = new TableDto(); if ( name != null ) { tableDto.setName( name ); } if ( ptm != null ) { tableDto.setMetadata( toMetadata( ptm.getMetadata() ) ); tableDto.setPartition_keys( toPartitionKeys( ptm.getColumns() ) ); tableDto.setSerde( toStorageDto( ptm.getMetadata() ) ); tableDto.setAudit( toAuditDto( ptm.getMetadata() ) ); tableDto.setFields( toFieldDtos( ptm.getColumns() ) ); } return tableDto; }
/** * {@inheritDoc} */ @Override public TableDto copy(final TableDto tableDto, final QualifiedName targetName) { final QualifiedName databaseName = QualifiedName.ofDatabase(targetName.getCatalogName(), targetName.getDatabaseName()); if (!databaseService.exists(databaseName)) { final DatabaseDto databaseDto = new DatabaseDto(); databaseDto.setName(databaseName); databaseService.create(databaseName, databaseDto); } final TableDto targetTableDto = new TableDto(); targetTableDto.setName(targetName); targetTableDto.setFields(tableDto.getFields()); targetTableDto.setPartition_keys(tableDto.getPartition_keys()); final StorageDto storageDto = tableDto.getSerde(); if (storageDto != null) { final StorageDto targetStorageDto = new StorageDto(); targetStorageDto.setInputFormat(storageDto.getInputFormat()); targetStorageDto.setOwner(storageDto.getOwner()); targetStorageDto.setOutputFormat(storageDto.getOutputFormat()); targetStorageDto.setParameters(storageDto.getParameters()); targetStorageDto.setUri(storageDto.getUri()); targetStorageDto.setSerializationLib(storageDto.getSerializationLib()); targetTableDto.setSerde(targetStorageDto); } create(targetName, targetTableDto); return targetTableDto; }
|| partitionsSaveRequestDto.getDataMetadata() != null) { final TableDto dto = new TableDto(); dto.setName(name); dto.setDefinitionMetadata(partitionsSaveRequestDto.getDefinitionMetadata()); dto.setDataMetadata(partitionsSaveRequestDto.getDataMetadata()); || partitionsSaveRequestDto.getDataMetadata() != null) { final TableDto dto = new TableDto(); dto.setName(name); dto.setDefinitionMetadata(partitionsSaveRequestDto.getDefinitionMetadata()); dto.setDataMetadata(partitionsSaveRequestDto.getDataMetadata());