PluginContext.java 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. package org.dbsyncer.sdk.plugin;
  2. import org.dbsyncer.sdk.connector.ConnectorInstance;
  3. import org.dbsyncer.sdk.enums.ModelEnum;
  4. import org.dbsyncer.sdk.model.Field;
  5. import java.util.List;
  6. import java.util.Map;
  7. /**
  8. * 插件转换上下文
  9. *
  10. * @author AE86
  11. * @version 1.0.0
  12. * @date 2022/10/28 20:26
  13. */
  14. public interface PluginContext extends BaseContext {
  15. /**
  16. * 获取同步方式
  17. *
  18. * @return
  19. */
  20. ModelEnum getModelEnum();
  21. /**
  22. * 是否终止同步数据到目标源库
  23. *
  24. * @return
  25. */
  26. boolean isTerminated();
  27. /**
  28. * 是否终止同步数据到目标源库
  29. * <p>true: 终止,默认值false
  30. *
  31. * @param terminated
  32. */
  33. void setTerminated(boolean terminated);
  34. /**
  35. * 目标源连接实例
  36. */
  37. ConnectorInstance getTargetConnectorInstance();
  38. /**
  39. * 数据源表
  40. */
  41. String getSourceTableName();
  42. /**
  43. * 目标源表
  44. */
  45. String getTargetTableName();
  46. /**
  47. * 增量同步,事件(INSERT/UPDATE/DELETE)
  48. */
  49. String getEvent();
  50. void setEvent(String event);
  51. /**
  52. * 目标字段
  53. */
  54. List<Field> getTargetFields();
  55. /**
  56. * 批量处理任务数
  57. */
  58. int getBatchSize();
  59. /**
  60. * 是否覆盖更新
  61. */
  62. boolean isForceUpdate();
  63. /**
  64. * 是否启用字段解析器
  65. */
  66. boolean isEnableSchemaResolver();
  67. /**
  68. * 数据源数据集合
  69. */
  70. List<Map> getSourceList();
  71. /**
  72. * 目标源源数据集合
  73. */
  74. List<Map> getTargetList();
  75. void setTargetList(List<Map> targetList);
  76. /**
  77. * 获取插件参数
  78. *
  79. * @return
  80. */
  81. String getPluginExtInfo();
  82. /**
  83. * 获取TraceId
  84. *
  85. * @return
  86. */
  87. String getTraceId();
  88. /**
  89. * 浅拷贝
  90. *
  91. * @return
  92. * @throws CloneNotSupportedException
  93. */
  94. Object clone() throws CloneNotSupportedException;
  95. }