类 DuckulaAssit
- java.lang.Object
-
- net.wicp.tams.common.binlog.alone.DuckulaAssit
-
public abstract class DuckulaAssit extends Object
-
-
字段概要
字段 修饰符和类型 字段 说明 static SimpleDateFormatformater
-
构造器概要
构造器 构造器 说明 DuckulaAssit()
-
方法概要
所有方法 静态方法 具体方法 修饰符和类型 方法 说明 static ListenerConf.DuckulaEvent.BuilderbuildSinglItemDuckulaEvent(ListenerConf.DuckulaEvent.Builder duckulaEventBuilder, int index)创建只有一个item的DuckulaEventstatic ListenerConf.DuckulaEventconvertEvent(ListenerConf.DuckulaEvent oriEvent, net.wicp.tams.common.constant.FieldFormart fieldFormart)转换字段名static com.alibaba.fastjson.JSONObjectconvertJson(ListenerConf.DuckulaEvent duckulaEvent)static StringgetAddColValue(ListenerConf.DuckulaEvent duckulaEvent, net.wicp.tams.common.constant.ods.AddColName addColName)static Map<net.wicp.tams.common.constant.ods.AddColName,Serializable>getAddColValues(ListenerConf.DuckulaEvent duckulaEvent, net.wicp.tams.common.constant.ods.AddColNameType addColNameType)通过duckula数据反推得到附加字段,static Map<String,String>getAddColValuesStr(Map<net.wicp.tams.common.constant.ods.AddColName,Serializable> addValues, net.wicp.tams.common.constant.FieldFormart fieldFormart)static Map<String,String>getAddColValuesStr(ListenerConf.DuckulaEvent duckulaEvent, net.wicp.tams.common.constant.ods.AddColNameType addColNameType, net.wicp.tams.common.constant.FieldFormart fieldFormart)static byte[]getBytes(String filePath)static com.alibaba.fastjson.JSONObjectgetChangedUpdateBefore(ListenerConf.DuckulaEvent duckulaEvent, int index)得到update类型的before值,有些对冲逻辑会有需要。static Map<String,String>getColNamesMap(ListenerConf.DuckulaEvent duckulaEvent, net.wicp.tams.common.constant.FieldFormart fieldFormart)static <T extends Serializable>
List<org.apache.commons.lang3.tuple.Pair<String,T>>getKey(ListenerConf.DuckulaEvent.Builder duckulaEventBuilder, int index)static String[]getKeyColname(ListenerConf.DuckulaEvent duckulaEvent)得到主键名static StringgetKeyJoin(ListenerConf.DuckulaEvent.Builder duckulaEventBuilder, int index, String splitChat)static com.alibaba.fastjson.JSONObjectgetKeyJson(ListenerConf.DuckulaEvent.Builder duckulaEventBuilder, int index)static ListenerConf.Position.BuildergetMastStatus(Connection conn)得到mysql的当前位点static SerializablegetValue(ListenerConf.ColumnType columnType, String value)static <T extends Serializable>
TgetValue(ListenerConf.DuckulaEvent duckulaEvent, int index, String colName)static <T extends Serializable>
TgetValue(ListenerConf.DuckulaEvent duckulaEvent, int index, String colName, boolean isAfter)static <T extends Serializable>
TgetValueAfter(ListenerConf.DuckulaEvent duckulaEvent, int index, String colName)得到变化后数据的值static <T extends Serializable>
TgetValueBefore(ListenerConf.DuckulaEvent duckulaEvent, int index, String colName)static Map<String,String>getValueMap(ListenerConf.DuckulaEvent duckulaEvent, int index)static StringgetValueStr(ListenerConf.DuckulaEvent duckulaEvent, int index, String colName)static StringgetValueStr(ListenerConf.DuckulaEvent duckulaEvent, int index, String colName, boolean isAfter)static booleanisAfter(ListenerConf.OptType optType)选取的操作类型static booleanisEmpty(CharSequence cs)static ListenerConf.DuckulaEventparse(byte[] data)static List<ListenerConf.DuckulaEvent>parseForUpsetKafka(ListenerConf.DuckulaEvent oriData, String changeColName, String delValue, net.wicp.tams.common.constant.dic.YesOrNo logic)逻辑删除变为物理删除。static org.apache.commons.lang3.tuple.Pair<com.alibaba.fastjson.JSONObject,ListenerConf.DuckulaEvent>parseHedge(byte[] data, String changeColName, boolean isLogic)得到对冲逻辑,item只有一条记录。
-
-
-
字段详细资料
-
formater
public static SimpleDateFormat formater
-
-
方法详细资料
-
parse
public static ListenerConf.DuckulaEvent parse(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
- 抛出:
com.google.protobuf.InvalidProtocolBufferException
-
parseForUpsetKafka
public static List<ListenerConf.DuckulaEvent> parseForUpsetKafka(ListenerConf.DuckulaEvent oriData, String changeColName, String delValue, net.wicp.tams.common.constant.dic.YesOrNo logic)
逻辑删除变为物理删除。 指定的列有修改表示删除,适合于源表为逻辑删除情况,多条拆分为- 参数:
oriData- 原始数据changeColName- 指定逻辑删除字段名delValue- 指定逻辑删除表示为删除的值logic- yes:物理删除变为逻辑删除,no:逻辑删除变为物理删除,null:不做改变- 返回:
-
parseHedge
public static org.apache.commons.lang3.tuple.Pair<com.alibaba.fastjson.JSONObject,ListenerConf.DuckulaEvent> parseHedge(byte[] data, String changeColName, boolean isLogic) throws com.google.protobuf.InvalidProtocolBufferException
得到对冲逻辑,item只有一条记录。- 参数:
data-changeColName-isLogic-- 返回:
- L:主键json R:数据
- 抛出:
com.google.protobuf.InvalidProtocolBufferException
-
isEmpty
public static boolean isEmpty(CharSequence cs)
-
getColNamesMap
public static Map<String,String> getColNamesMap(ListenerConf.DuckulaEvent duckulaEvent, net.wicp.tams.common.constant.FieldFormart fieldFormart)
-
convertEvent
public static ListenerConf.DuckulaEvent convertEvent(ListenerConf.DuckulaEvent oriEvent, net.wicp.tams.common.constant.FieldFormart fieldFormart)
转换字段名- 参数:
oriEvent-fieldFormart-- 返回:
-
getKey
public static <T extends Serializable> List<org.apache.commons.lang3.tuple.Pair<String,T>> getKey(ListenerConf.DuckulaEvent.Builder duckulaEventBuilder, int index)
-
getKeyColname
public static String[] getKeyColname(ListenerConf.DuckulaEvent duckulaEvent)
得到主键名- 参数:
duckulaEvent-- 返回:
-
getKeyJoin
public static String getKeyJoin(ListenerConf.DuckulaEvent.Builder duckulaEventBuilder, int index, String splitChat)
-
getKeyJson
public static com.alibaba.fastjson.JSONObject getKeyJson(ListenerConf.DuckulaEvent.Builder duckulaEventBuilder, int index)
-
buildSinglItemDuckulaEvent
public static ListenerConf.DuckulaEvent.Builder buildSinglItemDuckulaEvent(ListenerConf.DuckulaEvent.Builder duckulaEventBuilder, int index)
创建只有一个item的DuckulaEvent- 参数:
duckulaEventBuilder-index-- 返回:
-
getValueAfter
public static <T extends Serializable> T getValueAfter(ListenerConf.DuckulaEvent duckulaEvent, int index, String colName)
得到变化后数据的值- 参数:
duckulaEvent-colName-- 返回:
-
getValueBefore
public static <T extends Serializable> T getValueBefore(ListenerConf.DuckulaEvent duckulaEvent, int index, String colName)
-
getValue
public static <T extends Serializable> T getValue(ListenerConf.DuckulaEvent duckulaEvent, int index, String colName)
-
getValue
public static <T extends Serializable> T getValue(ListenerConf.DuckulaEvent duckulaEvent, int index, String colName, boolean isAfter)
-
getValue
public static Serializable getValue(ListenerConf.ColumnType columnType, String value)
-
getValueStr
public static String getValueStr(ListenerConf.DuckulaEvent duckulaEvent, int index, String colName)
-
getValueStr
public static String getValueStr(ListenerConf.DuckulaEvent duckulaEvent, int index, String colName, boolean isAfter)
-
isAfter
public static boolean isAfter(ListenerConf.OptType optType)
选取的操作类型- 参数:
optType-- 返回:
-
getValueMap
public static Map<String,String> getValueMap(ListenerConf.DuckulaEvent duckulaEvent, int index)
-
getBytes
public static byte[] getBytes(String filePath)
-
convertJson
public static com.alibaba.fastjson.JSONObject convertJson(ListenerConf.DuckulaEvent duckulaEvent)
-
getAddColValues
public static Map<net.wicp.tams.common.constant.ods.AddColName,Serializable> getAddColValues(ListenerConf.DuckulaEvent duckulaEvent, net.wicp.tams.common.constant.ods.AddColNameType addColNameType)
通过duckula数据反推得到附加字段,- 参数:
duckulaEvent-- 返回:
-
getAddColValue
public static String getAddColValue(ListenerConf.DuckulaEvent duckulaEvent, net.wicp.tams.common.constant.ods.AddColName addColName)
-
getChangedUpdateBefore
public static com.alibaba.fastjson.JSONObject getChangedUpdateBefore(ListenerConf.DuckulaEvent duckulaEvent, int index)
得到update类型的before值,有些对冲逻辑会有需要。- 参数:
duckulaEvent-index-- 返回:
-
getAddColValuesStr
public static Map<String,String> getAddColValuesStr(Map<net.wicp.tams.common.constant.ods.AddColName,Serializable> addValues, net.wicp.tams.common.constant.FieldFormart fieldFormart)
-
getAddColValuesStr
public static Map<String,String> getAddColValuesStr(ListenerConf.DuckulaEvent duckulaEvent, net.wicp.tams.common.constant.ods.AddColNameType addColNameType, net.wicp.tams.common.constant.FieldFormart fieldFormart)
-
getMastStatus
public static ListenerConf.Position.Builder getMastStatus(Connection conn)
得到mysql的当前位点- 参数:
conn- 数据库连接- 返回:
-
-