/** * DBSyncer Copyright 2020-2023 All Rights Reserved. */ package org.dbsyncer.parser; import org.dbsyncer.connector.enums.ConnectorEnum; import org.dbsyncer.connector.enums.FilterEnum; import org.dbsyncer.connector.enums.OperationEnum; import org.dbsyncer.listener.enums.QuartzFilterEnum; import org.dbsyncer.parser.enums.ConvertEnum; import org.dbsyncer.parser.model.ConfigModel; import org.dbsyncer.parser.model.Connector; import org.dbsyncer.parser.model.Mapping; import org.dbsyncer.parser.model.Meta; import org.dbsyncer.parser.model.ProjectGroup; import org.dbsyncer.parser.model.SystemConfig; import org.dbsyncer.parser.model.TableGroup; import org.dbsyncer.parser.model.UserConfig; import org.dbsyncer.storage.constant.ConfigConstant; import org.dbsyncer.storage.enums.StorageDataStatusEnum; import java.util.List; /** * 配置文件组件(system/user/connector/mapping/tableGroup/meta/projectGroup) *

* {@link ConfigConstant} * * @Version 1.0.0 * @Author AE86 * @Date 2023-11-13 20:48 */ public interface ProfileComponent { /** * 解析连接器配置为Connector * * @param json * @return */ Connector parseConnector(String json); /** * 解析配置 * * @param json * @param clazz * @param * @return */ T parseObject(String json, Class clazz); /** * 添加ConfigModel * * @param model * @return id */ String addConfigModel(ConfigModel model); /** * 编辑ConfigModel * * @param model * @return id */ String editConfigModel(ConfigModel model); /** * 刪除ConfigModel * * @param id * @return */ void removeConfigModel(String id); /** * 获取系统配置 * * @return */ SystemConfig getSystemConfig(); /** * 获取用户配置 * * @return */ UserConfig getUserConfig(); /** * 根据ID获取分组配置 * * @param id * @return */ ProjectGroup getProjectGroup(String id); /** * 获取所有的分组配置 * * @return */ List getProjectGroupAll(); /** * 根据ID获取连接器 * * @param connectorId * @return */ Connector getConnector(String connectorId); /** * 获取所有的连接器 * * @return */ List getConnectorAll(); // Mapping Mapping getMapping(String mappingId); List getMappingAll(); // TableGroup String addTableGroup(TableGroup model); String editTableGroup(TableGroup model); void removeTableGroup(String id); TableGroup getTableGroup(String tableGroupId); List getTableGroupAll(String mappingId); List getSortedTableGroupAll(String mappingId); int getTableGroupCount(String mappingId); // Meta Meta getMeta(String metaId); List getMetaAll(); /** * 获取所有连接器类型 * * @return */ List getConnectorEnumAll(); /** * 获取所有条件类型 * * @return */ List getOperationEnumAll(); /** * 获取过滤条件系统参数 * * @return */ List getQuartzFilterEnumAll(); /** * 获取所有运算符类型 * * @return */ List getFilterEnumAll(); /** * 获取所有转换类型 * * @return */ List getConvertEnumAll(); /** * 获取所有同步数据状态类型 * * @return */ List getStorageDataStatusEnumAll(); }