public boolean loadFromHolderToFile(Map<String, String> tmpHolder) {
        readWriteLock.writeLock().lock();
        boolean isSuccess = false;
        try {
            File sourceFile = new File(getFilePath());
            File targetFile = new File(getNextBackupFileName());
            File tmpNewFile = new File(getFileName() + ".tmp");

            if (sourceFile.exists()) {
                FileUtils.copyFile(sourceFile, targetFile);
            }

            List<String> lines = getStringListFromHolder(tmpHolder);
            FileUtils.writeLines(tmpNewFile, lines);

            FileUtils.copyFile(tmpNewFile, sourceFile);
            tmpNewFile.delete();
            isSuccess = true;
            getFileChanged().set(true);
        } catch (Exception ex) {
            LOG.error("error in writing file", ex);
        } finally {
            readWriteLock.writeLock().unlock();
        }
        return isSuccess;
    }
load from holder
@param tmpHolder
@return
inlong-audit/audit-common/src/main/java/org/apache/inlong/audit/file/holder/PropertiesConfigHolder.java