Script - Exporter
Repository export execution.
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import com.openkm.api.OKMFolder;
import com.openkm.bean.ContentInfo;
import com.openkm.core.Config;
import com.openkm.module.db.stuff.DbSessionManager;
import com.openkm.util.ContextWrapper;
import com.openkm.util.FileLogger;
import com.openkm.util.impexp.HTMLInfoDecorator;
import com.openkm.util.impexp.RepositoryExporter;
OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class);
RepositoryExporter repositoryExporter = ContextWrapper.getContext().getBean(RepositoryExporter.class);
// Configuration parameters
String token = DbSessionManager.getInstance().getSystemToken();
String repoPath = "/okm:root";
String fsPath = "/home/openkm/export";
boolean history = false;
// Start
FileWriter fw = null;
try {
FileLogger.info("LOG_FILE_NAME", "Started");
// Open outputstream
String fileDate = new SimpleDateFormat("yyyyMMdd").format(new Date());
String fileName = Config.LOG_DIR + File.separator + "LOG_FILE_NAME" + "_" + fileDate + ".log";
File file = new File(fileName);
fw = new FileWriter(file);
// Starting the process
ContentInfo cInfo = okmFolder.getContentInfo(token, repoPath);
FileLogger.info("LOG_FILE_NAME",
"Files & directories to export:" + (cInfo.getDocuments() + cInfo.getFolders()));
File dir = new File(fsPath);
repositoryExporter.exportFolder(token, repoPath, dir, history, fw,
new HTMLInfoDecorator((int) cInfo.getDocuments() + (int) cInfo.getFolders()));
FileLogger.info("CrontabRepositoryExporter", "Finished");
} catch (Exception e) {
try {
if (fw != null) {
fw.close();
}
} catch (IOException e1) { // Ignore
}
}