in src/main/java/com/epam/digital/data/platform/geoserver/service/GeoMetadataService.java [39:56]
public void processMetadata() {
repository.deleteGeoMetadata();
var tablesWithGeometry =
catalog.getTables().stream()
.filter(TableUtils::isView)
.filter(TableUtils::isTableContainingGeometryColumn)
.collect(Collectors.toList());
tablesWithGeometry.forEach(table -> {
final String tableNameToGetPk = repository.getTableNameLinkedWithSC(table.getName(),
TableUtils.getColumnWithGeometry(table));
final Optional<Table> tableByName = getTableByName(tableNameToGetPk);
tableByName.ifPresent(
tbl -> repository.saveMetadata(table.getName(), getPrimaryKeyFromTable(tbl)));
});
}