You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2012/07/31 07:34:07 UTC
svn commit: r1367412 [4/4] - in /incubator/openmeetings/trunk/singlewebapp:
./ src/org/openmeetings/app/backup/ src/org/openmeetings/app/data/basic/dao/
src/org/openmeetings/app/data/calendar/daos/
src/org/openmeetings/app/data/conference/ src/org/open...
Modified: incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/servlet/outputhandler/BackupImportController.java
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/servlet/outputhandler/BackupImportController.java?rev=1367412&r1=1367411&r2=1367412&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/servlet/outputhandler/BackupImportController.java (original)
+++ incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/servlet/outputhandler/BackupImportController.java Tue Jul 31 05:34:05 2012
@@ -19,31 +19,48 @@
package org.openmeetings.servlet.outputhandler;
import java.io.File;
+import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
+import java.io.StringReader;
+import java.io.StringWriter;
+import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
import java.util.LinkedHashMap;
-import java.util.LinkedList;
import java.util.List;
-import java.util.regex.Pattern;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.transform.Transformer;
+import javax.xml.transform.TransformerFactory;
+import javax.xml.transform.dom.DOMSource;
+import javax.xml.transform.stream.StreamResult;
import org.apache.commons.transaction.util.FileHelper;
-import org.dom4j.Document;
-import org.dom4j.Element;
-import org.dom4j.io.SAXReader;
import org.openmeetings.app.OpenmeetingsVariables;
+import org.openmeetings.app.backup.AppointmentCategoryConverter;
+import org.openmeetings.app.backup.AppointmentConverter;
+import org.openmeetings.app.backup.AppointmentReminderTypeConverter;
+import org.openmeetings.app.backup.DateConverter;
+import org.openmeetings.app.backup.IntegerTransform;
+import org.openmeetings.app.backup.LongTransform;
+import org.openmeetings.app.backup.OmTimeZoneConverter;
+import org.openmeetings.app.backup.OrganisationConverter;
+import org.openmeetings.app.backup.PollTypeConverter;
+import org.openmeetings.app.backup.RoomConverter;
+import org.openmeetings.app.backup.RoomTypeConverter;
+import org.openmeetings.app.backup.StateConverter;
+import org.openmeetings.app.backup.UserConverter;
import org.openmeetings.app.data.basic.Configurationmanagement;
import org.openmeetings.app.data.basic.dao.LdapConfigDaoImpl;
import org.openmeetings.app.data.basic.dao.OmTimeZoneDaoImpl;
+import org.openmeetings.app.data.basic.dao.ServerDaoImpl;
import org.openmeetings.app.data.calendar.daos.AppointmentCategoryDaoImpl;
import org.openmeetings.app.data.calendar.daos.AppointmentDaoImpl;
import org.openmeetings.app.data.calendar.daos.AppointmentReminderTypDaoImpl;
@@ -60,20 +77,24 @@ import org.openmeetings.app.data.user.da
import org.openmeetings.app.data.user.dao.PrivateMessagesDaoImpl;
import org.openmeetings.app.data.user.dao.UserContactsDaoImpl;
import org.openmeetings.app.data.user.dao.UsersDaoImpl;
+import org.openmeetings.app.persistence.beans.adresses.Adresses;
import org.openmeetings.app.persistence.beans.adresses.States;
import org.openmeetings.app.persistence.beans.basic.Configuration;
import org.openmeetings.app.persistence.beans.basic.LdapConfig;
import org.openmeetings.app.persistence.beans.basic.OmTimeZone;
+import org.openmeetings.app.persistence.beans.basic.Server;
import org.openmeetings.app.persistence.beans.calendar.Appointment;
+import org.openmeetings.app.persistence.beans.calendar.AppointmentCategory;
+import org.openmeetings.app.persistence.beans.calendar.AppointmentReminderTyps;
import org.openmeetings.app.persistence.beans.calendar.MeetingMember;
import org.openmeetings.app.persistence.beans.domain.Organisation;
-import org.openmeetings.app.persistence.beans.domain.Organisation_Users;
import org.openmeetings.app.persistence.beans.files.FileExplorerItem;
import org.openmeetings.app.persistence.beans.flvrecord.FlvRecording;
import org.openmeetings.app.persistence.beans.flvrecord.FlvRecordingMetaData;
+import org.openmeetings.app.persistence.beans.poll.PollType;
import org.openmeetings.app.persistence.beans.poll.RoomPoll;
-import org.openmeetings.app.persistence.beans.poll.RoomPollAnswers;
import org.openmeetings.app.persistence.beans.rooms.RoomModerators;
+import org.openmeetings.app.persistence.beans.rooms.RoomTypes;
import org.openmeetings.app.persistence.beans.rooms.Rooms;
import org.openmeetings.app.persistence.beans.rooms.Rooms_Organisation;
import org.openmeetings.app.persistence.beans.sip.asterisk.AsteriskSipUsers;
@@ -89,12 +110,23 @@ import org.openmeetings.app.sip.api.impl
import org.openmeetings.utils.OmFileHelper;
import org.openmeetings.utils.math.CalendarPatterns;
import org.red5.logging.Red5LoggerFactory;
+import org.simpleframework.xml.Serializer;
+import org.simpleframework.xml.convert.Registry;
+import org.simpleframework.xml.convert.RegistryStrategy;
+import org.simpleframework.xml.core.Persister;
+import org.simpleframework.xml.strategy.Strategy;
+import org.simpleframework.xml.stream.InputNode;
+import org.simpleframework.xml.stream.NodeBuilder;
+import org.simpleframework.xml.transform.RegistryMatcher;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.multipart.MultipartFile;
+import org.w3c.dom.Document;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
@Controller
public class BackupImportController extends AbstractUploadController {
@@ -144,6 +176,8 @@ public class BackupImportController exte
private Configurationmanagement cfgManagement;
@Autowired
private AsteriskDAOImpl asteriskDAOImpl;
+ @Autowired
+ private ServerDaoImpl serverDaoImpl;
private final HashMap<Long, Long> usersMap = new HashMap<Long, Long>();
private final HashMap<Long, Long> organisationsMap = new HashMap<Long, Long>();
@@ -151,10 +185,9 @@ public class BackupImportController exte
private final HashMap<Long, Long> roomsMap = new HashMap<Long, Long>();
private final HashMap<Long, Long> messageFoldersMap = new HashMap<Long, Long>();
private final HashMap<Long, Long> userContactsMap = new HashMap<Long, Long>();
- private final HashMap<Long, Long> fileExplorerItemsMap = new HashMap<Long, Long>();
private enum Maps {
- USERS, ORGANISATIONS, APPOINTMENTS, ROOMS, MESSAGEFOLDERS, USERCONTACTS, FILEEXPLORERITEMS
+ USERS, ORGANISATIONS, APPOINTMENTS, ROOMS, MESSAGEFOLDERS, USERCONTACTS
};
public void performImport(InputStream is) throws Exception {
@@ -226,210 +259,368 @@ public class BackupImportController exte
/*
* ##################### Import Organizations
*/
- File orgFile = new File(f, "organizations.xml");
- if (!orgFile.exists()) {
- throw new Exception("organizations.xml missing");
+ Serializer simpleSerializer = new Persister();
+ {
+ List<Organisation> list = readList(simpleSerializer, f, "organizations.xml", "organisations", Organisation.class);
+ for (Organisation o : list) {
+ long oldId = o.getOrganisation_id();
+ o.setOrganisation_id(null);
+ Long newId = organisationmanagement.addOrganisationObj(o);
+ organisationsMap.put(oldId, newId);
+ }
}
- this.importOrganizsations(orgFile);
log.info("Organizations import complete, starting user import");
-
/*
* ##################### Import Users
*/
- File userFile = new File(f, "users.xml");
- if (!userFile.exists()) {
- throw new Exception("users.xml missing");
+ {
+ Registry registry = new Registry();
+ Strategy strategy = new RegistryStrategy(registry);
+ Serializer serializer = new Persister(strategy);
+
+ registry.bind(Organisation.class, new OrganisationConverter(organisationmanagement, organisationsMap));
+ //registry.bind(UserSipData.class, UserSipDataConverter.class);
+ registry.bind(OmTimeZone.class, new OmTimeZoneConverter(omTimeZoneDaoImpl));
+ registry.bind(States.class, new StateConverter(statemanagement));
+ registry.bind(Date.class, DateConverter.class);
+
+ List<Users> list = readUserList(serializer, f, "users.xml", "users");
+ for (Users u : list) {
+ OmTimeZone tz = u.getOmTimeZone();
+ if (tz.getJname() == null) {
+ String jNameTimeZone = cfgManagement.getConfValue("default.timezone", String.class, "Europe/Berlin");
+ OmTimeZone omTimeZone = omTimeZoneDaoImpl.getOmTimeZone(jNameTimeZone);
+ u.setOmTimeZone(omTimeZone);
+ u.setForceTimeZoneCheck(true);
+ } else {
+ u.setForceTimeZoneCheck(false);
+ }
+
+ u.setStarttime(new Date());
+ long userId = u.getUser_id();
+ u.setUser_id(null);
+ Long actualNewUserId = userManagement.addUserBackup(u);
+ usersMap.put(userId, actualNewUserId);
+ Server us = u.getServer();
+ if (us != null) {
+ Server s = serverDaoImpl.getServerByAddress(us.getAddress());
+ serverDaoImpl.saveServer(s.getId(), us.getName(), us.getAddress());
+ }
+ }
}
- this.importUsers(userFile);
log.info("Users import complete, starting room import");
-
/*
* ##################### Import Rooms
*/
- File roomFile = new File(f, "rooms.xml");
- if (!roomFile.exists()) {
- throw new Exception("rooms.xml missing");
+ {
+ Registry registry = new Registry();
+ Strategy strategy = new RegistryStrategy(registry);
+ RegistryMatcher matcher = new RegistryMatcher(); //TODO need to be removed in the later versions
+ Serializer serializer = new Persister(strategy, matcher);
+
+ matcher.bind(Long.class, LongTransform.class);
+ matcher.bind(Integer.class, IntegerTransform.class);
+ registry.bind(Users.class, new UserConverter(userManagement, usersMap));
+ registry.bind(RoomTypes.class, new RoomTypeConverter(roommanagement));
+
+ List<Rooms> list = readList(serializer, f, "rooms.xml", "rooms", Rooms.class);
+ for (Rooms r : list) {
+ Long roomId = r.getRooms_id();
+
+ // We need to reset this as openJPA reject to store them
+ // otherwise
+ r.setRooms_id(null);
+
+ Long newRoomId = roommanagement.addRoom(r);
+ roomsMap.put(roomId, newRoomId);
+
+ for (RoomModerators rm : r.getModerators()) {
+ roomModeratorsDao.addRoomModeratorByObj(rm);
+ }
+ Server us = r.getServer();
+ if (us != null) {
+ Server s = serverDaoImpl.getServerByAddress(us.getAddress());
+ serverDaoImpl.saveServer(s.getId(), us.getName(), us.getAddress());
+ }
+ }
}
- this.importRooms(roomFile);
log.info("Room import complete, starting room organizations import");
-
/*
* ##################### Import Room Organisations
*/
- File orgRoomListFile = new File(f, "rooms_organisation.xml");
- if (!orgRoomListFile.exists()) {
- throw new Exception("rooms_organisation.xml missing");
+ {
+ Registry registry = new Registry();
+ Strategy strategy = new RegistryStrategy(registry);
+ Serializer serializer = new Persister(strategy);
+
+ registry.bind(Organisation.class, new OrganisationConverter(organisationmanagement, organisationsMap));
+ registry.bind(Rooms.class, new RoomConverter(roommanagement, roomsMap));
+
+ List<Rooms_Organisation> list = readList(serializer, f, "rooms_organisation.xml", "room_organisations", Rooms_Organisation.class);
+ for (Rooms_Organisation ro : list) {
+ // We need to reset this as openJPA reject to store them otherwise
+ ro.setRooms_organisation_id(null);
+ roommanagement.addRoomOrganisation(ro);
+ }
}
- this.importOrgRooms(orgRoomListFile);
log.info("Room organizations import complete, starting appointement import");
-
/*
* ##################### Import Appointements
*/
- File appointementListFile = new File(f, "appointements.xml");
- if (!appointementListFile.exists()) {
- throw new Exception("appointements.xml missing");
+ {
+ Registry registry = new Registry();
+ Strategy strategy = new RegistryStrategy(registry);
+ Serializer serializer = new Persister(strategy);
+
+ registry.bind(AppointmentCategory.class, new AppointmentCategoryConverter(appointmentCategoryDaoImpl));
+ registry.bind(Users.class, new UserConverter(userManagement, usersMap));
+ registry.bind(AppointmentReminderTyps.class, new AppointmentReminderTypeConverter(appointmentReminderTypDaoImpl));
+ registry.bind(Rooms.class, new RoomConverter(roommanagement, roomsMap));
+ registry.bind(Date.class, DateConverter.class);
+
+ List<Appointment> list = readList(serializer, f, "appointements.xml", "appointments", Appointment.class);
+ for (Appointment a : list) {
+ Long appId = a.getAppointmentId();
+
+ // We need to reset this as openJPA reject to store them otherwise
+ a.setAppointmentId(null);
+
+ Long newAppId = appointmentDao.addAppointmentObj(a);
+ appointmentsMap.put(appId, newAppId);
+ }
}
- this.importAppointements(appointementListFile);
log.info("Appointement import complete, starting meeting members import");
-
/*
* ##################### Import MeetingMembers
*
* Reminder Invitations will be NOT send!
*/
- File meetingmembersListFile = new File(f, "meetingmembers.xml");
- if (!meetingmembersListFile.exists()) {
- throw new Exception("meetingmembersListFile missing");
+ {
+ Registry registry = new Registry();
+ Strategy strategy = new RegistryStrategy(registry);
+ Serializer serializer = new Persister(strategy);
+
+ registry.bind(Users.class, new UserConverter(userManagement, usersMap));
+ registry.bind(Appointment.class, new AppointmentConverter(appointmentDao, appointmentsMap));
+
+ List<MeetingMember> list = readList(serializer, f, "meetingmembers.xml", "meetingmembers", MeetingMember.class);
+ for (MeetingMember ma : list) {
+ // We need to reset this as openJPA reject to store them otherwise
+ ma.setMeetingMemberId(null);
+ meetingMemberDao.addMeetingMemberByObject(ma);
+ }
}
- this.importMeetingmembers(meetingmembersListFile);
log.info("Meeting members import complete, starting ldap config import");
-
/*
* ##################### Import LDAP Configs
*/
- File ldapConfigListFile = new File(f, "ldapconfigs.xml");
- if (!ldapConfigListFile.exists()) {
- log.debug("meetingmembersListFile missing");
- // throw new Exception
- // ("meetingmembersListFile missing");
- } else {
- this.importLdapConfig(ldapConfigListFile);
+ {
+ List<LdapConfig> list = readList(simpleSerializer, f, "ldapconfigs.xml", "ldapconfigs", LdapConfig.class, true);
+ for (LdapConfig c : list) {
+ ldapConfigDao.addLdapConfigByObject(c);
+ }
}
log.info("Ldap config import complete, starting recordings import");
-
/*
* ##################### Import Recordings
*/
- File flvRecordingsListFile = new File(f, "flvRecordings.xml");
- if (!flvRecordingsListFile.exists()) {
- log.debug("flvRecordingsListFile missing");
- // throw new Exception
- // ("meetingmembersListFile missing");
- } else {
- this.importFlvRecordings(flvRecordingsListFile);
+ {
+ Registry registry = new Registry();
+ Strategy strategy = new RegistryStrategy(registry);
+ RegistryMatcher matcher = new RegistryMatcher(); //TODO need to be removed in the later versions
+ Serializer serializer = new Persister(strategy, matcher);
+
+ matcher.bind(Long.class, LongTransform.class);
+ matcher.bind(Integer.class, IntegerTransform.class);
+ registry.bind(Date.class, DateConverter.class);
+
+ List<FlvRecording> list = readList(serializer, f, "flvRecordings.xml", "flvrecordings", FlvRecording.class, true);
+ for (FlvRecording fr : list) {
+ fr.setFlvRecordingId(0);
+ for (FlvRecordingMetaData meta : fr.getFlvRecordingMetaData()) {
+ meta.setFlvRecordingMetaDataId(0);
+ meta.setFlvRecording(fr);
+ }
+ flvRecordingDao.addFlvRecordingObj(fr);
+ }
}
log.info("FLVrecording import complete, starting private message folder import");
-
/*
* ##################### Import Private Message Folders
*/
- File privateMessageFoldersFile = new File(f, "privateMessageFolder.xml");
- if (!privateMessageFoldersFile.exists()) {
- log.debug("privateMessageFoldersFile missing");
- // throw new Exception
- // ("meetingmembersListFile missing");
- } else {
- this.importPrivateMessageFolders(privateMessageFoldersFile);
+ {
+ List<PrivateMessageFolder> list = readList(simpleSerializer, f, "privateMessageFolder.xml"
+ , "privatemessagefolders", PrivateMessageFolder.class, true);
+ for (PrivateMessageFolder p : list) {
+ Long folderId = p.getPrivateMessageFolderId();
+ PrivateMessageFolder storedFolder = privateMessageFolderDao
+ .getPrivateMessageFolderById(folderId);
+ if (storedFolder == null) {
+ p.setPrivateMessageFolderId(0);
+ Long newFolderId = privateMessageFolderDao
+ .addPrivateMessageFolderObj(p);
+ messageFoldersMap.put(folderId, newFolderId);
+ }
+ }
}
- log.info("Private message folder import complete, starting private message import");
-
+ log.info("Private message folder import complete, starting user contacts import");
/*
- * ##################### Import Private Messages
+ * ##################### Import User Contacts
*/
- File privateMessagesFile = new File(f, "privateMessages.xml");
- if (!privateMessagesFile.exists()) {
- log.debug("privateMessagesFile missing");
- // throw new Exception
- // ("meetingmembersListFile missing");
- } else {
- this.importPrivateMessages(privateMessagesFile);
- }
+ {
+ Registry registry = new Registry();
+ Strategy strategy = new RegistryStrategy(registry);
+ Serializer serializer = new Persister(strategy);
+
+ registry.bind(Users.class, new UserConverter(userManagement, usersMap));
+
+ List<UserContacts> list = readList(serializer, f, "userContacts.xml", "usercontacts", UserContacts.class, true);
+ for (UserContacts uc : list) {
+ Long ucId = uc.getUserContactId();
+ UserContacts storedUC = userContactsDao.getUserContacts(ucId);
- log.info("Private message import complete, starting usercontact import");
+ if (storedUC == null) {
+ uc.setUserContactId(0);
+ Long newId = userContactsDao.addUserContactObj(uc);
+ userContactsMap.put(ucId, newId);
+ }
+ }
+ }
+ log.info("Usercontact import complete, starting private messages item import");
/*
- * ##################### Import User Contacts
+ * ##################### Import Private Messages
*/
- File userContactsFile = new File(f, "userContacts.xml");
- if (!userContactsFile.exists()) {
- log.debug("userContactsFile missing");
- // throw new Exception
- // ("meetingmembersListFile missing");
- } else {
- this.importUserContacts(userContactsFile);
+ {
+ Registry registry = new Registry();
+ Strategy strategy = new RegistryStrategy(registry);
+ Serializer serializer = new Persister(strategy);
+
+ registry.bind(Users.class, new UserConverter(userManagement, usersMap));
+ registry.bind(Rooms.class, new RoomConverter(roommanagement, roomsMap));
+ registry.bind(Date.class, DateConverter.class);
+
+ List<PrivateMessages> list = readList(serializer, f, "privateMessages.xml", "privatemessages", PrivateMessages.class, true);
+ for (PrivateMessages p : list) {
+ p.setPrivateMessageId(0);
+ p.setPrivateMessageFolderId(
+ getNewId(p.getPrivateMessageFolderId(), Maps.MESSAGEFOLDERS));
+ p.setUserContactId(
+ getNewId(p.getUserContactId(), Maps.USERCONTACTS));
+
+ privateMessagesDao.addPrivateMessageObj(p);
+ }
}
- log.info("Usercontact import complete, starting file explorer item import");
-
+ log.info("Private message import complete, starting file explorer item import");
/*
* ##################### Import File-Explorer Items
*/
- File fileExplorerListFile = new File(f, "fileExplorerItems.xml");
- if (!fileExplorerListFile.exists()) {
- log.debug("fileExplorerListFile missing");
- // throw new Exception
- // ("meetingmembersListFile missing");
- } else {
- this.importFileExplorerItems(fileExplorerListFile);
+ {
+ Registry registry = new Registry();
+ Strategy strategy = new RegistryStrategy(registry);
+ RegistryMatcher matcher = new RegistryMatcher(); //TODO need to be removed in the later versions
+ Serializer serializer = new Persister(strategy, matcher);
+
+ matcher.bind(Long.class, LongTransform.class);
+ matcher.bind(Integer.class, IntegerTransform.class);
+ registry.bind(Date.class, DateConverter.class);
+
+ List<FileExplorerItem> list = readList(serializer, f, "fileExplorerItems.xml", "fileExplorerItems", FileExplorerItem.class, true);
+ for (FileExplorerItem fileExplorerItem : list) {
+ // We need to reset this as openJPA reject to store them otherwise
+ fileExplorerItem.setFileExplorerItemId(0);
+ fileExplorerItemDao.addFileExplorerItem(fileExplorerItem);
+ }
}
log.info("File explorer item import complete, starting file poll import");
-
/*
* ##################### Import Room Polls
*/
- File roomPollListFile = new File(f, "roompolls.xml");
- if (!roomPollListFile.exists()) {
- log.debug("roomPollListFile missing");
- } else {
- this.importRoomPolls(roomPollListFile);
+ {
+ Registry registry = new Registry();
+ Strategy strategy = new RegistryStrategy(registry);
+ Serializer serializer = new Persister(strategy);
+
+ registry.bind(Users.class, new UserConverter(userManagement, usersMap));
+ registry.bind(Rooms.class, new RoomConverter(roommanagement, roomsMap));
+ registry.bind(PollType.class, new PollTypeConverter(pollManagement));
+ registry.bind(Date.class, DateConverter.class);
+
+ List<RoomPoll> list = readList(serializer, f, "roompolls.xml", "roompolls", RoomPoll.class, true);
+ for (RoomPoll rp : list) {
+ pollManagement.savePollBackup(rp);
+ }
}
+
log.info("Poll import complete, starting configs import");
-
/*
* ##################### Import Configs
*/
- File configsFile = new File(f, "configs.xml");
- if (!configsFile.exists()) {
- log.debug("configsFile missing");
- } else {
- importConfigs(configsFile);
+ {
+ Registry registry = new Registry();
+ Strategy strategy = new RegistryStrategy(registry);
+ RegistryMatcher matcher = new RegistryMatcher(); //TODO need to be removed in the later versions
+ Serializer serializer = new Persister(strategy, matcher);
+
+ matcher.bind(Long.class, LongTransform.class);
+ registry.bind(Date.class, DateConverter.class);
+
+ List<Configuration> list = readList(serializer, f, "configs.xml", "configs", Configuration.class, true);
+ for (Configuration c : list) {
+ Configuration cfg = cfgManagement.getConfKey(3L, c.getConf_key());
+ c.setConfiguration_id(cfg == null ? null : cfg.getConfiguration_id());
+ cfgManagement.updateConfig(c);
+ }
}
+
log.info("Configs import complete, starting asteriskSipUsersFile import");
-
/*
* ##################### Import AsteriskSipUsers
*/
- File asteriskSipUsersFile = new File(f, "asterisksipusers.xml");
- if (!asteriskSipUsersFile.exists()) {
- log.debug("asteriskSipUsersFile missing");
- } else {
- importAsteriskSipUsers(asteriskSipUsersFile);
+ {
+ List<AsteriskSipUsers> list = readList(simpleSerializer, f, "asterisksipusers.xml"
+ , "asterisksipusers", AsteriskSipUsers.class, true);
+ for (AsteriskSipUsers au : list) {
+ asteriskDAOImpl.saveAsteriskSipUsers(au);
+ }
}
+
log.info("AsteriskSipUsers import complete, starting extensions import");
-
/*
* ##################### Import Extensions
*/
- File extensionsFile = new File(f, "extensions.xml");
- if (!extensionsFile.exists()) {
- log.debug("extensionsFile missing");
- } else {
- importExtensions(extensionsFile);
+ {
+ List<Extensions> list = readList(simpleSerializer, f, "extensions.xml"
+ , "extensions", Extensions.class, true);
+ for (Extensions e : list) {
+ asteriskDAOImpl.saveExtensions(e);
+ }
}
- log.info("Extensions import complete, starting members import");
-
+
+ log.info("Extensions import complete, starting MeetMe members import");
/*
- * ##################### Import Extensions
+ * ##################### Import MeetMe
*/
- File membersFile = new File(f, "members.xml");
- if (!membersFile.exists()) {
- log.debug("membersFile missing");
- } else {
- importMembers(membersFile);
+ {
+ List<MeetMe> list = readList(simpleSerializer, f, "members.xml"
+ , "members", MeetMe.class, true);
+ for (MeetMe mm : list) {
+ asteriskDAOImpl.saveMeetMe(mm);
+ }
}
- log.info("Members import complete, starting copy of files and folders");
+ log.info("Members import complete, starting copy of files and folders");
/*
* ##################### Import real files and folders
*/
@@ -472,1888 +663,115 @@ public class BackupImportController exte
return;
}
- private void importRoomPolls(File roomPollListFile) {
- try {
-
- List<RoomPoll> roomPolls = this.getRoomPolls(roomPollListFile);
-
- for (RoomPoll roomPoll : roomPolls) {
-
- pollManagement.savePollBackup(roomPoll);
-
- }
-
- } catch (Exception err) {
- log.error("[getRoomPolls]", err);
- }
-
- }
-
- private void importMembers(File membersFile) throws Exception {
- SAXReader reader = new SAXReader();
- Document document = reader.read(membersFile);
-
- Element root = document.getRootElement();
- Element extensions = root.element("members");
- for (@SuppressWarnings("unchecked")
- Iterator<Element> iter = extensions.elementIterator("member"); iter.hasNext();) {
-
- Element extensionElem = iter.next();
- String confno = extensionElem.elementText("confno");
- try {
- MeetMe meetMe = new MeetMe();
- meetMe.setConfno(unformatString(extensionElem
- .element("confno").getText()));
- meetMe.setPin(unformatString(extensionElem
- .element("pin").getText()));
- meetMe.setAdminpin(unformatString(extensionElem
- .element("adminpin").getText()));
- meetMe.setMembers(importIntegerType(unformatString(extensionElem
- .element("members").getText())));
-
- asteriskDAOImpl.saveMeetMe(meetMe);
- } catch (Exception e) {
- log.debug("failed to add/update members confno: " + confno, e);
- }
- }
- }
-
- private void importExtensions(File extensionsFile) throws Exception {
- SAXReader reader = new SAXReader();
- Document document = reader.read(extensionsFile);
-
- Element root = document.getRootElement();
- Element extensions = root.element("extensions");
- for (@SuppressWarnings("unchecked")
- Iterator<Element> iter = extensions.elementIterator("extension"); iter.hasNext();) {
-
- Element extensionElem = iter.next();
- String id = extensionElem.elementText("id");
- try {
- Extensions extension = new Extensions();
- //the primary key must be null for new objects if its an auto-increment
- extension.setExten(unformatString(extensionElem
- .element("exten").getText()));
- extension.setPriority(importIntegerType(unformatString(extensionElem
- .element("priority").getText())));
- extension.setApp(unformatString(extensionElem
- .element("app").getText()));
- extension.setAppdata(unformatString(extensionElem
- .element("appdata").getText()));
-
- asteriskDAOImpl.saveExtensions(extension);
- } catch (Exception e) {
- log.debug("failed to add/update extensions id: " + id, e);
- }
- }
- }
-
- private void importAsteriskSipUsers(File asteriskSipUsersFile) throws Exception {
- SAXReader reader = new SAXReader();
- Document document = reader.read(asteriskSipUsersFile);
-
- Element root = document.getRootElement();
- Element asterisksipusers = root.element("asterisksipusers");
- for (@SuppressWarnings("unchecked")
- Iterator<Element> iter = asterisksipusers.elementIterator("asterisksipuser"); iter.hasNext();) {
-
- Element asterisksipuserElem = iter.next();
-
- String id = asterisksipuserElem.elementText("id");
-
- try {
-
- AsteriskSipUsers asterisksipuser = new AsteriskSipUsers();
- //the primary key must be null for new objects if its an auto-increment
- asterisksipuser.setAccountcode(unformatString(asterisksipuserElem
- .element("accountcode").getText()));
- asterisksipuser.setDisallow(unformatString(asterisksipuserElem
- .element("disallow").getText()));
- asterisksipuser.setAllow(unformatString(asterisksipuserElem
- .element("allow").getText()));
- asterisksipuser.setAllowoverlap(unformatString(asterisksipuserElem
- .element("allowoverlap").getText()));
- asterisksipuser.setAllowsubscribe(unformatString(asterisksipuserElem
- .element("allowsubscribe").getText()));
- asterisksipuser.setAllowtransfer(unformatString(asterisksipuserElem
- .element("allowtransfer").getText()));
- asterisksipuser.setAmaflags(unformatString(asterisksipuserElem
- .element("amaflags").getText()));
- asterisksipuser.setAutoframing(unformatString(asterisksipuserElem
- .element("autoframing").getText()));
- asterisksipuser.setAuth(unformatString(asterisksipuserElem
- .element("auth").getText()));
- asterisksipuser.setBuggymwi(unformatString(asterisksipuserElem
- .element("buggymwi").getText()));
- asterisksipuser.setCallgroup(unformatString(asterisksipuserElem
- .element("callgroup").getText()));
- asterisksipuser.setCallerid(unformatString(asterisksipuserElem
- .element("callerid").getText()));
- asterisksipuser.setCid_number(unformatString(asterisksipuserElem
- .element("cid_number").getText()));
- asterisksipuser.setFullname(unformatString(asterisksipuserElem
- .element("fullname").getText()));
- asterisksipuser.setCallingpres(unformatString(asterisksipuserElem
- .element("callingpres").getText()));
- asterisksipuser.setCanreinvite(unformatString(asterisksipuserElem
- .element("canreinvite").getText()));
- asterisksipuser.setContext(unformatString(asterisksipuserElem
- .element("context").getText()));
- asterisksipuser.setDefaultip(unformatString(asterisksipuserElem
- .element("defaultip").getText()));
- asterisksipuser.setDtmfmode(unformatString(asterisksipuserElem
- .element("dtmfmode").getText()));
- asterisksipuser.setFromuser(unformatString(asterisksipuserElem
- .element("fromuser").getText()));
- asterisksipuser.setFromdomain(unformatString(asterisksipuserElem
- .element("fromdomain").getText()));
- asterisksipuser.setFullcontact(unformatString(asterisksipuserElem
- .element("fullcontact").getText()));
- asterisksipuser.setG726nonstandard(unformatString(asterisksipuserElem
- .element("g726nonstandard").getText()));
- asterisksipuser.setHost(unformatString(asterisksipuserElem
- .element("host").getText()));
- asterisksipuser.setInsecure(unformatString(asterisksipuserElem
- .element("insecure").getText()));
- asterisksipuser.setIpaddr(unformatString(asterisksipuserElem
- .element("ipaddr").getText()));
- asterisksipuser.setLanguage(unformatString(asterisksipuserElem
- .element("language").getText()));
- asterisksipuser.setLastms(unformatString(asterisksipuserElem
- .element("lastms").getText()));
- asterisksipuser.setMailbox(unformatString(asterisksipuserElem
- .element("mailbox").getText()));
- asterisksipuser.setMaxcallbitrate(importIntegerType(unformatString(asterisksipuserElem
- .element("maxcallbitrate").getText())));
- asterisksipuser.setMohsuggest(unformatString(asterisksipuserElem
- .element("mohsuggest").getText()));
- asterisksipuser.setMd5secret(unformatString(asterisksipuserElem
- .element("md5secret").getText()));
- asterisksipuser.setMusiconhold(unformatString(asterisksipuserElem
- .element("musiconhold").getText()));
- asterisksipuser.setName(unformatString(asterisksipuserElem
- .element("name").getText()));
- asterisksipuser.setNat(unformatString(asterisksipuserElem
- .element("nat").getText()));
- asterisksipuser.setOutboundproxy(unformatString(asterisksipuserElem
- .element("outboundproxy").getText()));
- asterisksipuser.setDeny(unformatString(asterisksipuserElem
- .element("deny").getText()));
- asterisksipuser.setPermit(unformatString(asterisksipuserElem
- .element("permit").getText()));
- asterisksipuser.setPickupgroup(unformatString(asterisksipuserElem
- .element("pickupgroup").getText()));
- asterisksipuser.setPort(unformatString(asterisksipuserElem
- .element("port").getText()));
- asterisksipuser.setProgressinband(unformatString(asterisksipuserElem
- .element("progressinband").getText()));
- asterisksipuser.setPromiscredir(unformatString(asterisksipuserElem
- .element("promiscredir").getText()));
- asterisksipuser.setQualify(unformatString(asterisksipuserElem
- .element("qualify").getText()));
- asterisksipuser.setRegexten(unformatString(asterisksipuserElem
- .element("regexten").getText()));
- asterisksipuser.setRegseconds(importIntegerType(unformatString(asterisksipuserElem
- .element("regseconds").getText())));
- asterisksipuser.setRfc2833compensate(unformatString(asterisksipuserElem
- .element("rfc2833compensate").getText()));
- asterisksipuser.setRtptimeout(unformatString(asterisksipuserElem
- .element("rtptimeout").getText()));
- asterisksipuser.setRtpholdtimeout(unformatString(asterisksipuserElem
- .element("rtpholdtimeout").getText()));
- asterisksipuser.setSecret(unformatString(asterisksipuserElem
- .element("secret").getText()));
- asterisksipuser.setSendrpid(unformatString(asterisksipuserElem
- .element("sendrpid").getText()));
- asterisksipuser.setSetvar(unformatString(asterisksipuserElem
- .element("setvar").getText()));
- asterisksipuser.setSubscribecontext(unformatString(asterisksipuserElem
- .element("subscribecontext").getText()));
- asterisksipuser.setSubscribemwi(unformatString(asterisksipuserElem
- .element("subscribemwi").getText()));
- asterisksipuser.setT38pt_udptl(unformatString(asterisksipuserElem
- .element("t38pt_udptl").getText()));
- asterisksipuser.setTrustrpid(unformatString(asterisksipuserElem
- .element("trustrpid").getText()));
- asterisksipuser.setType(unformatString(asterisksipuserElem
- .element("type").getText()));
- asterisksipuser.setUseclientcode(unformatString(asterisksipuserElem
- .element("useclientcode").getText()));
- asterisksipuser.setUsername(unformatString(asterisksipuserElem
- .element("username").getText()));
- asterisksipuser.setUsereqphone(unformatString(asterisksipuserElem
- .element("usereqphone").getText()));
- asterisksipuser.setVideosupport(unformatString(asterisksipuserElem
- .element("videosupport").getText()));
- asterisksipuser.setVmexten(unformatString(asterisksipuserElem
- .element("vmexten").getText()));
-
- asteriskDAOImpl.saveAsteriskSipUsers(asterisksipuser);
-
- } catch (Exception e) {
- log.debug("failed to add/update asterisksipuser id: "+id, e);
- }
- }
+ private <T> List<T> readList(Serializer ser, File baseDir, String fileName, String listNodeName, Class<T> clazz) throws Exception {
+ return readList(ser, baseDir, fileName, listNodeName, clazz, false);
}
- private void importConfigs(File configsFile) throws Exception {
- SAXReader reader = new SAXReader();
- Document document = reader.read(configsFile);
-
- Element root = document.getRootElement();
- Element configs = root.element("configs");
- for (@SuppressWarnings("unchecked")
- Iterator<Element> iter = configs.elementIterator("config"); iter.hasNext();) {
-
- Element cfgElem = iter.next();
- String key = cfgElem.elementText("key");
- try {
- Configuration cfg = cfgManagement.getConfKey(3L, key);
- if (cfg == null) {
- cfg = new Configuration();
- cfg.setConf_key(key);
+ private <T> List<T> readList(Serializer ser, File baseDir, String fileName, String listNodeName, Class<T> clazz, boolean notThow) throws Exception {
+ File xml = new File(baseDir, fileName);
+ if (!xml.exists()) {
+ final String msg = fileName + " missing";
+ if (notThow) {
+ log.debug(msg);
+ } else {
+ throw new Exception(msg);
+ }
+ }
+ List<T> list = new ArrayList<T>();
+ InputNode root = NodeBuilder.read(new FileInputStream(xml));
+ InputNode listNode = root.getNext();
+ if (listNodeName.equals(listNode.getName())) {
+ InputNode item = listNode.getNext();
+ while (item != null) {
+ try {
+ T o = ser.read(clazz, item, false);
+ list.add(o);
+ } catch (Exception e) {
+ log.debug("Exception While reading node of type: " + clazz, e);
}
- cfg.setConf_value(cfgElem.elementText("value"));
- cfg.setUpdatetime(new Date());
- cfg.setDeleted(Boolean.valueOf(cfgElem.elementText("deleted")));
- cfg.setComment(cfgElem.elementText("comment"));
- cfgManagement.updateConfig(cfg);
- } catch (Exception e) {
- log.debug("failed to add/update configuration: " + key, e);
+ item = listNode.getNext();
}
}
+ return list;
}
- @SuppressWarnings("unchecked")
- private List<RoomPoll> getRoomPolls(File roomPollListFile) throws Exception {
-
- List<RoomPoll> roomPollList = new LinkedList<RoomPoll>();
-
- SAXReader reader = new SAXReader();
- Document document = reader.read(roomPollListFile);
-
- Element root = document.getRootElement();
-
- for (Iterator<Element> i = root.elementIterator(); i.hasNext();) {
-
- Element itemObject = i.next();
-
- if (itemObject.getName().equals("roompolls")) {
-
- for (Iterator<Element> innerIter = itemObject
- .elementIterator("roompoll"); innerIter.hasNext();) {
-
- Element roompollObject = innerIter.next();
-
- String pollname = unformatString(roompollObject.element(
- "pollname").getText());
- String pollquestion = unformatString(roompollObject
- .element("pollquestion").getText());
- Boolean archived = importBooleanType(unformatString(roompollObject
- .element("archived").getText()));
- Date created = CalendarPatterns
- .parseImportDate(unformatString(roompollObject
- .element("created").getText()));
- Long createdbyuserid = importLongType(unformatString(roompollObject
- .element("createdbyuserid").getText()));
- Long polltypeid = importLongType(unformatString(roompollObject
- .element("polltypeid").getText()));
- Long roomid = importLongType(unformatString(roompollObject
- .element("roomid").getText()));
-
- RoomPoll roomPoll = new RoomPoll();
- roomPoll.setPollName(pollname);
- roomPoll.setPollQuestion(pollquestion);
- if (archived != null) {
- roomPoll.setArchived(archived.booleanValue());
- } else {
- roomPoll.setArchived(true);
- }
- roomPoll.setCreated(created);
- roomPoll.setCreatedBy(usersDao.getUser(getNewId(createdbyuserid, Maps.USERS)));
- roomPoll.setPollType(pollManagement.getPollType(polltypeid));
- roomPoll.setRoom(roommanagement.getRoomById(getNewId(roomid, Maps.ROOMS)));
- roomPoll.setRoomPollAnswerList(new LinkedList<RoomPollAnswers>());
-
- Element roompollanswers = roompollObject
- .element("roompollanswers");
-
- for (Iterator<Element> innerIterAnswers = roompollanswers
- .elementIterator("roompollanswer"); innerIterAnswers
- .hasNext();) {
-
- Element innerIterAnswerObj = innerIterAnswers.next();
-
- Integer pointlist = importIntegerType(unformatString(innerIterAnswerObj
- .element("pointlist").getText()));
- Boolean answer = importBooleanType(unformatString(innerIterAnswerObj
- .element("answer").getText()));
- Date votedate = CalendarPatterns
- .parseImportDate(unformatString(innerIterAnswerObj
- .element("votedate").getText()));
- Long voteduserid = importLongType(unformatString(innerIterAnswerObj
- .element("voteduserid").getText()));
-
- RoomPollAnswers roomPollAnswers = new RoomPollAnswers();
- roomPollAnswers.setPointList(pointlist);
- roomPollAnswers.setAnswer(answer);
- roomPollAnswers.setVoteDate(votedate);
- roomPollAnswers.setVotedUser(usersDao.getUser(getNewId(voteduserid, Maps.USERS)));
-
- roomPoll.getRoomPollAnswerList().add(roomPollAnswers);
- }
-
- roomPollList.add(roomPoll);
-
- }
-
- }
-
- }
-
- return roomPollList;
-
- }
-
- private void importUsers(File userFile) throws Exception {
-
- this.getUsersByXML(userFile);
-
- }
-
- @SuppressWarnings("unchecked")
- private void getUsersByXML(File userFile) {
- try {
-
- SAXReader reader = new SAXReader();
- Document document = reader.read(userFile);
-
- Element root = document.getRootElement();
-
- for (Iterator<Element> i = root.elementIterator(); i.hasNext();) {
- Element itemObject = i.next();
- if (itemObject.getName().equals("users")) {
-
- for (Iterator<Element> innerIter = itemObject
- .elementIterator("user"); innerIter.hasNext();) {
-
- Element itemUsers = innerIter.next();
-
- Users us = new Users();
- Long userId = Long.valueOf(unformatString(itemUsers
- .element("user_id").getText()));
-
- us.setAge(CalendarPatterns
- .parseImportDate(unformatString(itemUsers
- .element("age").getText())));
- us.setAvailible(importIntegerType(unformatString(itemUsers
- .element("availible").getText())));
- us.setDeleted(Boolean.valueOf(unformatString(itemUsers.element(
- "deleted").getText())));
- us.setFirstname(unformatString(itemUsers.element(
- "firstname").getText()));
- us.setLastname(unformatString(itemUsers.element(
- "lastname").getText()));
- us.setLogin(unformatString(itemUsers.element("login")
- .getText()));
- us.setPassword(unformatString(itemUsers.element("pass")
- .getText()));
- us.setDeleted(Boolean.valueOf(itemUsers.element("deleted").getText()));
-
- if (itemUsers.element("activatehash") != null) {
- us.setActivatehash(unformatString(itemUsers
- .element("activatehash").getText()));
- } else {
- us.setActivatehash("");
- }
- if (itemUsers.element("externalUserType") != null) {
- us.setExternalUserType(unformatString(itemUsers
- .element("externalUserType").getText()));
- } else {
- us.setExternalUserType("");
- }
- if (itemUsers.element("externalUserId") != null) {
- us.setExternalUserId(unformatString(itemUsers
- .element("externalUserId").getText()));
- } else {
- us.setExternalUserId(null);
- }
- if (itemUsers.element("resethash") != null) {
- us.setResethash(unformatString(itemUsers.element(
- "resethash").getText()));
- } else {
- us.setResethash(null);
- }
- if (itemUsers.element("userOffers") != null) {
- us.setUserOffers(unformatString(itemUsers.element(
- "userOffers").getText()));
- } else {
- us.setUserOffers("");
- }
- if (itemUsers.element("userSearchs") != null) {
- us.setUserSearchs(unformatString(itemUsers.element(
- "userSearchs").getText()));
- } else {
- us.setUserSearchs("");
- }
- if (itemUsers.element("forceTimeZoneCheck") != null) {
- us.setForceTimeZoneCheck(importBooleanType(unformatString(itemUsers
- .element("forceTimeZoneCheck").getText())));
- } else {
- us.setForceTimeZoneCheck(null);
- }
- if (itemUsers.element("lasttrans") != null) {
- us.setLasttrans(importLongType(unformatString(itemUsers
- .element("lasttrans").getText())));
- } else {
- us.setLasttrans(null);
- }
- if (itemUsers.element("showContactData") != null) {
- us.setShowContactData(importBooleanType(unformatString(itemUsers
- .element("showContactData").getText())));
- } else {
- us.setShowContactData(null);
- }
- if (itemUsers.element("showContactDataToContacts") != null) {
- us.setShowContactDataToContacts(importBooleanType(unformatString(itemUsers
- .element("showContactDataToContacts")
- .getText())));
- } else {
- us.setShowContactDataToContacts(null);
- }
-
- us.setPictureuri(unformatString(itemUsers.element(
- "pictureuri").getText()));
- if (unformatString(
- itemUsers.element("language_id").getText())
- .length() > 0)
- us.setLanguage_id(Long
- .valueOf(unformatString(itemUsers.element(
- "language_id").getText())));
-
- us.setStatus(importIntegerType(unformatString(itemUsers
- .element("status").getText())));
- us.setRegdate(CalendarPatterns
- .parseImportDate(unformatString(itemUsers
- .element("regdate").getText())));
- us.setTitle_id(importIntegerType(unformatString(itemUsers
- .element("title_id").getText())));
- us.setLevel_id(importLongType(unformatString(itemUsers
- .element("level_id").getText())));
-
- // UserSIP Data
- if (itemUsers.element("sip_username") != null
- && itemUsers.element("sip_userpass") != null
- && itemUsers.element("sip_authid") != null) {
- UserSipData userSipData = new UserSipData();
- userSipData.setUsername(unformatString(itemUsers
- .element("sip_username").getText()));
- userSipData.setUsername(unformatString(itemUsers
- .element("sip_userpass").getText()));
- userSipData.setUsername(unformatString(itemUsers
- .element("sip_authid").getText()));
- us.setUserSipData(userSipData);
- }
-
- String additionalname = unformatString(itemUsers
- .element("additionalname").getText());
- String comment = unformatString(itemUsers.element(
- "comment").getText());
- // A User can not have a deleted Adress, you cannot
- // delete the
- // Adress of an User
- // String deleted = u.getAdresses().getDeleted()
- // Phone Number not done yet
- String fax = unformatString(itemUsers.element("fax")
- .getText());
- Long state_id = importLongType(unformatString(itemUsers
- .element("state_id").getText()));
- String street = unformatString(itemUsers.element(
- "street").getText());
- String town = unformatString(itemUsers.element("town")
- .getText());
- String zip = unformatString(itemUsers.element("zip")
- .getText());
-
- if (itemUsers.element("omTimeZone") != null) {
- OmTimeZone omTimeZone = omTimeZoneDaoImpl
- .getOmTimeZone(unformatString(itemUsers
- .element("omTimeZone").getText()));
-
- us.setOmTimeZone(omTimeZone);
- us.setForceTimeZoneCheck(false);
- } else {
-
- String jNameTimeZone = cfgManagement.getConfValue("default.timezone", String.class, "Europe/Berlin");
- OmTimeZone omTimeZone = omTimeZoneDaoImpl
- .getOmTimeZone(jNameTimeZone);
- us.setOmTimeZone(omTimeZone);
- us.setForceTimeZoneCheck(true);
- }
-
- String phone = "";
- if (itemUsers.element("phone") != null) {
- phone = unformatString(itemUsers.element("phone")
- .getText());
- }
-
- String email = "";
- if (itemUsers.element("mail") != null) {
- email = unformatString(itemUsers.element("mail")
- .getText());
- }
-
- States st = statemanagement.getStateById(state_id);
- if (st == null) {
- st = statemanagement.getStateById(1L);
- }
-
- us.setAdresses(street, zip, town,
- st, additionalname, comment, fax,
- phone, email);
-
- HashSet<Organisation_Users> orgUsers = new HashSet<Organisation_Users>();
-
- for (Iterator<Element> organisationsIterator = itemUsers
- .elementIterator("organisations"); organisationsIterator
- .hasNext();) {
-
- Element organisations = organisationsIterator
- .next();
-
- for (Iterator<Element> organisationIterator = organisations
- .elementIterator("user_organisation"); organisationIterator
- .hasNext();) {
-
- Element organisationObject = organisationIterator
- .next();
-
- Long organisation_id = getNewId(
- importLongType(unformatString(organisationObject
- .element("organisation_id")
- .getText())),
- Maps.ORGANISATIONS);
- Boolean isModerator = importBooleanType(unformatString(organisationObject
- .element("isModerator").getText()));
- boolean deleted = Boolean.valueOf(unformatString(organisationObject
- .element("deleted").getText()));
-
- Organisation_Users orgUser = new Organisation_Users();
- orgUser.setOrganisation(organisationmanagement
- .getOrganisationByIdBackup(organisation_id));
- orgUser.setIsModerator(isModerator);
- orgUser.setStarttime(new Date());
- orgUser.setDeleted(deleted);
-
- orgUsers.add(orgUser);
-
- }
-
- }
-
- log.debug("Import User ID " + userId);
- us.setStarttime(new Date());
- Long actualNewUserId = userManagement.addUserBackup(us);
- usersMap.put(userId, actualNewUserId);
-
- for (Iterator<Organisation_Users> orgUserIterator = orgUsers
- .iterator(); orgUserIterator.hasNext();) {
-
- Organisation_Users organisationUsers = orgUserIterator
- .next();
-
- organisationmanagement
- .addOrganisationUserObj(actualNewUserId, organisationUsers);
-
- }
-
- }
-
- }
- }
-
- } catch (Exception err) {
- log.error("[getUsersByXML]", err);
- }
- }
-
- private void importFlvRecordings(File flvRecordingsListFile)
- throws Exception {
-
- List<FlvRecording> flvRecordings = this
- .getFlvRecordings(flvRecordingsListFile);
-
- for (FlvRecording flvRecording : flvRecordings) {
-
- Long flvRecordingId = flvRecordingDao
- .addFlvRecordingObj(flvRecording);
-
- for (FlvRecordingMetaData flvRecordingMetaData : flvRecording
- .getFlvRecordingMetaData()) {
-
- FlvRecording flvRecordingSaved = flvRecordingDao
- .getFlvRecordingById(flvRecordingId);
-
- flvRecordingMetaData.setFlvRecording(flvRecordingSaved);
-
- flvRecordingMetaDataDao
- .addFlvRecordingMetaDataObj(flvRecordingMetaData);
-
- }
-
- }
-
- }
-
- @SuppressWarnings("unchecked")
- private List<FlvRecording> getFlvRecordings(File flvRecordingsListFile) {
- try {
-
- List<FlvRecording> flvList = new LinkedList<FlvRecording>();
-
- SAXReader reader = new SAXReader();
- Document document = reader.read(flvRecordingsListFile);
-
- Element root = document.getRootElement();
-
- for (Iterator<Element> i = root.elementIterator(); i.hasNext();) {
-
- Element itemObject = i.next();
-
- if (itemObject.getName().equals("flvrecordings")) {
-
- for (Iterator<Element> innerIter = itemObject
- .elementIterator("flvrecording"); innerIter
- .hasNext();) {
-
- Element flvObject = innerIter.next();
-
- String alternateDownload = unformatString(flvObject
- .element("alternateDownload").getText());
- String comment = unformatString(flvObject.element(
- "comment").getText());
- boolean deleted = Boolean.valueOf(unformatString(flvObject.element(
- "deleted").getText()));
- String fileHash = unformatString(flvObject.element(
- "fileHash").getText());
- String fileName = unformatString(flvObject.element(
- "fileName").getText());
- String previewImage = unformatString(flvObject.element(
- "previewImage").getText());
- String recorderStreamId = unformatString(flvObject
- .element("recorderStreamId").getText());
- Long fileSize = importLongType(unformatString(flvObject
- .element("fileSize").getText()));
- Integer flvHeight = importIntegerType(unformatString(flvObject
- .element("flvHeight").getText()));
- Integer flvWidth = importIntegerType(unformatString(flvObject
- .element("flvWidth").getText()));
- Integer height = importIntegerType(unformatString(flvObject
- .element("height").getText()));
- Integer width = importIntegerType(unformatString(flvObject
- .element("width").getText()));
- Long insertedBy = getNewId(
- importLongType(unformatString(flvObject
- .element("insertedBy").getText())),
- Maps.USERS);
- Long organization_id = getNewId(
- importLongType(unformatString(flvObject
- .element("organization_id").getText())),
- Maps.ORGANISATIONS);
- Long ownerId = getNewId(
- importLongType(unformatString(flvObject
- .element("ownerId").getText())),
- Maps.USERS);
- Long parentFileExplorerItemId = getNewId(
- importLongType(unformatString(flvObject
- .element("parentFileExplorerItemId")
- .getText())), Maps.FILEEXPLORERITEMS);
- Integer progressPostProcessing = importIntegerType(unformatString(flvObject
- .element("progressPostProcessing").getText()));
- Long room_id = getNewId(
- importLongType(unformatString(flvObject
- .element("room_id").getText())),
- Maps.ROOMS);
- Date inserted = CalendarPatterns
- .parseImportDate(unformatString(flvObject
- .element("inserted").getText()));
- Boolean isFolder = importBooleanType(unformatString(flvObject
- .element("isFolder").getText()));
- Boolean isImage = importBooleanType(unformatString(flvObject
- .element("isImage").getText()));
- Boolean isInterview = importBooleanType(unformatString(flvObject
- .element("isInterview").getText()));
- Boolean isPresentation = importBooleanType(unformatString(flvObject
- .element("isPresentation").getText()));
- Boolean isRecording = importBooleanType(unformatString(flvObject
- .element("isRecording").getText()));
- Date recordEnd = CalendarPatterns
- .parseImportDate(unformatString(flvObject
- .element("recordEnd").getText()));
- Date recordStart = CalendarPatterns
- .parseImportDate(unformatString(flvObject
- .element("recordStart").getText()));
-
- FlvRecording flvRecording = new FlvRecording();
- flvRecording.setAlternateDownload(alternateDownload);
- flvRecording.setComment(comment);
- flvRecording.setFileHash(fileHash);
- flvRecording.setFileName(fileName);
- flvRecording.setPreviewImage(previewImage);
- flvRecording.setRecorderStreamId(recorderStreamId);
- flvRecording.setFileSize(fileSize);
- flvRecording.setFlvHeight(flvHeight);
- flvRecording.setFlvWidth(flvWidth);
- flvRecording.setHeight(height);
- flvRecording.setWidth(width);
- flvRecording.setInsertedBy(insertedBy);
- flvRecording.setOrganization_id(organization_id);
- flvRecording.setOwnerId(ownerId);
- flvRecording
- .setParentFileExplorerItemId(parentFileExplorerItemId);
- flvRecording
- .setProgressPostProcessing(progressPostProcessing);
- flvRecording.setRoom_id(room_id);
- flvRecording.setInserted(inserted);
- flvRecording.setIsFolder(isFolder);
- flvRecording.setIsImage(isImage);
- flvRecording.setIsInterview(isInterview);
- flvRecording.setIsPresentation(isPresentation);
- flvRecording.setIsRecording(isRecording);
- flvRecording.setRecordEnd(recordEnd);
- flvRecording.setRecordStart(recordStart);
- flvRecording.setDeleted(deleted);
-
- flvRecording
- .setFlvRecordingMetaData(new LinkedList<FlvRecordingMetaData>());
-
- Element flvrecordingmetadatas = flvObject
- .element("flvrecordingmetadatas");
-
- for (Iterator<Element> innerIterMetas = flvrecordingmetadatas
- .elementIterator("flvrecordingmetadata"); innerIterMetas
- .hasNext();) {
-
- Element flvrecordingmetadataObj = innerIterMetas
- .next();
-
- String freeTextUserName = unformatString(flvrecordingmetadataObj
- .element("freeTextUserName").getText());
- String fullWavAudioData = unformatString(flvrecordingmetadataObj
- .element("fullWavAudioData").getText());
- String streamName = unformatString(flvrecordingmetadataObj
- .element("streamName").getText());
- String wavAudioData = unformatString(flvrecordingmetadataObj
- .element("wavAudioData").getText());
- Integer initialGapSeconds = importIntegerType(unformatString(flvrecordingmetadataObj
- .element("initialGapSeconds").getText()));
- Long insertedBy1 = importLongType(unformatString(flvrecordingmetadataObj
- .element("insertedBy").getText()));
- Integer interiewPodId = importIntegerType(unformatString(flvrecordingmetadataObj
- .element("interiewPodId").getText()));
- Boolean audioIsValid = importBooleanType(unformatString(flvrecordingmetadataObj
- .element("audioIsValid").getText()));
- Date inserted1 = CalendarPatterns
- .parseImportDate(unformatString(flvrecordingmetadataObj
- .element("inserted").getText()));
- Boolean isAudioOnly = importBooleanType(unformatString(flvrecordingmetadataObj
- .element("isAudioOnly").getText()));
- Boolean isScreenData = importBooleanType(unformatString(flvrecordingmetadataObj
- .element("isScreenData").getText()));
- Boolean isVideoOnly = importBooleanType(unformatString(flvrecordingmetadataObj
- .element("isVideoOnly").getText()));
- Date recordEnd1 = CalendarPatterns
- .parseImportDate(unformatString(flvrecordingmetadataObj
- .element("recordEnd").getText()));
- Date recordStart1 = CalendarPatterns
- .parseImportDate(unformatString(flvrecordingmetadataObj
- .element("recordStart").getText()));
- Date updated = CalendarPatterns
- .parseImportDate(unformatString(flvrecordingmetadataObj
- .element("updated").getText()));
-
- FlvRecordingMetaData flvrecordingmetadata = new FlvRecordingMetaData();
- flvrecordingmetadata
- .setFreeTextUserName(freeTextUserName);
- flvrecordingmetadata
- .setFullWavAudioData(fullWavAudioData);
- flvrecordingmetadata.setStreamName(streamName);
- flvrecordingmetadata.setWavAudioData(wavAudioData);
- flvrecordingmetadata
- .setInitialGapSeconds(initialGapSeconds);
- flvrecordingmetadata.setInsertedBy(insertedBy1);
- flvrecordingmetadata
- .setInteriewPodId(interiewPodId);
- flvrecordingmetadata.setAudioIsValid(audioIsValid);
- flvrecordingmetadata.setInserted(inserted1);
- flvrecordingmetadata.setIsAudioOnly(isAudioOnly);
- flvrecordingmetadata.setIsScreenData(isScreenData);
- flvrecordingmetadata.setIsVideoOnly(isVideoOnly);
- flvrecordingmetadata.setRecordEnd(recordEnd1);
- flvrecordingmetadata.setRecordStart(recordStart1);
- flvrecordingmetadata.setUpdated(updated);
- flvrecordingmetadata.setDeleted(false);
-
- flvRecording.getFlvRecordingMetaData().add(
- flvrecordingmetadata);
-
- }
-
- flvList.add(flvRecording);
-
- }
-
- }
- }
-
- return flvList;
-
- } catch (Exception err) {
- log.error("[getFlvRecordings]", err);
- }
- return null;
- }
-
- private void importPrivateMessageFolders(File privateMessageFoldersFile)
- throws Exception {
-
- List<PrivateMessageFolder> privateMessageFolders = this
- .getPrivateMessageFoldersByXML(privateMessageFoldersFile);
-
- for (PrivateMessageFolder privateMessageFolder : privateMessageFolders) {
-
- Long folderId = privateMessageFolder.getPrivateMessageFolderId();
- PrivateMessageFolder storedFolder = privateMessageFolderDao
- .getPrivateMessageFolderById(folderId);
- if (storedFolder == null) {
- privateMessageFolder.setPrivateMessageFolderId(0);
- Long newFolderId = privateMessageFolderDao
- .addPrivateMessageFolderObj(privateMessageFolder);
- messageFoldersMap.put(folderId, newFolderId);
- }
- }
-
- }
-
- @SuppressWarnings("unchecked")
- private List<PrivateMessageFolder> getPrivateMessageFoldersByXML(
- File privateMessageFoldersFile) {
- try {
-
- List<PrivateMessageFolder> pmfList = new LinkedList<PrivateMessageFolder>();
-
- SAXReader reader = new SAXReader();
- Document document = reader.read(privateMessageFoldersFile);
-
- Element root = document.getRootElement();
-
- for (Iterator<Element> i = root.elementIterator(); i.hasNext();) {
- Element itemObject = i.next();
- if (itemObject.getName().equals("privatemessagefolders")) {
-
- for (Iterator<Element> innerIter = itemObject
- .elementIterator("privatemessagefolder"); innerIter
- .hasNext();) {
-
- Element pmfObject = innerIter.next();
-
- String folderName = unformatString(pmfObject.element(
- "folderName").getText());
- Long userId = getNewId(
- importLongType(unformatString(pmfObject
- .element("userId").getText())),
- Maps.USERS);
- Long privateMessageFolderId = importLongType(unformatString(pmfObject
- .element("privateMessageFolderId").getText()));
-
- PrivateMessageFolder privateMessageFolder = new PrivateMessageFolder();
- privateMessageFolder.setFolderName(folderName);
- privateMessageFolder.setUserId(userId);
- privateMessageFolder
- .setPrivateMessageFolderId(privateMessageFolderId);
-
- pmfList.add(privateMessageFolder);
-
- }
-
- }
+ private Node getNode(Node doc, String name) {
+ NodeList nl = doc.getChildNodes();
+ for (int i = 0; i < nl.getLength(); ++i) {
+ Node node = nl.item(i);
+ if (node.getNodeType() == Node.ELEMENT_NODE && name.equals(node.getNodeName())) {
+ return node;
}
-
- return pmfList;
-
- } catch (Exception err) {
- log.error("[getPrivateMessageFoldersByXML]", err);
}
return null;
}
-
- private void importPrivateMessages(File privateMessagesFile)
- throws Exception {
-
- List<PrivateMessages> pmList = this
- .getPrivateMessagesByXML(privateMessagesFile);
-
- for (PrivateMessages pm : pmList) {
- privateMessagesDao.addPrivateMessageObj(pm);
- }
-
- }
-
- @SuppressWarnings("unchecked")
- private List<PrivateMessages> getPrivateMessagesByXML(
- File privateMessagesFile) {
- try {
-
- List<PrivateMessages> pmList = new LinkedList<PrivateMessages>();
-
- SAXReader reader = new SAXReader();
- Document document = reader.read(privateMessagesFile);
-
- Element root = document.getRootElement();
-
- for (Iterator<Element> i = root.elementIterator(); i.hasNext();) {
- Element itemObject = i.next();
- if (itemObject.getName().equals("privatemessages")) {
-
- for (Iterator<Element> innerIter = itemObject
- .elementIterator("privatemessage"); innerIter
- .hasNext();) {
-
- Element pmObject = innerIter.next();
-
- String message = unformatString(pmObject.element(
- "message").getText());
- String subject = unformatString(pmObject.element(
- "subject").getText());
- Long privateMessageFolderId = getNewId(
- importLongType(unformatString(pmObject.element(
- "privateMessageFolderId").getText())),
- Maps.MESSAGEFOLDERS);
- Long userContactId = getNewId(
- importLongType(unformatString(pmObject.element(
- "userContactId").getText())),
- Maps.USERCONTACTS);
- Long parentMessage = importLongType(unformatString(pmObject
- .element("parentMessage").getText()));
- Boolean bookedRoom = importBooleanType(unformatString(pmObject
- .element("bookedRoom").getText()));
- Users from = userManagement.getUserById(getNewId(
- importLongType(unformatString(pmObject.element(
- "from").getText())), Maps.USERS));
- Users to = userManagement.getUserById(getNewId(
- importLongType(unformatString(pmObject.element(
- "to").getText())), Maps.USERS));
- Date inserted = CalendarPatterns
- .parseImportDate(unformatString(pmObject
- .element("inserted").getText()));
- Boolean isContactRequest = importBooleanType(unformatString(pmObject
- .element("isContactRequest").getText()));
- Boolean isRead = importBooleanType(unformatString(pmObject
- .element("isRead").getText()));
- Boolean isTrash = importBooleanType(unformatString(pmObject
- .element("isTrash").getText()));
- Users owner = userManagement.getUserById(getNewId(
- importLongType(unformatString(pmObject.element(
- "owner").getText())), Maps.USERS));
- Rooms room = roommanagement.getRoomById(getNewId(
- importLongType(unformatString(pmObject.element(
- "room").getText())), Maps.ROOMS));
-
- PrivateMessages pm = new PrivateMessages();
- pm.setMessage(message);
- pm.setSubject(subject);
- pm.setPrivateMessageFolderId(privateMessageFolderId);
- pm.setUserContactId(userContactId);
- pm.setParentMessage(parentMessage);
- pm.setBookedRoom(bookedRoom);
- pm.setFrom(from);
- pm.setTo(to);
- pm.setInserted(inserted);
- pm.setIsContactRequest(isContactRequest);
- pm.setIsRead(isRead);
- pm.setIsTrash(isTrash);
- pm.setOwner(owner);
- pm.setRoom(room);
-
- pmList.add(pm);
-
- }
-
- }
- }
-
- return pmList;
-
- } catch (Exception err) {
- log.error("[getPrivateMessagesByXML]", err);
- }
- return null;
- }
-
- private void importUserContacts(File userContactsFile) throws Exception {
-
- List<UserContacts> ucList = this.getUserContactsByXML(userContactsFile);
-
- for (UserContacts uc : ucList) {
- Long userContactId = uc.getUserContactId();
- UserContacts storedUC = userContactsDao
- .getUserContacts(userContactId);
-
- if (storedUC == null) {
- uc.setUserContactId(0);
- Long newId = userContactsDao.addUserContactObj(uc);
- this.userContactsMap.put(userContactId, newId);
- }
- }
- }
-
- @SuppressWarnings("unchecked")
- private List<UserContacts> getUserContactsByXML(File userContactsFile) {
- try {
-
- List<UserContacts> ucList = new LinkedList<UserContacts>();
-
- SAXReader reader = new SAXReader();
- Document document = reader.read(userContactsFile);
-
- Element root = document.getRootElement();
-
- for (Iterator<Element> i = root.elementIterator(); i.hasNext();) {
- Element itemObject = i.next();
- if (itemObject.getName().equals("usercontacts")) {
-
- for (Iterator<Element> innerIter = itemObject
- .elementIterator("usercontact"); innerIter
- .hasNext();) {
-
- Element usercontact = innerIter.next();
-
- String hash = unformatString(usercontact
- .element("hash").getText());
- Users contact = userManagement.getUserById(getNewId(
- importLongType(unformatString(usercontact
- .element("contact").getText())),
- Maps.USERS));
- Users owner = userManagement.getUserById(getNewId(
- importLongType(unformatString(usercontact
- .element("owner").getText())),
- Maps.USERS));
- Boolean pending = importBooleanType(unformatString(usercontact
- .element("pending").getText()));
- Boolean shareCalendar = importBooleanType(unformatString(usercontact
- .element("shareCalendar").getText()));
- Long userContactId = importLongType(unformatString(usercontact
- .element("userContactId").getText()));
-
- UserContacts userContacts = new UserContacts();
- userContacts.setHash(hash);
- userContacts.setContact(contact);
- userContacts.setOwner(owner);
- userContacts.setPending(pending);
- userContacts.setShareCalendar(shareCalendar);
- userContacts.setUserContactId(userContactId);
-
- ucList.add(userContacts);
-
- }
-
- }
- }
-
- return ucList;
-
- } catch (Exception err) {
- log.error("[getUserContactsByXML]", err);
- }
- return null;
- }
-
- private void importOrganizsations(File orgFile) {
- try {
- SAXReader reader = new SAXReader();
- Document document = reader.read(orgFile);
-
- Element root = document.getRootElement();
-
- for (@SuppressWarnings("unchecked")
- Iterator<Element> i = root.elementIterator(); i.hasNext();) {
- Element itemObject = i.next();
- if (itemObject.getName().equals("organisations")) {
- for (@SuppressWarnings("unchecked")
- Iterator<Element> innerIter = itemObject
- .elementIterator("organisation"); innerIter
- .hasNext();) {
-
- Element orgObject = innerIter.next();
-
- Long organisation_id = importLongType(unformatString(orgObject
- .element("organisation_id").getText()));
- String name = unformatString(orgObject.element("name")
- .getText());
- boolean deleted = Boolean.valueOf(unformatString(orgObject.element(
- "deleted").getText()));
-
- Organisation organisation = new Organisation();
- organisation.setName(name);
- organisation.setDeleted(deleted);
-
- Long newOrgID = organisationmanagement
- .addOrganisationObj(organisation);
- organisationsMap.put(organisation_id, newOrgID);
- }
- }
- }
- } catch (Exception err) {
- log.error("[getOrganisationsByXML]", err);
- }
- }
-
- private String unformatString(String str) {
- str = str.replaceAll(Pattern.quote("<![CDATA["), "");
- str = str.replaceAll(Pattern.quote("]]>"), "");
- return str;
- }
-
- private void importMeetingmembers(File meetingmembersListFile)
- throws Exception {
-
- List<MeetingMember> meetingmembersList = this
- .getMeetingmembersListByXML(meetingmembersListFile);
-
- for (MeetingMember ma : meetingmembersList) {
-
- // We need to reset this as openJPA reject to store them otherwise
- ma.setMeetingMemberId(null);
-
- meetingMemberDao.addMeetingMemberByObject(ma);
- }
-
- }
-
- @SuppressWarnings("unchecked")
- private List<MeetingMember> getMeetingmembersListByXML(
- File meetingmembersListFile) {
- try {
-
- List<MeetingMember> meetingmembersList = new LinkedList<MeetingMember>();
-
- SAXReader reader = new SAXReader();
- Document document = reader.read(meetingmembersListFile);
-
- Element root = document.getRootElement();
-
- for (Iterator<Element> i = root.elementIterator(); i.hasNext();) {
- Element itemObject = i.next();
- if (itemObject.getName().equals("meetingmembers")) {
-
- for (Iterator<Element> innerIter = itemObject
- .elementIterator("meetingmember"); innerIter
- .hasNext();) {
-
- Element appointmentsObject = innerIter.next();
-
- Long meetingMemberId = importLongType(unformatString(appointmentsObject
- .element("meetingMemberId").getText()));
- Long userid = getNewId(
- importLongType(unformatString(appointmentsObject
- .element("userid").getText())),
- Maps.USERS);
- Long appointment = getNewId(
- importLongType(unformatString(appointmentsObject
- .element("appointment").getText())),
- Maps.APPOINTMENTS);
- String firstname = unformatString(appointmentsObject
- .element("firstname").getText());
- String lastname = unformatString(appointmentsObject
- .element("lastname").getText());
- String memberStatus = unformatString(appointmentsObject
- .element("memberStatus").getText());
- String appointmentStatus = unformatString(appointmentsObject
- .element("appointmentStatus").getText());
- String email = unformatString(appointmentsObject
- .element("email").getText());
- String phone = appointmentsObject.element("phone") == null ? "" :
- unformatString(appointmentsObject.element("phone").getText());
- boolean deleted = importBooleanType(unformatString(appointmentsObject
- .element("deleted").getText()));
- Boolean invitor = importBooleanType(unformatString(appointmentsObject
- .element("invitor").getText()));
-
- MeetingMember meetingMember = new MeetingMember();
- meetingMember.setMeetingMemberId(meetingMemberId);
- meetingMember.setUserid(usersDao.getUser(userid));
- meetingMember.setAppointment(appointmentDao
- .getAppointmentByIdBackup(appointment));
- meetingMember.setFirstname(firstname);
- meetingMember.setLastname(lastname);
- meetingMember.setMemberStatus(memberStatus);
- meetingMember.setAppointmentStatus(appointmentStatus);
- meetingMember.setEmail(email);
- meetingMember.setPhone(phone);
- meetingMember.setDeleted(deleted);
- meetingMember.setInvitor(invitor);
-
- meetingmembersList.add(meetingMember);
-
- }
-
- }
- }
-
- return meetingmembersList;
-
- } catch (Exception err) {
- log.error("[meetingmembersList]", err);
- }
- return null;
- }
-
- private void importLdapConfig(File ldapConfigListFile) throws Exception {
-
- List<LdapConfig> ldapConfigList = this
- .getLdapConfigListByXML(ldapConfigListFile);
-
- for (LdapConfig ldapConfig : ldapConfigList) {
- ldapConfigDao.addLdapConfigByObject(ldapConfig);
- }
-
- }
-
- @SuppressWarnings("unchecked")
- private List<LdapConfig> getLdapConfigListByXML(File ldapConfigListFile) {
- try {
-
- List<LdapConfig> ldapConfigsList = new LinkedList<LdapConfig>();
-
- SAXReader reader = new SAXReader();
- Document document = reader.read(ldapConfigListFile);
-
- Element root = document.getRootElement();
-
- for (Iterator<Element> i = root.elementIterator(); i.hasNext();) {
- Element itemObject = i.next();
- if (itemObject.getName().equals("ldapconfigs")) {
-
- for (Iterator<Element> innerIter = itemObject
- .elementIterator("ldapconfig"); innerIter.hasNext();) {
-
- Element ldapconfigObject = innerIter.next();
-
- String name = unformatString(ldapconfigObject.element(
- "name").getText());
- String configFileName = unformatString(ldapconfigObject
- .element("configFileName").getText());
- Boolean addDomainToUserName = importBooleanType(unformatString(ldapconfigObject
- .element("addDomainToUserName").getText()));
- String domain = unformatString(ldapconfigObject
- .element("domain").getText());
- Boolean isActive = importBooleanType(unformatString(ldapconfigObject
- .element("isActive").getText()));
-
- LdapConfig ldapConfig = new LdapConfig();
- ldapConfig.setName(name);
- ldapConfig.setConfigFileName(configFileName);
- ldapConfig.setAddDomainToUserName(addDomainToUserName);
- ldapConfig.setDomain(domain);
- ldapConfig.setIsActive(isActive);
-
- ldapConfigsList.add(ldapConfig);
-
- }
-
- }
- }
-
- return ldapConfigsList;
-
- } catch (Exception err) {
- log.error("[getLdapConfigListByXML]", err);
- }
- return null;
- }
-
- private void importAppointements(File appointementListFile)
- throws Exception {
-
- List<Appointment> appointmentList = this
- .getAppointmentListByXML(appointementListFile);
-
- for (Appointment appointment : appointmentList) {
- Long appId = appointment.getAppointmentId();
-
- // We need to reset this as openJPA reject to store them otherwise
- appointment.setAppointmentId(null);
-
- Long newAppId = appointmentDao.addAppointmentObj(appointment);
- appointmentsMap.put(appId, newAppId);
-
- }
-
- }
-
- @SuppressWarnings("unchecked")
- private List<Appointment> getAppointmentListByXML(File appointementListFile) {
- try {
-
- List<Appointment> appointmentList = new LinkedList<Appointment>();
-
- SAXReader reader = new SAXReader();
- Document document = reader.read(appointementListFile);
-
- Element root = document.getRootElement();
-
- for (Iterator<Element> i = root.elementIterator(); i.hasNext();) {
- Element itemObject = i.next();
- if (itemObject.getName().equals("appointments")) {
-
- for (Iterator<Element> innerIter = itemObject
- .elementIterator("appointment"); innerIter
- .hasNext();) {
-
- Element appointmentsObject = innerIter.next();
-
- Long appointmentId = importLongType(unformatString(appointmentsObject
- .element("appointmentId").getText()));
- String appointmentName = unformatString(appointmentsObject
- .element("appointmentName").getText());
- String appointmentLocation = unformatString(appointmentsObject
- .element("appointmentLocation").getText());
- String appointmentDescription = unformatString(appointmentsObject
- .element("appointmentDescription").getText());
- Long categoryId = importLongType(unformatString(appointmentsObject
- .element("categoryId").getText()));
- Date appointmentStarttime = CalendarPatterns
- .parseImportDate(unformatString(appointmentsObject
- .element("appointmentStarttime")
- .getText()));
- Date appointmentEndtime = CalendarPatterns
- .parseImportDate(unformatString(appointmentsObject
- .element("appointmentEndtime")
- .getText()));
- boolean deleted = Boolean.valueOf(unformatString(appointmentsObject
- .element("deleted").getText()));
- Long typId = importLongType(unformatString(appointmentsObject
- .element("typId").getText()));
- Boolean isDaily = importBooleanType(unformatString(appointmentsObject
- .element("isDaily").getText()));
- Boolean isWeekly = importBooleanType(unformatString(appointmentsObject
- .element("isWeekly").getText()));
- Boolean isMonthly = importBooleanType(unformatString(appointmentsObject
- .element("isMonthly").getText()));
- Boolean isYearly = importBooleanType(unformatString(appointmentsObject
- .element("isYearly").getText()));
- Long room_id = getNewId(
- importLongType(unformatString(appointmentsObject
- .element("room_id").getText())),
- Maps.ROOMS);
- String icalId = unformatString(appointmentsObject
- .element("icalId").getText());
- Long language_id = importLongType(unformatString(appointmentsObject
- .element("language_id").getText()));
- Boolean isPasswordProtected = importBooleanType(unformatString(appointmentsObject
- .element("isPasswordProtected").getText()));
- String password = unformatString(appointmentsObject
- .element("password").getText());
- Long users_id = getNewId(
- importLongType(unformatString(appointmentsObject
- .element("users_id").getText())),
- Maps.USERS);
-
- Appointment app = new Appointment();
- app.setAppointmentId(appointmentId);
- app.setAppointmentLocation(appointmentLocation);
- app.setAppointmentName(appointmentName);
- app.setAppointmentDescription(appointmentDescription);
- app.setAppointmentCategory(appointmentCategoryDaoImpl
- .getAppointmentCategoryById(categoryId));
- app.setAppointmentStarttime(appointmentStarttime);
- app.setAppointmentEndtime(appointmentEndtime);
- app.setDeleted(deleted);
- app.setRemind(appointmentReminderTypDaoImpl
- .getAppointmentReminderTypById(typId));
- app.setIsDaily(isDaily);
- app.setIsWeekly(isWeekly);
- app.setIsMonthly(isMonthly);
- app.setIsYearly(isYearly);
- app.setRoom(roommanagement.getRoomById(room_id));
- app.setIcalId(icalId);
- app.setLanguage_id(language_id);
- app.setIsPasswordProtected(isPasswordProtected);
- app.setPassword(password);
- app.setUserId(userManagement.getUserById(users_id));
-
- appointmentList.add(app);
-
- }
-
- }
- }
-
- return appointmentList;
-
- } catch (Exception err) {
- log.error("[getRoomListByXML]", err);
- }
- return null;
- }
-
- private void importOrgRooms(File orgRoomListFile) throws Exception {
-
- List<Rooms_Organisation> roomOrgList = this
- .getOrgRoomListByXML(orgRoomListFile);
-
- for (Rooms_Organisation rooms_Organisation : roomOrgList) {
-
- // We need to reset this as openJPA reject to store them otherwise
- rooms_Organisation.setRooms_organisation_id(null);
-
- roommanagement.addRoomOrganisation(rooms_Organisation);
-
- }
-
- }
-
- @SuppressWarnings("unchecked")
- private List<Rooms_Organisation> getOrgRoomListByXML(File orgRoomListFile) {
- try {
-
- List<Rooms_Organisation> orgRoomList = new LinkedList<Rooms_Organisation>();
-
- SAXReader reader = new SAXReader();
- Document document = reader.read(orgRoomListFile);
-
- Element root = document.getRootElement();
-
- for (Iterator<Element> i = root.elementIterator(); i.hasNext();) {
- Element itemObject = i.next();
- if (itemObject.getName().equals("room_organisations")) {
-
- for (Iterator<Element> innerIter = itemObject
- .elementIterator("room_organisation"); innerIter
- .hasNext();) {
-
- Element orgRoomObject = innerIter.next();
-
- Long rooms_organisation_id = importLongType(unformatString(orgRoomObject
- .element("rooms_organisation_id").getText()));
- Long organisation_id = getNewId(
- importLongType(unformatString(orgRoomObject
- .element("organisation_id").getText())),
- Maps.ORGANISATIONS);
- Long rooms_id = getNewId(
- importLongType(unformatString(orgRoomObject
- .element("rooms_id").getText())),
- Maps.ROOMS);
- boolean deleted = Boolean.valueOf(unformatString(orgRoomObject.element(
- "deleted").getText()));
-
- Rooms_Organisation rooms_Organisation = new Rooms_Organisation();
- rooms_Organisation
- .setRooms_organisation_id(rooms_organisation_id);
- rooms_Organisation
- .setOrganisation(organisationmanagement
- .getOrganisationById(organisation_id));
- rooms_Organisation.setRoom(roommanagement
- .getRoomById(rooms_id));
- rooms_Organisation.setDeleted(deleted);
-
- orgRoomList.add(rooms_Organisation);
-
- }
-
- }
- }
-
- return orgRoomList;
-
- } catch (Exception err) {
- log.error("[getRoomListByXML]", err);
- }
- return null;
- }
-
- @SuppressWarnings("unchecked")
- private void importRooms(File roomFile) throws Exception {
- try {
- SAXReader reader = new SAXReader();
- Document document = reader.read(roomFile);
-
- Element root = document.getRootElement();
-
- Element rooms = root.element("rooms");
- for (Iterator<Element> innerIter = rooms
- .elementIterator("room"); innerIter.hasNext();) {
-
- Element roomObject = innerIter.next();
-
- Long rooms_id = importLongType(unformatString(roomObject
- .element("rooms_id").getText()));
- String name = unformatString(roomObject.element("name")
- .getText());
- boolean deleted = Boolean.valueOf(unformatString(roomObject.element(
- "deleted").getText()));
- String comment = unformatString(roomObject.element(
- "comment").getText());
- Long numberOfPartizipants = importLongType(unformatString((roomObject
- .element("numberOfPartizipants").getText())));
- Boolean appointment = importBooleanType(unformatString(roomObject
- .element("appointment").getText()));
- Long externalRoomId = importLongType(unformatString(roomObject
- .element("externalRoomId").getText()));
- String externalRoomType = unformatString(roomObject
- .element("externalRoomType").getText());
- Long roomtypes_id = importLongType(unformatString(roomObject
- .element("roomtypeId").getText()));
-
- Boolean isDemoRoom = false;
- if (roomObject
- .element("isDemoRoom") != null) {
- isDemoRoom = importBooleanType(unformatString(roomObject
- .element("isDemoRoom").getText()));
- }
-
- Integer demoTime = null;
- if (roomObject
- .element("demoTime") != null) {
- demoTime = importIntegerType(unformatString(roomObject
- .element("demoTime").getText()));
- }
-
- Boolean isModeratedRoom = false;
- if (roomObject.element("isModeratedRoom") != null) {
- isModeratedRoom = importBooleanType(unformatString(roomObject
- .element("isModeratedRoom").getText()));
- }
-
- Boolean allowUserQuestions = true;
- if (roomObject.element("allowUserQuestions") != null) {
- allowUserQuestions = importBooleanType(unformatString(roomObject
- .element("allowUserQuestions").getText()));
- }
-
-
- Boolean isAudioOnly = false;
- if (roomObject.element("isAudioOnly") != null) {
- isAudioOnly = importBooleanType(unformatString(roomObject
- .element("isAudioOnly").getText()));
- }
-
- String sipNumber = "";
- if (roomObject.element("sipNumber") != null) {
- sipNumber = unformatString(roomObject.element(
- "sipNumber").getText());
- }
-
- String conferencePin = "";
- if (roomObject.element("conferencePin") != null) {
- conferencePin = unformatString(roomObject
- .element("conferencePin").getText());
- }
-
- Boolean showMicrophoneStatus = false;
- if (roomObject.element("showMicrophoneStatus") != null) {
- showMicrophoneStatus = importBooleanType(unformatString(roomObject
- .element("showMicrophoneStatus").getText()));
- }
-
- Long ownerId = null;
- if (roomObject.element("ownerid") != null) {
- ownerId = getNewId(
- importLongType(unformatString(roomObject
- .element("ownerid").getText())),
- Maps.USERS);
- }
-
- Boolean ispublic = false;
- if (roomObject.element("ispublic") != null) {
- ispublic = importBooleanType(unformatString(roomObject
- .element("ispublic").getText()));
- }
-
- Boolean waitForRecording = false;
- if (roomObject.element("waitForRecording") != null) {
- waitForRecording = importBooleanType(unformatString(roomObject
- .element("waitForRecording").getText()));
- }
-
- Boolean hideTopBar = false;
- if (roomObject.element("hideTopBar") != null) {
- hideTopBar = importBooleanType(unformatString(roomObject
- .element("hideTopBar").getText()));
- }
-
- Boolean isClosed = false;
- if (roomObject.element("isClosed") != null) {
- isClosed = importBooleanType(unformatString(roomObject
- .element("isClosed").getText()));
- }
-
- Boolean allowRecording = false;
- if (roomObject.element("allowRecording") != null) {
- allowRecording = importBooleanType(unformatString(roomObject
- .element("allowRecording").getText()));
- }
-
- String redirectURL = "";
- if (roomObject.element("redirectURL") != null) {
- redirectURL = unformatString(roomObject.element(
- "redirectURL").getText());
- }
-
- Boolean hideActionsMenu = false;
- if (roomObject.element("hideActionsMenu") != null) {
- hideTopBar = importBooleanType(unformatString(roomObject
- .element("hideActionsMenu").getText()));
- }
-
- Boolean hideActivitiesAndActions = false;
- if (roomObject.element("hideActivitiesAndActions") != null) {
- hideTopBar = importBooleanType(unformatString(roomObject
- .element("hideActivitiesAndActions").getText()));
- }
-
- Boolean hideChat = false;
- if (roomObject.element("hideChat") != null) {
- hideTopBar = importBooleanType(unformatString(roomObject
- .element("hideChat").getText()));
- }
-
- Boolean hideFilesExplorer = false;
- if (roomObject.element("hideFilesExplorer") != null) {
- hideTopBar = importBooleanType(unformatString(roomObject
- .element("hideFilesExplorer").getText()));
- }
-
- Boolean hideScreenSharing = false;
- if (roomObject.element("hideScreenSharing") != null) {
- hideTopBar = importBooleanType(unformatString(roomObject
- .element("hideScreenSharing").getText()));
- }
-
- Boolean hideWhiteboard = false;
- if (roomObject.element("hideWhiteboard") != null) {
- hideTopBar = importBooleanType(unformatString(roomObject
- .element("hideWhiteboard").getText()));
- }
-
- Rooms room = new Rooms();
- room.setRooms_id(rooms_id);
- room.setOwnerId(ownerId);
- room.setName(name);
- room.setDeleted(deleted);
- room.setComment(comment);
- room.setNumberOfPartizipants(numberOfPartizipants);
- room.setAppointment(appointment);
- room.setExternalRoomId(externalRoomId);
- room.setExternalRoomType(externalRoomType);
- room.setRoomtype(roommanagement
- .getRoomTypesById(roomtypes_id));
- room.setIsDemoRoom(isDemoRoom);
- room.setDemoTime(demoTime);
- room.setIsModeratedRoom(isModeratedRoom);
- room.setAllowUserQuestions(allowUserQuestions);
- room.setIsAudioOnly(isAudioOnly);
- room.setSipNumber(sipNumber);
- room.setConferencePin(conferencePin);
- room.setIspublic(ispublic);
- room.setIsClosed(isClosed);
- room.setRedirectURL(redirectURL);
- room.setWaitForRecording(waitForRecording);
- room.setHideTopBar(hideTopBar);
- room.setAllowRecording(allowRecording);
- room.setShowMicrophoneStatus(showMicrophoneStatus);
- room.setHideActionsMenu(hideActionsMenu);
- room.setHideActivitiesAndActions(hideActivitiesAndActions);
- room.setHideChat(hideChat);
- room.setHideFilesExplorer(hideFilesExplorer);
- room.setHideScreenSharing(hideScreenSharing);
- room.setHideWhiteboard(hideWhiteboard);
-
- Long roomId = room.getRooms_id();
-
[... 292 lines stripped ...]