1 package com.mvnforum.jaxb; 2 3 import java.io.FileNotFoundException ; 4 import java.io.FileOutputStream ; 5 import java.sql.Date ; 6 import java.sql.Timestamp ; 7 import java.text.ParseException ; 8 import java.util.ArrayList ; 9 import java.util.Collection ; 10 import java.util.Iterator ; 11 import java.util.List ; 12 13 import javax.xml.bind.JAXBException; 14 import javax.xml.bind.Marshaller; 15 16 import net.myvietnam.mvncore.exception.CreateException; 17 import net.myvietnam.mvncore.exception.DatabaseException; 18 import net.myvietnam.mvncore.exception.DuplicateKeyException; 19 import net.myvietnam.mvncore.exception.ForeignKeyNotFoundException; 20 import net.myvietnam.mvncore.exception.ObjectNotFoundException; 21 22 import org.mvnforum.phpbb2mvnforum.db.MemberDAO; 23 import org.mvnforum.phpbb2mvnforum.db.MessageDAO; 24 import org.mvnforum.phpbb2mvnforum.db.PhpbbAuthAccess; 25 import org.mvnforum.phpbb2mvnforum.db.PhpbbAuthAccessDAO; 26 import org.mvnforum.phpbb2mvnforum.db.PhpbbCategories; 27 import org.mvnforum.phpbb2mvnforum.db.PhpbbCategoriesDAO; 28 import org.mvnforum.phpbb2mvnforum.db.PhpbbForum; 29 import org.mvnforum.phpbb2mvnforum.db.PhpbbForumDAO; 30 import org.mvnforum.phpbb2mvnforum.db.PhpbbGroup; 31 import org.mvnforum.phpbb2mvnforum.db.PhpbbGroupDAO; 32 import org.mvnforum.phpbb2mvnforum.db.PhpbbPost; 33 import org.mvnforum.phpbb2mvnforum.db.PhpbbPostDAO; 34 import org.mvnforum.phpbb2mvnforum.db.PhpbbPostText; 35 import org.mvnforum.phpbb2mvnforum.db.PhpbbPostTextDAO; 36 import org.mvnforum.phpbb2mvnforum.db.PhpbbPrivmMsgs; 37 import org.mvnforum.phpbb2mvnforum.db.PhpbbPrivmMsgsDAO; 38 import org.mvnforum.phpbb2mvnforum.db.PhpbbPrivmMsgsTextDAO; 39 import org.mvnforum.phpbb2mvnforum.db.PhpbbRanks; 40 import org.mvnforum.phpbb2mvnforum.db.PhpbbRanksDAO; 41 import org.mvnforum.phpbb2mvnforum.db.PhpbbTopics; 42 import org.mvnforum.phpbb2mvnforum.db.PhpbbTopicsDAO; 43 import org.mvnforum.phpbb2mvnforum.db.PhpbbTopicsWatch; 44 import org.mvnforum.phpbb2mvnforum.db.PhpbbTopicsWatchDAO; 45 import org.mvnforum.phpbb2mvnforum.db.PhpbbUserDAO; 46 import org.mvnforum.phpbb2mvnforum.db.PhpbbUserGroup; 47 import org.mvnforum.phpbb2mvnforum.db.PhpbbUserGroupDAO; 48 import org.mvnforum.phpbb2mvnforum.db.PhpbbUsers; 49 import org.mvnforum.phpbb2mvnforum.db.jdbc.DAOFactory; 50 import org.mvnforum.util.MD5; 51 import org.mvnforum.util.Utils; 52 53 import com.mvnforum.db.GroupPermissionDAO; 54 import com.mvnforum.db.GroupsDAO; 55 import com.mvnforum.db.MemberPermissionDAO; 56 import com.mvnforum.db.MessageFolderDAO; 57 import com.mvnforum.db.RankDAO; 58 import com.mvnforum.db.WatchDAO; 59 import com.mvnforum.jaxb.dao.CategoryListDAO; 60 import com.mvnforum.jaxb.dao.GroupListDAO; 61 import com.mvnforum.jaxb.dao.MemberListDAO; 62 import com.mvnforum.jaxb.dao.RankListDAO; 63 import com.mvnforum.jaxb.db.AttachmentList; 64 import com.mvnforum.jaxb.db.CategoryListType; 65 import com.mvnforum.jaxb.db.CategoryType; 66 import com.mvnforum.jaxb.db.CategoryWatchList; 67 import com.mvnforum.jaxb.db.FavoriteThreadList; 68 import com.mvnforum.jaxb.db.ForumList; 69 import com.mvnforum.jaxb.db.ForumType; 70 import com.mvnforum.jaxb.db.ForumWatchList; 71 import com.mvnforum.jaxb.db.GlobalPermissionList; 72 import com.mvnforum.jaxb.db.GlobalWatchList; 73 import com.mvnforum.jaxb.db.GlobalWatchType; 74 import com.mvnforum.jaxb.db.GroupForumPermissionList; 75 import com.mvnforum.jaxb.db.GroupForumPermissionType; 76 import com.mvnforum.jaxb.db.GroupMemberList; 77 import com.mvnforum.jaxb.db.GroupMemberType; 78 import com.mvnforum.jaxb.db.GroupType; 79 import com.mvnforum.jaxb.db.MemberForumPermissionList; 80 import com.mvnforum.jaxb.db.MemberType; 81 import com.mvnforum.jaxb.db.MessageFolderList; 82 import com.mvnforum.jaxb.db.MessageFolderType; 83 import com.mvnforum.jaxb.db.MessageList; 84 import com.mvnforum.jaxb.db.MessageType; 85 import com.mvnforum.jaxb.db.Mvnforum; 86 import com.mvnforum.jaxb.db.ObjectFactory; 87 import com.mvnforum.jaxb.db.PostList; 88 import com.mvnforum.jaxb.db.PostType; 89 import com.mvnforum.jaxb.db.RankType; 90 import com.mvnforum.jaxb.db.ThreadList; 91 import com.mvnforum.jaxb.db.ThreadType; 92 import com.mvnforum.jaxb.db.ThreadWatchList; 93 import com.mvnforum.jaxb.db.ThreadWatchType; 94 import com.mvnforum.jaxb.db.MvnforumType.GroupListType; 95 import com.mvnforum.jaxb.db.MvnforumType.MemberListType; 96 import com.mvnforum.jaxb.db.MvnforumType.RankListType; 97 import com.mvnforum.jaxb.util.ImportExportUtil; 98 import com.mvnforum.jaxb.util.XMLUtil; 99 100 public class ImportExportXML { 101 102 private Mvnforum mvnforum = null; 103 104 private static DAOFactory factory = new DAOFactory(); 105 106 private static int GROUP_ADMIN_PERMISSION = 100; 107 108 private static int GROUP_GUEST_PERMISSION = 109; 109 110 private static int ADMIN_ID = 1; 111 112 private static int GUEST_ID = 2; 113 114 public ImportExportXML() 115 throws JAXBException { 116 ObjectFactory objectFactory = XMLUtil.getObjectFactory(); 117 mvnforum = objectFactory.createMvnforum(); 118 } 119 120 public void exportGroupList() 121 throws JAXBException, DatabaseException, ObjectNotFoundException { 122 GroupListDAO groupListDAO = new GroupListDAO(); 123 PhpbbGroupDAO phpbbGroupDAO = factory.getPhpbbGroupDAO(); 124 PhpbbUserGroupDAO phpbbUserGroupDAO = factory.getPhpbbUserGroupDAO(); 125 PhpbbUserDAO phpbbUserDAO = factory.getPhpUserDAO(); 126 127 Collection beans = phpbbGroupDAO.getBeans(); 128 Collection groupTypes = new ArrayList (); 129 130 for (Iterator groupIter = beans.iterator(); groupIter.hasNext();) { 131 PhpbbGroup phpbbGroup = (PhpbbGroup) groupIter.next(); 132 int groupID = phpbbGroup.getgroup_id(); 133 String groupName = phpbbGroup.getgroup_name(); 134 String groupOwnerName = ""; 135 if (!(groupName.equalsIgnoreCase("Anonymous") || groupName.equalsIgnoreCase("Admin"))) { 136 int groupOwnerID = phpbbGroup.getgroup_moderator(); 137 if (groupOwnerID == 0) 138 continue; 139 groupOwnerName = phpbbUserDAO.getUserNameFromUserID(groupOwnerID); 140 } 141 int groupOption = 0; 142 String groupDesc = phpbbGroup.getgroup_description(); 143 144 Collection userGroupBeans = phpbbUserGroupDAO.getBeansByGroupID(groupID); 145 146 Collection groupMemberTypes = new ArrayList (); 147 for (Iterator userGroupIter = userGroupBeans.iterator(); userGroupIter.hasNext();) { 148 PhpbbUserGroup phpbbUserGroup = (PhpbbUserGroup) userGroupIter.next(); 149 int memberID = phpbbUserGroup.getuser_id(); 150 String memberName = phpbbUserDAO.getUserNameFromUserID(memberID); 151 152 int privilege = 0; 153 String creationDate = ImportExportUtil.dateTimeFormat(new Timestamp (0)); 154 String modifiedDate = creationDate; 155 GroupMemberType groupMemberType = groupListDAO.getGroupMemberType(memberName, privilege, creationDate, 156 modifiedDate); 157 groupMemberTypes.add(groupMemberType); 158 } 159 GroupMemberList groupMemberList = groupListDAO.getGroupMemberList(groupMemberTypes); 160 161 Collection globalPermissionList = new ArrayList (); 164 if (groupName.equalsIgnoreCase("Anonymous")) { 165 globalPermissionList.add(new Integer (GROUP_GUEST_PERMISSION)); 166 } 167 if (groupName.equalsIgnoreCase("Admin")) { 168 globalPermissionList.add(new Integer (GROUP_ADMIN_PERMISSION)); 169 } 170 GlobalPermissionList globalPermissionLists = groupListDAO.getGlobalPermissionList(globalPermissionList); 171 String groupCreationDate = ImportExportUtil.dateTimeFormat(new Timestamp (0)); 173 String groupModifiedDate = ImportExportUtil.dateTimeFormat(new Timestamp (0)); 174 GroupType groupType = groupListDAO.getGroupType(groupName, groupDesc, groupOption, groupOwnerName, 175 groupCreationDate, groupModifiedDate, globalPermissionLists, groupMemberList); 176 groupTypes.add(groupType); 177 } 178 179 GroupListType groupListType = groupListDAO.getGroupListType(groupTypes); 180 mvnforum.setGroupList(groupListType); 181 } 182 183 187 public void exportRankList() 188 throws JAXBException, DatabaseException { 189 RankListDAO rankListDAO = new RankListDAO(); 190 PhpbbRanksDAO phpbbRanksDAO = factory.getPhpbbRanksDAO(); 191 192 Collection phpbbRanks = phpbbRanksDAO.getBeans(); 193 Collection rankTypes = new ArrayList (); 194 195 for (Iterator phpbbrankIter = phpbbRanks.iterator(); phpbbrankIter.hasNext();) { 196 PhpbbRanks phpbbRank = (PhpbbRanks) phpbbrankIter.next(); 197 198 int rankMinposts = phpbbRank.getrank_min(); 199 int rankLevel = 0; 200 String rankTitle = phpbbRank.getrank_title(); 201 String rankImage = phpbbRank.getrank_image(); 202 int rankType1 = 0; 203 int rankOption = 0; 204 205 RankType rankType = rankListDAO.getRankType(rankMinposts, rankLevel, rankTitle, rankImage, rankType1, 206 rankOption); 207 rankTypes.add(rankType); 208 } 209 RankListType rankListType = rankListDAO.getRankListType(rankTypes); 210 mvnforum.setRankList(rankListType); 211 } 212 213 public void exportCategoryList() 214 throws JAXBException, DatabaseException, ObjectNotFoundException { 215 PhpbbCategoriesDAO phpbbCategoriesDAO = factory.getPhpbbCategoriesDAO(); 216 PhpbbForumDAO phpbbForumDAO = factory.getPhpbbForumDAO(); 217 PhpbbPostDAO phpbbPostDAO = factory.getPhpbbPostDAO(); 218 PhpbbUserDAO phpbbUserDAO = factory.getPhpUserDAO(); 219 PhpbbTopicsDAO phpbbTopicsDAO = factory.getPhpbbTopicsDAO(); 220 PhpbbPostTextDAO phpbbPostTextDAO = factory.getPhpbbPostTextDAO(); 221 PhpbbTopicsWatchDAO phpbbTopicsWatchDAO = factory.getPhpbbTopicsWatchDAO(); 222 PhpbbAuthAccessDAO phpbbAuthAccessDAO = factory.getPhpbbAuthAccessDAO(); 223 PhpbbGroupDAO phpbbGroupDAO = factory.getPhpbbGroupDAO(); 224 225 CategoryListDAO categoryListDAO = new CategoryListDAO(); 226 Collection phpbbCategoriesBeans = phpbbCategoriesDAO.getBeans(); 227 Collection categoryTypes = new ArrayList (); 228 229 for (Iterator iter = phpbbCategoriesBeans.iterator(); iter.hasNext();) { 230 PhpbbCategories phpbbCategories = (PhpbbCategories) iter.next(); 231 int catID = phpbbCategories.getCatId(); 232 233 Collection forumTypes = new ArrayList (); 234 Collection phpbbForumBeans = phpbbForumDAO.getBeansByCategoryID(catID); 235 for (Iterator forumIter = phpbbForumBeans.iterator(); forumIter.hasNext();) { 236 PhpbbForum phpbbForum = (PhpbbForum) forumIter.next(); 237 int forumID = phpbbForum.getforum_id(); 238 239 Collection threadTypes = new ArrayList (); 240 Collection phpbbTopicBeans = phpbbTopicsDAO.getBeansByForumID(forumID); 241 for (Iterator threadIter = phpbbTopicBeans.iterator(); threadIter.hasNext();) { 242 PhpbbTopics bean = (PhpbbTopics) threadIter.next(); 243 int threadID = bean.gettopic_id(); 244 245 Collection postLists = new ArrayList (); 246 Collection phpbbPostBeans = phpbbPostDAO.getBeansByThreadID(threadID); 247 for (Iterator postIter = phpbbPostBeans.iterator(); postIter.hasNext();) { 248 PhpbbPost phpbbPost = (PhpbbPost) postIter.next(); 249 int postID = phpbbPost.getpost_id(); 250 251 Collection attachmentTypes = new ArrayList (); 253 AttachmentList attachmentList = categoryListDAO.getAttachmentList(attachmentTypes); 255 256 int memberID = phpbbPost.getposter_id(); 257 Collection ppidrs = phpbbPostDAO.getPostIDsFromTopicID(threadID); 258 int ppid = 0; 259 for (Iterator ppidrsIter = ppidrs.iterator(); ppidrsIter.hasNext();) { 260 PhpbbPost phpbbPost_Top = (PhpbbPost) ppidrsIter.next(); 261 int ppidtmp = phpbbPost_Top.getpost_id(); 262 if (ppidtmp == postID) 263 break; 264 else 265 ppid = ppidtmp; 266 } 267 268 String memberName = phpbbUserDAO.getUserNameFromUserID(memberID); 269 270 String lastEditMemberName = memberName; 271 PhpbbPostText phpbbPostText = phpbbPostTextDAO.getBean(postID); 272 String postTopic = ImportExportUtil.wrapit(phpbbPostText.getpost_subject()); 273 String postBody = ImportExportUtil.wrapit(phpbbPostText.getpost_text()); 274 275 String postCreationDate = ImportExportUtil.dateTimeFormat((long) phpbbPost.getpost_time()); 276 String postLastEditDate = postCreationDate; 277 String postCreationIP = ImportExportUtil.wrapit(ImportExportUtil.HexIPtoString(phpbbPost 278 .getposter_ip())); 279 String postLastEditIP = postCreationIP; 280 int postEditCount = phpbbPost.getpost_edit_count(); 281 int postFormatOption = 0; 282 int postOption = 0; 283 int postStatus = 0; 284 String postIcon = ""; 285 int postAttachCount = 0; 286 287 PostType postType = categoryListDAO.getPostType(memberName, lastEditMemberName, postTopic, 288 postBody, postCreationDate, postLastEditDate, postCreationIP, postLastEditIP, 289 postEditCount, postFormatOption, postOption, postStatus, postIcon, postAttachCount, 290 attachmentList, categoryListDAO.getPortList()); 291 postLists.add(postType); 292 } 293 PostList postList = categoryListDAO.getPostList(postLists); 294 296 Collection favoriteThreadTypes = new ArrayList (); 298 FavoriteThreadList favoriteThreadList = categoryListDAO.getFavoriteThreadList(favoriteThreadTypes); 299 301 Collection threadWatchTypes = new ArrayList (); 303 Collection phpbbTopicWatchs = phpbbTopicsWatchDAO.getBeansByTopicID(threadID); 304 for (Iterator topicWatchIter = phpbbTopicWatchs.iterator(); topicWatchIter.hasNext();) { 305 PhpbbTopicsWatch phpbbTopicsWatch = (PhpbbTopicsWatch) topicWatchIter.next(); 306 int memberID = phpbbTopicsWatch.getuser_id(); 307 String memberName = phpbbUserDAO.getUserNameFromUserID(memberID); 308 int watchType = 0; 309 int watchOption = 0; 310 int watchStatus = 0; 311 String watchCreationDate = ImportExportUtil.dateTimeFormat(new Timestamp (0)); 312 String watchLastSentDate = watchCreationDate; 313 String watchEndDate = watchCreationDate; 314 315 ThreadWatchType threadWatchType = categoryListDAO.getThreadWatchType(memberName, watchType, 316 watchOption, watchStatus, watchCreationDate, watchLastSentDate, watchEndDate); 317 threadWatchTypes.add(threadWatchType); 318 } 319 ThreadWatchList threadWatchList = categoryListDAO.getThreadWatchList(threadWatchTypes); 320 321 int memberID = bean.gettopic_poster(); 322 String memberName = memberName = phpbbUserDAO.getUserNameFromUserID(memberID); 323 324 String lastPostMemberName = lastPostMemberName = phpbbUserDAO.getUserNameFromUserID(memberID); 325 String threadTopic = bean.gettopic_title(); 326 327 String threadBody = ""; 328 int first_post_id = bean.gettopic_first_post_id(); 329 try { 330 threadBody = phpbbPostTextDAO.getPostTextFromPostID(first_post_id); 331 } catch (ObjectNotFoundException oe) { 332 } 333 threadBody = ImportExportUtil.wrapit(ImportExportUtil.stripPHPBBQuotes(threadBody)); 334 335 int threadVoteCount = 0; 336 int threadVoteTotalStars = 0; 337 String threadCreationDate = ImportExportUtil.dateTimeFormat((int) bean.gettopic_time()); 338 339 String threadLastPostDate = ImportExportUtil.dateTimeFormat(new Timestamp (0)); 340 int last_post_id = bean.gettopic_last_post_id(); 341 try { 342 threadLastPostDate = ImportExportUtil.dateTimeFormat(phpbbPostDAO 343 .getPostTimeFromPostID(last_post_id)); 344 } catch (ObjectNotFoundException oe) { 345 } 346 347 int threadType1 = 0; 348 int threadOption = 0; 349 int threadStatus = bean.gettopic_status(); 350 int threadHasPoll = bean.gettopic_vote(); 351 int threadViewCount = bean.gettopic_views(); 352 int threadReplyCount = bean.gettopic_replies(); 353 String threadIcon = ""; 354 int threadDuration = 0; 355 ThreadType threadType = categoryListDAO.getThreadType(memberName, lastPostMemberName, threadTopic, 357 threadBody, threadVoteCount, threadVoteTotalStars, threadCreationDate, threadLastPostDate, 358 threadType1, threadOption, threadStatus, threadHasPoll, threadViewCount, threadReplyCount, 359 threadIcon, threadDuration, threadWatchList, favoriteThreadList, postList); 360 threadTypes.add(threadType); 361 } 362 ThreadList threadList = categoryListDAO.getThreadList(threadTypes); 363 Collection forumWatchLists = new ArrayList (); 366 ForumWatchList forumWatchList = categoryListDAO.getForumWatchList(forumWatchLists); 367 369 Collection groupForumPermissionTypes = new ArrayList (); 370 Collection phpbbAuthAccesses = phpbbAuthAccessDAO.getBeansByForumID(forumID); 371 for (Iterator authIter = phpbbAuthAccesses.iterator(); authIter.hasNext(); ) { 372 PhpbbAuthAccess phpbbAuthAccess = (PhpbbAuthAccess) authIter.next(); 373 374 int groupID = phpbbAuthAccess.getgroup_id(); 375 PhpbbGroup phpbbGroup = phpbbGroupDAO.getTruthGroup(groupID); 376 if (phpbbGroup == null) continue; 377 String groupName = phpbbGroup.getgroup_name(); 378 379 if (phpbbAuthAccess.getauth_mod() == 1) { 380 GroupForumPermissionType groupForumPermissionType = categoryListDAO.getGroupForumPermissionType(groupName, 106); 381 groupForumPermissionTypes.add(groupForumPermissionType); 382 } 383 384 if (phpbbAuthAccess.getauth_edit() == 1) { 385 GroupForumPermissionType groupForumPermissionType = categoryListDAO.getGroupForumPermissionType(groupName, 2000); 386 GroupForumPermissionType groupForumPermissionType1 = categoryListDAO.getGroupForumPermissionType(groupName, 2103); 387 groupForumPermissionTypes.add(groupForumPermissionType); 388 groupForumPermissionTypes.add(groupForumPermissionType1); 389 } 390 391 if (phpbbAuthAccess.getauth_delete() == 1) { 392 GroupForumPermissionType groupForumPermissionType = categoryListDAO.getGroupForumPermissionType(groupName, 2001); 393 GroupForumPermissionType groupForumPermissionType1 = categoryListDAO.getGroupForumPermissionType(groupName, 2104); 394 groupForumPermissionTypes.add(groupForumPermissionType); 395 groupForumPermissionTypes.add(groupForumPermissionType1); 396 } 397 398 if (phpbbAuthAccess.getauth_pollcreate() == 1) { 399 GroupForumPermissionType groupForumPermissionType = categoryListDAO.getGroupForumPermissionType(groupName, 2105); 400 GroupForumPermissionType groupForumPermissionType1 = categoryListDAO.getGroupForumPermissionType(groupName, 2106); 401 GroupForumPermissionType groupForumPermissionType2 = categoryListDAO.getGroupForumPermissionType(groupName, 2107); 402 groupForumPermissionTypes.add(groupForumPermissionType); 403 groupForumPermissionTypes.add(groupForumPermissionType1); 404 groupForumPermissionTypes.add(groupForumPermissionType2); 405 } 406 407 if (phpbbAuthAccess.getauth_attachments() == 1) { 408 GroupForumPermissionType groupForumPermissionType = categoryListDAO.getGroupForumPermissionType(groupName, 2109); 409 GroupForumPermissionType groupForumPermissionType1 = categoryListDAO.getGroupForumPermissionType(groupName, 2108); 410 groupForumPermissionTypes.add(groupForumPermissionType); 411 groupForumPermissionTypes.add(groupForumPermissionType1); 412 } 413 414 416 } 417 418 GroupForumPermissionList groupForumPermissionList = categoryListDAO 419 .getGroupForumPermissionList(groupForumPermissionTypes); 420 Collection memberForumPermissionTypes = new ArrayList (); 422 424 MemberForumPermissionList memberForumPermissionList = categoryListDAO 425 .getMemberForumPermissionList(memberForumPermissionTypes); 426 int last_post_id = phpbbForum.getforum_last_post_id(); 429 if (last_post_id == 0) { 430 continue; 431 } 432 String lastPostMemberName = phpbbUserDAO.getUserNameFromUserID(phpbbPostDAO 433 .getPosterIDFromPostID(last_post_id)); 434 444 String forumName = phpbbForum.getforum_name(); 445 String forumDesc = phpbbForum.getforum_desc(); 446 String forumCreationDate = ImportExportUtil.dateTimeFormat(new Timestamp (0)); 447 String forumModifiedDate = forumCreationDate; 448 String forumLastPostDate = forumCreationDate; 449 int forumOrder = phpbbForum.getforum_order(); 450 int forumFormatOption = 0; 452 int forumOption = 0; 453 int forumStatus = phpbbForum.getforum_status(); 454 int forumModerationMode = 0; 455 String forumPassword = ""; 456 int forumThreadCount = phpbbForum.getforum_topics(); 457 int forumPostCount = phpbbForum.getforum_posts(); 458 459 ForumType forumType = categoryListDAO.getForumType(lastPostMemberName, forumName, forumDesc, 460 forumCreationDate, forumModifiedDate, forumLastPostDate, forumOrder, forumFormatOption, 461 forumOption, forumStatus, forumModerationMode, forumPassword, forumThreadCount, forumPostCount, 462 memberForumPermissionList, groupForumPermissionList, forumWatchList, threadList); 463 forumTypes.add(forumType); 464 465 } 466 467 ForumList forumList = categoryListDAO.getForumList(forumTypes); 468 Collection categoryWatchs = new ArrayList (); 470 CategoryWatchList categoryWatchList = categoryListDAO.getCategoryWatchList(categoryWatchs); 472 String categoryName = phpbbCategories.getCatTitle(); 475 String categoryDesc = ""; 476 String categoryCreationDate = ImportExportUtil.dateTimeFormat(new Timestamp (0)); 477 String categoryModifiedDate = categoryCreationDate; 478 int categoryOrder = phpbbCategories.getCatOrder(); 479 int categoryOption = 0; 480 int categoryStatus = 0; 481 482 CategoryType categoryType = categoryListDAO.getCategoryType(categoryName, categoryDesc, 483 categoryCreationDate, categoryModifiedDate, categoryOrder, categoryOption, categoryStatus, 484 categoryWatchList, forumList, categoryListDAO.getCategoryListType()); 485 categoryTypes.add(categoryType); 486 } 487 CategoryListType categoryListType = categoryListDAO.getCategoryListType(categoryTypes); 488 489 mvnforum.setCategoryList(categoryListType); 490 } 491 492 public void exportMemberList() 493 throws DatabaseException, JAXBException, ObjectNotFoundException { 494 PhpbbUserDAO phpbbUserDAO = factory.getPhpUserDAO(); 495 PhpbbPrivmMsgsDAO phpbbPrivmMsgsDAO = factory.getPhpbbPrivmMsgsDAO(); 496 PhpbbTopicsWatchDAO phpbbTopicsWatchDAO = factory.getPhpbbTopicsWatchDAO(); 497 PhpbbPrivmMsgsTextDAO phpbbPrivmMsgsTextDAO = factory.getPhpbbPrivmMsgsTextDAO(); 498 499 MemberListDAO memberDAO = new MemberListDAO(); 500 501 Collection phpbbUserBeans = phpbbUserDAO.getBeans(); 502 Collection memberTypes = new ArrayList (); 503 504 for (Iterator iter = phpbbUserBeans.iterator(); iter.hasNext();) { 505 PhpbbUsers bean = (PhpbbUsers) iter.next(); 506 int memberID = bean.getUserId(); 507 String memberName = bean.getUsername(); 508 Collection globalWatchLists = new ArrayList (); 510 Collection phpbbTopicWatchs = phpbbTopicsWatchDAO.getBeans(memberID, 0); 511 for (Iterator topicWatchIter = phpbbTopicWatchs.iterator(); topicWatchIter.hasNext();) { 512 int watchType = 0; 513 int watchOption = 0; 514 int watchStatus = 0; 515 String watchCreationDate = ImportExportUtil.dateTimeFormat(new Timestamp (0)); 516 String watchLastSentDate = watchCreationDate; 517 String watchEndDate = watchCreationDate; 518 519 GlobalWatchType globalWatchType = memberDAO.getGlobalWatchType(watchType, watchOption, watchStatus, 520 watchCreationDate, watchLastSentDate, watchEndDate); 521 globalWatchLists.add(globalWatchType); 522 } 523 GlobalWatchList globalWatchList = memberDAO.getGlobalWatchList(globalWatchLists); 524 Collection messageFolders = new ArrayList (); 526 529 String folderCreationDate = ImportExportUtil.dateTimeFormat(new Timestamp (0)); 531 String folderModifiedDate = folderCreationDate; 532 533 Collection messageTypesInSaveBox = new ArrayList (); 534 Collection saveBoxMessages = phpbbPrivmMsgsDAO.getBeansByType(3, memberID); 535 for (Iterator receiveIter = saveBoxMessages.iterator(); receiveIter.hasNext();) { 536 PhpbbPrivmMsgs phpbbPrivmMsgs = (PhpbbPrivmMsgs) receiveIter.next(); 537 int messageID = phpbbPrivmMsgs.getprivmsgs_id(); 538 int receiverID = phpbbPrivmMsgs.getprivmsgs_from_userid(); 539 String messageSenderName = phpbbUserDAO.getUserNameFromUserID(receiverID); 540 String messageToList = memberName; 541 String folderName = "SaveBox"; 542 String messageCcList = ""; 543 String messageBccList = ""; 544 String messageTopic = Utils.wrapit(phpbbPrivmMsgs.getprivmsgs_subject()); 545 String messageBody = Utils.wrapit(phpbbPrivmMsgsTextDAO.getBean(messageID).getprivmsgs_text()); 546 int messageType = 0; 547 int messageOption = 0; 548 int messageStatus = 0; 549 int messageReadStatus = 1; 550 int messageNotify = 0; 551 String messageIcon = ""; 552 int messageAttachCount = 0; 553 String messageIP = Utils.wrapit(Utils.HexIPtoString(phpbbPrivmMsgs.getprivmsgs_ip())); 554 String messageCreationDate = ImportExportUtil.dateTimeFormat(phpbbPrivmMsgs.getprivmsgs_date()); 555 556 MessageType messageType2 = memberDAO.getMessageType(folderName, messageSenderName, messageToList, 557 messageCcList, messageBccList, messageTopic, messageBody, messageType, messageOption, 558 messageStatus, messageReadStatus, messageNotify, messageIcon, messageAttachCount, messageIP, 559 messageCreationDate); 560 messageTypesInSaveBox.add(messageType2); 561 } 562 MessageList messageListInSaveBox = memberDAO.getMessageList(messageTypesInSaveBox); 563 564 MessageFolderType inboxFolder = memberDAO.getMessageFolderType("SaveBox", 0, folderCreationDate, 565 folderModifiedDate, messageListInSaveBox); 566 messageFolders.add(inboxFolder); 567 568 Collection messageTypesInSentBox = new ArrayList (); 571 Collection sentBoxMessages = phpbbPrivmMsgsDAO.getBeansByTypeAndReceiveUser(2, memberID); 572 for (Iterator receiveIter = sentBoxMessages.iterator(); receiveIter.hasNext();) { 573 PhpbbPrivmMsgs phpbbPrivmMsgs = (PhpbbPrivmMsgs) receiveIter.next(); 574 int messageID = phpbbPrivmMsgs.getprivmsgs_id(); 575 String folderName = "SentBox"; 576 String messageSenderName = memberName; 577 int receiverID = phpbbPrivmMsgs.getprivmsgs_from_userid(); 578 String messageToList = phpbbUserDAO.getUserNameFromUserID(receiverID); 579 String messageCcList = ""; 580 String messageBccList = ""; 581 String messageTopic = Utils.wrapit(phpbbPrivmMsgs.getprivmsgs_subject()); 582 String messageBody = Utils.wrapit(phpbbPrivmMsgsTextDAO.getBean(messageID).getprivmsgs_text()); 583 int messageType = 0; 584 int messageOption = 0; 585 int messageStatus = 0; 586 int messageReadStatus = 1; 587 int messageNotify = 0; 588 String messageIcon = ""; 589 int messageAttachCount = 0; 590 String messageIP = Utils.wrapit(Utils.HexIPtoString(phpbbPrivmMsgs.getprivmsgs_ip())); 591 String messageCreationDate = ImportExportUtil.dateTimeFormat(phpbbPrivmMsgs.getprivmsgs_date()); 592 593 MessageType messageType2 = memberDAO.getMessageType(folderName, messageSenderName, messageToList, 594 messageCcList, messageBccList, messageTopic, messageBody, messageType, messageOption, 595 messageStatus, messageReadStatus, messageNotify, messageIcon, messageAttachCount, messageIP, 596 messageCreationDate); 597 messageTypesInSentBox.add(messageType2); 598 } 599 MessageList messageListInSentBox = memberDAO.getMessageList(messageTypesInSentBox); 600 MessageFolderType sendFolder = memberDAO.getMessageFolderType("SentBox", 1, folderCreationDate, 602 folderModifiedDate, messageListInSentBox); 603 messageFolders.add(sendFolder); 604 605 Collection messageTypesInOutBox = new ArrayList (); 606 Collection outBoxMessage = phpbbPrivmMsgsDAO.getBeansByTypeAndReceiveUser(1, memberID); 609 Collection outBoxMessage1 = phpbbPrivmMsgsDAO.getBeansByTypeAndReceiveUser(5, memberID); 610 611 for (Iterator iter1 = outBoxMessage1.iterator(); iter1.hasNext();) { 612 outBoxMessage.add(iter1.next()); 613 } 614 615 for (Iterator receiveIter = outBoxMessage.iterator(); receiveIter.hasNext();) { 616 PhpbbPrivmMsgs phpbbPrivmMsgs = (PhpbbPrivmMsgs) receiveIter.next(); 617 int messageID = phpbbPrivmMsgs.getprivmsgs_id(); 618 String folderName = "OutBox"; 619 String messageSenderName = memberName; 620 int receiverID = phpbbPrivmMsgs.getprivmsgs_from_userid(); 621 String messageToList = phpbbUserDAO.getUserNameFromUserID(receiverID); 622 String messageCcList = ""; 623 String messageBccList = ""; 624 String messageTopic = Utils.wrapit(phpbbPrivmMsgs.getprivmsgs_subject()); 625 String messageBody = Utils.wrapit(phpbbPrivmMsgsTextDAO.getBean(messageID).getprivmsgs_text()); 626 int messageType = 0; 627 int messageOption = 0; 628 int messageStatus = 0; 629 int messageReadStatus = 0; 630 int messageNotify = 0; 631 String messageIcon = ""; 632 int messageAttachCount = 0; 633 String messageIP = Utils.wrapit(Utils.HexIPtoString(phpbbPrivmMsgs.getprivmsgs_ip())); 634 String messageCreationDate = ImportExportUtil.dateTimeFormat(phpbbPrivmMsgs.getprivmsgs_date()); 635 636 MessageType messageType2 = memberDAO.getMessageType(folderName, messageSenderName, messageToList, 637 messageCcList, messageBccList, messageTopic, messageBody, messageType, messageOption, 638 messageStatus, messageReadStatus, messageNotify, messageIcon, messageAttachCount, messageIP, 639 messageCreationDate); 640 messageTypesInOutBox.add(messageType2); 641 } 642 MessageList messageListInOutBox = memberDAO.getMessageList(messageTypesInOutBox); 643 MessageFolderType draftFolder = memberDAO.getMessageFolderType("OutBox", 2, folderCreationDate, 645 folderModifiedDate, messageListInOutBox); 646 messageFolders.add(draftFolder); 647 648 Collection messageTypesInInBox = new ArrayList (); 649 Collection inBoxMessage = phpbbPrivmMsgsDAO.getBeansByType(1, memberID); 651 Collection inboxMessage1 = phpbbPrivmMsgsDAO.getBeansByType(5, memberID); 652 Collection inboxMessage2 = phpbbPrivmMsgsDAO.getBeansByType(0, memberID); 653 654 for (Iterator iter1 = inboxMessage1.iterator(); iter1.hasNext();) { 655 inBoxMessage.add(iter1.next()); 656 } 657 658 for (Iterator iter1 = inboxMessage2.iterator(); iter1.hasNext();) { 659 inBoxMessage.add(iter1.next()); 660 } 661 662 outBoxMessage.add(phpbbPrivmMsgsDAO.getBeansByType(5, memberID)); 663 outBoxMessage.add(phpbbPrivmMsgsDAO.getBeansByType(0, memberID)); 664 for (Iterator receiveIter = inBoxMessage.iterator(); receiveIter.hasNext();) { 665 PhpbbPrivmMsgs phpbbPrivmMsgs = (PhpbbPrivmMsgs) receiveIter.next(); 666 int messageID = phpbbPrivmMsgs.getprivmsgs_id(); 667 String folderName = "InBox"; 668 int receiverID = phpbbPrivmMsgs.getprivmsgs_from_userid(); 669 String messageSenderName = phpbbUserDAO.getUserNameFromUserID(receiverID); 670 String messageToList = memberName; 671 String messageCcList = ""; 672 String messageBccList = ""; 673 String messageTopic = Utils.wrapit(phpbbPrivmMsgs.getprivmsgs_subject()); 674 String messageBody = Utils.wrapit(phpbbPrivmMsgsTextDAO.getBean(messageID).getprivmsgs_text()); 675 int messageType = 0; 676 int messageOption = 0; 677 int messageStatus = 0; 678 int messageRead = phpbbPrivmMsgs.getprivmsgs_type(); 679 int messageReadStatus = (messageRead == 5) || (messageRead == 1) ? 0 : 1; 680 int messageNotify = 0; 681 String messageIcon = ""; 682 int messageAttachCount = 0; 683 String messageIP = Utils.wrapit(Utils.HexIPtoString(phpbbPrivmMsgs.getprivmsgs_ip())); 684 String messageCreationDate = ImportExportUtil.dateTimeFormat(phpbbPrivmMsgs.getprivmsgs_date()); 685 686 MessageType messageType2 = memberDAO.getMessageType(folderName, messageSenderName, messageToList, 687 messageCcList, messageBccList, messageTopic, messageBody, messageType, messageOption, 688 messageStatus, messageReadStatus, messageNotify, messageIcon, messageAttachCount, messageIP, 689 messageCreationDate); 690 messageTypesInInBox.add(messageType2); 691 } 692 MessageList messageListInInBox = memberDAO.getMessageList(messageTypesInInBox); 693 MessageFolderType trashFolder = memberDAO.getMessageFolderType("InBox", 3, folderCreationDate, 695 folderModifiedDate, messageListInInBox); 696 messageFolders.add(trashFolder); 697 698 MessageFolderList messageFolderList = memberDAO.getMessageFolderList(messageFolders); 699 Collection globalPermissionLists = new ArrayList (); 701 int userLevel = bean.getUserLevel(); 702 if (userLevel == 1) { 704 globalPermissionLists.add(new Integer (100)); 705 } 706 if (userLevel == 2) { 707 globalPermissionLists.add(new Integer (106)); 708 } 709 GlobalPermissionList globalPermissionList = memberDAO.getGlobalPermissionList(globalPermissionLists); 710 712 String memberPassword = bean.getUserPassword(); 713 if (!memberPassword.equals("")) { 714 memberPassword = ImportExportUtil.wrapit(MD5.getBase64FromMD5(memberPassword)); 715 } 716 String memberFirstEmail = ImportExportUtil.wrapit(bean.getUserEmail()); 717 String memberEmail = memberFirstEmail; 718 719 int memberEmailVisible = bean.getUserViewemail(); 720 int memberNameVisible = 0; 722 String memberFirstIP = "0.0.0.0"; 723 String memberLastIP = "0.0.0.0"; 724 int memberViewCount = 0; 725 int memberPostCount = bean.getUserPosts(); 726 String memberCreationDate = ImportExportUtil.dateTimeFormat(bean.getUserRegdate()); 727 String memberModifiedDate = memberCreationDate; 728 String memberExpireDate = memberCreationDate; 729 String memberLastLogon = ImportExportUtil.dateTimeFormat(bean.getUserLastvisit()); 730 int memberOption = 0; 731 int memberStatus = 0; 732 String memberActivateCode = ""; 733 String memberTempPassword = ""; 734 int memberMessageCount = 0; 735 int memberMessageOption = 0; 736 int memberPostsPerPage = 10; int memberWarnCount = 0; 738 int memberVoteCount = 0; 739 int memberVoteTotalStars = 0; 740 int memberRewardPoints = 0; 741 String memberTitle = ""; 742 743 double tzone = bean.getUserTimezone().doubleValue(); 744 745 String memberSignature = ImportExportUtil.wrapit(bean.getUserSig()); 746 String memberAvatar = ImportExportUtil.wrapit(bean.getUserAvatar()); 747 String memberSkin = ""; 748 750 String memberLanguage = "en"; 752 753 String memberFirstname = memberName; 755 String memberLastname = ""; 757 758 int memberGender = 0; 760 String memberBirthday = ImportExportUtil.dateTimeFormat(new Timestamp (0)); 761 String memberAddress = bean.getUserFrom(); 762 String memberCity = ""; 763 String memberState = ""; 764 String memberCountry = ""; 765 String memberPhone = ""; 766 String memberMobile = ""; 767 String memberFax = ""; 768 String memberCareer = ImportExportUtil.wrapit(bean.getUserOcc()); 769 String memberHomepage = ImportExportUtil.wrapit(bean.getUserWebsite()); 770 String memberYahoo = ImportExportUtil.wrapit(bean.getUserYim()); 771 String memberAol = ImportExportUtil.wrapit(bean.getUserAim()); 772 String memberIcq = ""; 773 String memberMsn = ImportExportUtil.wrapit(bean.getUserMsnm()); 774 String memberCoolLink1 = ImportExportUtil.wrapit(bean.getUserInterests()); 777 String memberCoolLink2 = ""; 778 779 MemberType memberType = memberDAO.getMemberList(memberName, memberPassword, memberFirstEmail, memberEmail, 780 memberEmailVisible, memberNameVisible, memberFirstIP, memberLastIP, memberViewCount, 781 memberPostCount, memberCreationDate, memberModifiedDate, memberExpireDate, memberLastLogon, 782 memberOption, memberStatus, memberActivateCode, memberTempPassword, memberMessageCount, 783 memberMessageOption, memberPostsPerPage, memberWarnCount, memberVoteCount, memberVoteTotalStars, 784 memberRewardPoints, memberTitle, tzone, memberSignature, memberAvatar, memberSkin, memberLanguage, 785 memberFirstname, memberLastname, memberGender, memberBirthday, memberAddress, memberCity, 786 memberState, memberCountry, memberPhone, memberMobile, memberFax, memberCareer, memberHomepage, 787 memberYahoo, memberAol, memberIcq, memberMsn, memberCoolLink1, memberCoolLink2, 788 globalPermissionList, messageFolderList, globalWatchList); 789 790 memberTypes.add(memberType); 791 } 792 MemberListType memberListType = memberDAO.getMemberListType(memberTypes); 793 mvnforum.setMemberList(memberListType); 794 } 795 796 public void importRank() 797 throws JAXBException, CreateException, DatabaseException, DuplicateKeyException { 798 RankListDAO rankListDAO = new RankListDAO(); 799 RankDAO rankDAO = factory.getRankDAO(); 800 List rankTypes = rankListDAO.importRankType(); 801 for (int i = 0; i < rankTypes.size(); i++) { 802 RankType rankType = (RankType) rankTypes.get(i); 803 804 int rankMinPosts = rankType.getRankMinPosts(); 805 int rankLevel = rankType.getRankLevel(); 806 String rankTitle = rankType.getRankTitle(); 807 String rankImage = rankType.getRankImage(); 808 int rankType1 = rankType.getRankType(); 809 int rankOption = rankType.getRankOption(); 810 811 rankDAO.create(rankMinPosts, rankLevel, rankTitle, rankImage, rankType1, rankOption); 812 } 813 } 814 815 public void importGroup() 816 throws JAXBException, CreateException, DatabaseException, DuplicateKeyException, ForeignKeyNotFoundException, 817 ParseException , ObjectNotFoundException { 818 GroupListDAO groupListDAO = new GroupListDAO(); 819 GroupsDAO groupsDAO = factory.getGroupsDAO(); 820 GroupPermissionDAO groupPermissionDAO = factory.getGroupPermissionDAO(); 821 List groupTypes = groupListDAO.importGroupTypes(); 822 823 for (int i = 0; i < groupTypes.size(); i++) { 824 GroupType groupType = (GroupType) groupTypes.get(i); 825 826 String groupName = groupType.getGroupName(); 827 String groupDesc = groupType.getGroupDesc(); 828 int groupOption = groupType.getGroupOption(); 829 String groupOwnerName = groupType.getGroupOwnerName(); 830 Timestamp groupCreationDate = ImportExportUtil.string2TimeStamp(groupType.getGroupCreationDate()); 831 Timestamp groupModifiedDate = ImportExportUtil.string2TimeStamp(groupType.getGroupModifiedDate()); 832 833 if (groupName.equalsIgnoreCase("Anonymous")) { 834 groupsDAO.update(1, groupName, groupDesc, groupModifiedDate); 835 groupsDAO.updateOwner(1, groupOwnerName, groupModifiedDate); 836 } else if (groupName.equalsIgnoreCase("Admin")) { 837 groupsDAO.update(2, groupName, groupDesc, groupModifiedDate); 838 groupsDAO.updateOwner(2, groupOwnerName, groupModifiedDate); 839 } else { 840 groupsDAO.create(groupOwnerName, groupName, groupDesc, groupOption, groupCreationDate, 841 groupModifiedDate); 842 } 843 int groupID = groupsDAO.getGroupIDFromGroupName(groupName); 844 GlobalPermissionList globalPermissionList = groupType.getGlobalPermissionList(); 846 List globalPermissionLists = globalPermissionList.getGlobalPermission(); 847 for (int j = 0; j < globalPermissionLists.size(); j++) { 848 groupPermissionDAO.create(groupID, ((Integer ) globalPermissionLists.get(j)).intValue()); 849 } 850 } 851 } 852 853 public void importMember() 854 throws JAXBException, ParseException , CreateException, DatabaseException, DuplicateKeyException, 855 ObjectNotFoundException, ForeignKeyNotFoundException { 856 MemberListDAO memberListDAO = new MemberListDAO(); 857 MemberDAO memberDAO = factory.getMemberDAO(); 858 MessageFolderDAO messageFolderDAO = factory.getMessageFolderDAO(); 859 MemberPermissionDAO memberPermissionDAO = factory.getMemberPermissionDAO(); 860 MessageDAO messageDAO = factory.getMessageDAO(); 861 WatchDAO watchDAO = factory.getWatchDAO(); 862 863 List memeberTypes = memberListDAO.importMemberList(); 864 865 for (int i = 0; i < memeberTypes.size(); i++) { 866 MemberType memberType = (MemberType) memeberTypes.get(i); 867 868 String memberName = memberType.getMemberName(); 869 System.out.println("memberName " + memberName); 870 String memberPassword = memberType.getMemberPassword().trim(); 871 874 String memberFirstEmail = memberType.getMemberFirstEmail(); 875 String memberEmail = memberType.getMemberEmail(); 876 877 int memberEmailVisible = memberType.getMemberEmailVisible(); 878 int memberNameVisible = memberType.getMemberNameVisible(); 879 String memberFirstIP = memberType.getMemberFirstIP(); 880 String memberLastIP = memberType.getMemberLastIP(); 881 int memberViewCount = memberType.getMemberViewCount(); 882 int memberPostCount = memberType.getMemberPostCount(); 883 Timestamp memberCreationDate = ImportExportUtil.string2TimeStamp(memberType.getMemberCreationDate()); 884 Timestamp memberModifiedDate = ImportExportUtil.string2TimeStamp(memberType.getMemberModifiedDate()); 885 Timestamp memberExpireDate = ImportExportUtil.string2TimeStamp(memberType.getMemberExpireDate()); 886 Timestamp memberLastLogon = ImportExportUtil.string2TimeStamp(memberType.getMemberLastLogon()); 887 int memberOption = memberType.getMemberOption(); 888 int memberStatus = memberType.getMemberStatus(); 889 String memberActivateCode = memberType.getMemberActivateCode(); 890 String memberTempPassword = memberType.getMemberTempPassword(); 891 int memberMessageCount = memberType.getMemberMessageCount(); 892 int memberMessageOption = memberType.getMemberMessageOption(); 893 int memberPostsPerPage = memberType.getMemberPostsPerPage(); 894 int memberWarnCount = memberType.getMemberWarnCount(); 895 int memberVoteCount = memberType.getMemberVoteCount(); 896 int memberVoteTotalStars = memberType.getMemberVoteTotalStars(); 897 int memberRewardPoints = memberType.getMemberRewardPoints(); 898 String memberTitle = memberType.getMemberTitle(); 899 900 double tzone = memberType.getMemberTimeZone(); 901 902 String memberSignature = memberType.getMemberSignature(); 903 String memberAvatar = memberType.getMemberAvatar(); 904 String memberSkin = memberType.getMemberSkin(); 905 String memberLanguage = memberType.getMemberLanguage(); 906 String memberFirstname = memberType.getMemberFirstname(); 907 String memberLastname = memberType.getMemberLastname(); 908 909 int memberGender = memberType.getMemberGender(); 910 Date memberBirthday = ImportExportUtil.string2Date(memberType.getMemberBirthday()); 911 String memberAddress = memberType.getMemberAddress(); 912 String memberCity = memberType.getMemberCity(); 913 String memberState = memberType.getMemberState(); 914 String memberCountry = memberType.getMemberCountry(); 915 String memberPhone = memberType.getMemberPhone(); 916 String memberMobile = memberType.getMemberMobile(); 917 String memberFax = memberType.getMemberFax(); 918 String memberCareer = memberType.getMemberCareer(); 919 String memberHomepage = memberType.getMemberHomepage(); 920 String memberYahoo = memberType.getMemberYahoo(); 921 String memberAol = memberType.getMemberAol(); 922 String memberIcq = memberType.getMemberIcq(); 923 String memberMsn = memberType.getMemberMsn(); 924 String memberCoolLink1 = memberType.getMemberCoolLink1(); 925 String memberCoolLink2 = memberType.getMemberCoolLink2(); 926 927 if (memberName.equalsIgnoreCase("admin")) { 928 memberDAO.update(ADMIN_ID, memberName, memberPassword, memberFirstEmail, memberEmail, 929 memberEmailVisible, memberNameVisible, memberFirstIP, memberLastIP, memberViewCount, 930 memberPostCount, memberCreationDate, memberModifiedDate, memberExpireDate, memberLastLogon, 931 memberOption, memberStatus, memberActivateCode, memberTempPassword, memberMessageCount, 932 memberMessageOption, memberPostsPerPage, memberWarnCount, memberVoteCount, 933 memberVoteTotalStars, memberRewardPoints, memberTitle, tzone, memberSignature, memberAvatar, 934 memberSkin, memberLanguage, memberFirstname, memberLastname, memberGender, memberBirthday, 935 memberAddress, memberCity, memberState, memberCountry, memberPhone, memberMobile, memberFax, 936 memberCareer, memberHomepage, memberYahoo, memberAol, memberIcq, memberMsn, memberCoolLink1, 937 memberCoolLink2); 938 } else { 939 if (memberName.equalsIgnoreCase("Anonymous")) { 940 memberDAO.create(GUEST_ID, memberName, memberPassword, memberFirstEmail, memberEmail, 941 memberEmailVisible, memberNameVisible, memberFirstIP, memberLastIP, memberViewCount, 942 memberPostCount, memberCreationDate, memberModifiedDate, memberExpireDate, memberLastLogon, 943 memberOption, memberStatus, memberActivateCode, memberTempPassword, memberMessageCount, 944 memberMessageOption, memberPostsPerPage, memberWarnCount, memberVoteCount, 945 memberVoteTotalStars, memberRewardPoints, memberTitle, tzone, memberSignature, 946 memberAvatar, memberSkin, memberLanguage, memberFirstname, memberLastname, memberGender, 947 memberBirthday, memberAddress, memberCity, memberState, memberCountry, memberPhone, 948 memberMobile, memberFax, memberCareer, memberHomepage, memberYahoo, memberAol, memberIcq, 949 memberMsn, memberCoolLink1, memberCoolLink2); 950 } else { 951 memberDAO.create(memberName, memberPassword, memberFirstEmail, memberEmail, memberEmailVisible, 952 memberNameVisible, memberFirstIP, memberLastIP, memberViewCount, memberPostCount, 953 memberCreationDate, memberModifiedDate, memberExpireDate, memberLastLogon, memberOption, 954 memberStatus, memberActivateCode, memberTempPassword, memberMessageCount, 955 memberMessageOption, memberPostsPerPage, memberWarnCount, memberVoteCount, 956 memberVoteTotalStars, memberRewardPoints, memberTitle, tzone, memberSignature, 957 memberAvatar, memberSkin, memberLanguage, memberFirstname, memberLastname, memberGender, 958 memberBirthday, memberAddress, memberCity, memberState, memberCountry, memberPhone, 959 memberMobile, memberFax, memberCareer, memberHomepage, memberYahoo, memberAol, memberIcq, 960 memberMsn, memberCoolLink1, memberCoolLink2); 961 } 962 } 963 } 964 965 for (int i = 0; i < memeberTypes.size(); i++) { 966 MemberType memberType = (MemberType) memeberTypes.get(i); 967 String memberName = memberType.getMemberName(); 968 969 int memberID = memberDAO.getMemberFromMemberName(memberName).getMemberID(); 970 List messageFolderTypes = memberType.getMessageFolderList().getMessageFolder(); 971 for (int j = 0; j < messageFolderTypes.size(); j++) { 972 MessageFolderType messageFolderType = (MessageFolderType) messageFolderTypes.get(j); 973 974 String folderName = messageFolderType.getFolderName(); 975 int folderOrder = messageFolderType.getFolderOrder(); 976 int folderStatus = 0; 977 int folderType = 0; 978 int folderOption = 0; 979 Timestamp folderCreationDate = ImportExportUtil.string2TimeStamp(messageFolderType 980 .getFolderCreationDate()); 981 Timestamp folderModifiedDate = ImportExportUtil.string2TimeStamp(messageFolderType 982 .getFolderModifiedDate()); 983 984 messageFolderDAO.create(folderName, memberID, folderOrder, folderStatus, folderOption, folderType, 985 folderCreationDate, folderModifiedDate); 986 987 MessageList messageList = messageFolderType.getMessageList(); 989 List messageTypes = messageList.getMessage(); 990 for (int t = 0; t < messageTypes.size(); t++) { 991 MessageType messageType = (MessageType) messageTypes.get(t); 992 993 String messageSenderName = messageType.getMessageSenderName(); 994 int messageSenderID = memberDAO.getMemberFromMemberName(messageSenderName).getMemberID(); 995 String messageToList = messageType.getMessageToList(); 996 String messageCcList = messageType.getMessageCcList(); 997 String messageBccList = messageType.getMessageBccList(); 998 String messageTopic = messageType.getMessageTopic(); 999 String messageBody = messageType.getMessageBody(); 1000 int messageType1 = messageType.getMessageType(); 1001 int messageOption = messageType.getMessageOption(); 1002 int messageStatus = messageType.getMessageStatus(); 1003 int messageReadStatus = messageType.getMessageReadStatus(); 1004 int messageNotify = messageType.getMessageNotify(); 1005 String messageIcon = messageType.getMessageIcon(); 1006 int messageAttachCount = messageType.getMessageAttachCount(); 1007 String messageIP = messageType.getMessageIP(); 1008 Timestamp messageCreationDate = ImportExportUtil.string2TimeStamp(messageType.getMessageCreationDate()); 1009 1010 messageDAO.create(folderName, memberID, messageSenderID, messageSenderName, messageToList, messageCcList, 1011 messageBccList, messageTopic, messageBody, messageType1, messageOption, messageStatus, 1012 messageReadStatus, messageNotify, messageIcon, messageAttachCount, messageIP, 1013 messageCreationDate); 1014 } 1015 } 1016 1017 List globalPermissions = memberType.getGlobalPermissionList().getGlobalPermission(); 1019 for (int j = 0; j < globalPermissions.size(); j++) { 1020 int globalPermission = ((Integer )globalPermissions.get(j)).intValue(); 1021 memberPermissionDAO.create(memberID, globalPermission); 1022 } 1023 1024 List globalWatchs = memberType.getGlobalWatchList().getGlobalWatch(); 1026 for (int j = 0; j < globalWatchs.size(); j++) { 1027 GlobalWatchType globalWatchType = (GlobalWatchType) globalWatchs.get(j); 1028 1029 int categoryID = 0; 1030 int forumID = 0; 1031 int threadID = 0; 1032 int watchType = globalWatchType.getWatchType(); 1033 int watchOption = globalWatchType.getWatchOption(); 1034 int watchStatus = globalWatchType.getWatchStatus(); 1035 Timestamp watchCreationDate = ImportExportUtil.string2TimeStamp(globalWatchType.getWatchCreationDate()); 1036 Timestamp watchLastSentDate = ImportExportUtil.string2TimeStamp(globalWatchType.getWatchLastSentDate()); 1037 Timestamp watchEndDate = ImportExportUtil.string2TimeStamp(globalWatchType.getWatchEndDate()); 1038 watchDAO.create(memberID, categoryID, forumID, threadID, watchType, watchOption, watchStatus, 1039 watchCreationDate, watchLastSentDate, watchEndDate); 1040 1041 } 1042 } 1043 } 1044 1045 public void exportXML() 1046 throws FileNotFoundException , JAXBException { 1047 Marshaller marshaller = XMLUtil.getMarshaller(); 1048 marshaller.marshal(mvnforum, new FileOutputStream ("xml/mvnforum.xml")); 1049 } 1050 1051 public static void main(String [] args) 1052 throws CreateException, DatabaseException, DuplicateKeyException, ForeignKeyNotFoundException, ParseException , 1053 FileNotFoundException { 1054 try { 1055 ImportExportXML importExportXML = new ImportExportXML(); 1056 importExportXML.exportCategoryList(); 1060 importExportXML.exportXML(); 1062 System.out.println("done export."); 1065 } catch (JAXBException e) { 1066 e.printStackTrace(); 1068 } catch (DatabaseException e) { 1069 e.printStackTrace(); 1071 } catch (ObjectNotFoundException e) { 1072 e.printStackTrace(); 1074 } 1075 1076 } 1077} | Popular Tags |