TableIdentifier toIdentifier(ObjectPath path) {
        String objectName = path.getObjectName();
        List<String> tableName = Splitter.on('$').splitToList(objectName);

        if (tableName.size() == 1) {
            return TableIdentifier.of(
                    appendLevel(baseNamespace, path.getDatabaseName()), path.getObjectName());
        } else if (tableName.size() == 2 && MetadataTableType.from(tableName.get(1)) != null) {
            return TableIdentifier.of(
                    appendLevel(appendLevel(baseNamespace, path.getDatabaseName()), tableName.get(0)),
                    tableName.get(1));
        } else {
            throw new IllegalArgumentException("Illegal table name:" + objectName);
        }
    }
Append a new level to the base namespace
inlong-sort/sort-flink/sort-flink-v1.15/sort-connectors/iceberg/src/main/java/org/apache/inlong/sort/iceberg/FlinkCatalog.java