public List<RemoteFileDesc> getFileDescs() throws DdlException {
        List<RemoteFileDesc> fileDescs = getFileDescsFromHdfs();

        RemoteFileInputFormat format = getFileFormat();
        TextFileFormatDesc textFileFormatDesc = null;
        if (format.equals(RemoteFileInputFormat.TEXTFILE)) {
            textFileFormatDesc = new TextFileFormatDesc(
                    fileProperties.getOrDefault(JSON_KEY_COLUMN_SEPARATOR, "\t"),
                    fileProperties.getOrDefault(JSON_KEY_ROW_DELIMITER, "\n"),
                    fileProperties.getOrDefault(JSON_KEY_COLLECTION_DELIMITER, ","),
                    fileProperties.getOrDefault(JSON_KEY_MAP_DELIMITER, ":")
            );
        }
        if (textFileFormatDesc != null) {
            for (RemoteFileDesc f : fileDescs) {
                f.setTextFileFormatDesc(textFileFormatDesc);
            }
        }
        return fileDescs;
    }
@Test
    public void testAddTextFileFormatDescr() throws Exception {
        class ExtFileTable extends FileTable {
            public ExtFileTable(Map<String, String> properties)
                    throws DdlException {
                super(0, "XX", new ArrayList<>(), properties);
            }

            @Override
            public List<RemoteFileDesc> getFileDescsFromHdfs() throws DdlException {
                List<RemoteFileDesc> fileDescList = new ArrayList<>();
                RemoteFileDesc fileDesc = new RemoteFileDesc("aa", "snappy", 0, 0, null);
                fileDescList.add(fileDesc);
                return fileDescList;
            }
        }

        Map<String, String> properties = new HashMap<String, String>() {
            {
                put(FileTable.JSON_KEY_FILE_PATH, "hdfs://127.0.0.1:10000/hive/");
                put(FileTable.JSON_KEY_COLUMN_SEPARATOR, "XXX");
                put(FileTable.JSON_KEY_ROW_DELIMITER, "YYY");
                put(FileTable.JSON_KEY_COLLECTION_DELIMITER, "ZZZ");
                put(FileTable.JSON_KEY_MAP_DELIMITER, "MMM");
                put(FileTable.JSON_KEY_FORMAT, "text");
            }
        };

        FileTable f = new ExtFileTable(properties);
        List<RemoteFileDesc> files = f.getFileDescs();
        Assert.assertEquals(files.size(), 1);
        TextFileFormatDesc desc = files.get(0).getTextFileFormatDesc();
        Assert.assertEquals(desc.getFieldDelim(), "XXX");
        Assert.assertEquals(desc.getLineDelim(), "YYY");
        Assert.assertEquals(desc.getCollectionDelim(), "ZZZ");
        Assert.assertEquals(desc.getMapkeyDelim(), "MMM");
    }