
top.javatool.canal.client.factory.AbstractModelFactory Maven / Gradle / Ivy
The newest version!
package top.javatool.canal.client.factory;
import top.javatool.canal.client.enums.TableNameEnum;
import top.javatool.canal.client.handler.EntryHandler;
import top.javatool.canal.client.util.GenericUtil;
import top.javatool.canal.client.util.HandlerUtil;
public abstract class AbstractModelFactory implements IModelFactory {
@Override
public R newInstance(EntryHandler entryHandler, T t) throws Exception {
String canalTableName = HandlerUtil.getCanalTableName(entryHandler);
if (TableNameEnum.ALL.name().toLowerCase().equals(canalTableName)) {
return (R) t;
}
Class tableClass = GenericUtil.getTableClass(entryHandler);
if (tableClass != null) {
return newInstance(tableClass, t);
}
return null;
}
abstract R newInstance(Class c, T t) throws Exception;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy