/** * {@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; }
(getTableServiceParameters.isDisableOnReadMetadataIntercetor()) ? userMetadataService.getDefinitionMetadata(name) : userMetadataService.getDefinitionMetadataWithInterceptor(name, GetMetadataInterceptorParameters.builder().hasMetadata(tableInternal).build()); definitionMetadata.ifPresent(table::setDefinitionMetadata);