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 parametersString token = DbSessionManager.getInstance().getSystemToken();String repoPath = "/okm:root";String fsPath = "/home/openkm/export";boolean history = false;
// StartFileWriter 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 }}