in openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java [413:499]
public void performImport(InputStream is, AtomicInteger progress) throws Exception {
File f = null;
boolean success = false;
try {
progress.set(0);
cleanup();
messageFolderMap.put(INBOX_FOLDER_ID, INBOX_FOLDER_ID);
messageFolderMap.put(SENT_FOLDER_ID, SENT_FOLDER_ID);
messageFolderMap.put(TRASH_FOLDER_ID, TRASH_FOLDER_ID);
f = unzip(is);
BackupVersion ver = getVersion(f);
progress.set(2);
importConfigs(f);
progress.set(7);
importGroups(f);
progress.set(12);
importLdap(f);
progress.set(17);
importOauth(f);
progress.set(22);
importUsers(f);
progress.set(27);
importRooms(f);
progress.set(32);
importRoomGroups(f);
progress.set(37);
importChat(f);
progress.set(42);
importCalendars(f);
progress.set(47);
importAppointments(f);
progress.set(52);
importMeetingMembers(f);
progress.set(57);
importRecordings(f);
progress.set(62);
importPrivateMsgFolders(f);
progress.set(67);
importContacts(f);
progress.set(72);
importPrivateMsgs(f);
progress.set(77);
List<FileItem> files = importFiles(f);
progress.set(82);
importPolls(f);
progress.set(87);
importRoomFiles(f);
progress.set(92);
importExtraMenus(f);
progress.set(95);
log.info("Extra menus import complete, starting copy of files and folders");
/*
* ##################### Import real files and folders
*/
importFolders(f);
progress.set(97);
if (ver.compareTo(BackupVersion.get("4.0.0")) < 0) {
for (FileItem bfi : files) {
if (bfi.isDeleted()) {
continue;
}
if (BaseFileItem.Type.PRESENTATION == bfi.getType()) {
convertOldPresentation(bfi);
fileItemDao.updateBase(bfi);
}
if (BaseFileItem.Type.WML_FILE == bfi.getType()) {
convertWb(bfi);
}
}
}
log.info("File explorer item import complete");
success = true;
} finally {
if (f != null) {
log.info("Clearing temp files ...");
FileUtils.deleteDirectory(f);
}
cleanup();
if (success) {
progress.set(100);
}
}
}