MetaDataExchangeImplTest.java 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. package com.trs.exchange.metadata;
  2. import java.io.File;
  3. import com.trs.TRSWCMBaseTest;
  4. import com.trs.exchange.MyDBManager;
  5. import com.trs.infra.persistent.WCMFilter;
  6. import com.trs.infra.util.CMyException;
  7. import com.trs.infra.util.database.MysqlDB;
  8. public class MetaDataExchangeImplTest extends TRSWCMBaseTest {
  9. private static org.apache.log4j.Logger logger = org.apache.log4j.Logger
  10. .getLogger(MetaDataExchangeImplTest.class);
  11. public MetaDataExchangeImplTest(String name) {
  12. super(name);
  13. }
  14. /**
  15. * 测试简单元数据迁移
  16. */
  17. public void testCreateMetaViewDatas() {
  18. MyDBManager oMyDBManager = null;
  19. try {
  20. // 设定源数据库的信息
  21. // 支持的源数据库类型:OracleDB11G OracleDB SQLServerDB MysqlDB
  22. // SybaseASEWithJtds
  23. // DB2UDBV9 KingBaseDB
  24. oMyDBManager = new MyDBManager(
  25. "MySQL",
  26. "jdbc:mysql://127.0.0.1:3306/test?characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull",
  27. "root", "trsadmin", MysqlDB.class);
  28. WCMFilter oFilterForQuerySrcData = new WCMFilter("MyData", "", "",
  29. "MyTitle CTitle, MyContent CContent, MyId DocOutupId");
  30. // 设定源系统存放文件的信息
  31. MetaDataExchangeImpl oMetaDataExchange = new MetaDataExchangeImpl(
  32. oMyDBManager);
  33. // 目标栏目
  34. int nDstChannelId = 65;
  35. // 开始迁移
  36. oMetaDataExchange.createMetaViewDatas(m_oLoginUser,
  37. nDstChannelId, oFilterForQuerySrcData, "MyId", true);
  38. } catch (Exception ex) {
  39. logger.error("测试[testCreateMetaViewDatas]出现异常!", ex);
  40. fail("测试[testCreateMetaViewDatas]出现异常!\n"
  41. + CMyException.getStackTraceText(ex));
  42. } finally {
  43. if (oMyDBManager != null)
  44. oMyDBManager.close();
  45. }
  46. }
  47. /**
  48. * 测试包含视频的元数据迁移
  49. */
  50. public void testCreateMetaViewDatasContainMedia() {
  51. MyDBManager oMyDBManager = null;
  52. try {
  53. // 设定源数据库的信息
  54. // 支持的源数据库类型:OracleDB11G OracleDB SQLServerDB MysqlDB
  55. // SybaseASEWithJtds
  56. // DB2UDBV9 KingBaseDB
  57. oMyDBManager = new MyDBManager(
  58. "MySQL",
  59. "jdbc:mysql://127.0.0.1:3306/test?characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull",
  60. "root", "trsadmin", MysqlDB.class);
  61. WCMFilter oFilterForQuerySrcData = new WCMFilter("MyData", "", "",
  62. "MyTitle CTitle, MyContent CContent, MyId DocOutupId, MyMediaFile MyMediaFile");
  63. // 设定源系统存放文件的信息
  64. MetaDataExchangeImpl oMetaDataExchange = new MetaDataExchangeImpl(
  65. oMyDBManager);
  66. // 设置MAS相关信息
  67. int nDirId = 1; // Mas目录地址
  68. oMetaDataExchange.setMASInfo("http://127.0.0.1:8181/mas/", nDirId);
  69. // 目标栏目
  70. int nDstChannelId = 56;
  71. // 开始迁移
  72. oMetaDataExchange.createMetaViewDatas(m_oLoginUser,
  73. nDstChannelId, oFilterForQuerySrcData, "MyId", true);
  74. } catch (Exception ex) {
  75. logger.error("测试[testCreateMetaViewDatas]出现异常!", ex);
  76. fail("测试[testCreateMetaViewDatas]出现异常!\n"
  77. + CMyException.getStackTraceText(ex));
  78. } finally {
  79. if (oMyDBManager != null)
  80. oMyDBManager.close();
  81. }
  82. }
  83. }