@@ -83,6 +83,29 @@ client.connect();
83
83
> By default, BinaryLogClient starts from the current (at the time of connect) master binlog position. If you wish to
84
84
kick off from a specific filename or position, use client.setBinlogFilename(...) + client.setBinlogPosition(...).
85
85
86
+ ### Controlling event deserialization
87
+
88
+ ``` java
89
+ EventDeserializer eventDeserializer = new EventDeserializer ();
90
+
91
+ // do not deserialize EXT_DELETE_ROWS event data, return it as a byte array
92
+ eventDeserializer. setEventDataDeserializer(EventType . EXT_DELETE_ROWS ,
93
+ new ByteArrayEventDataDeserializer ());
94
+
95
+ // skip EXT_WRITE_ROWS event data altogether
96
+ eventDeserializer. setEventDataDeserializer(EventType . EXT_WRITE_ROWS ,
97
+ new NullEventDataDeserializer ());
98
+
99
+ // use custom event data deserializer for EXT_DELETE_ROWS
100
+ eventDeserializer. setEventDataDeserializer(EventType . EXT_DELETE_ROWS ,
101
+ new EventDataDeserializer () {
102
+ ...
103
+ });
104
+
105
+ BinaryLogClient client = ...
106
+ client. setEventDeserializer(eventDeserializer);
107
+ ```
108
+
86
109
### Making client available through JMX
87
110
88
111
``` java
@@ -92,7 +115,8 @@ BinaryLogClient binaryLogClient = ...
92
115
ObjectName objectName = new ObjectName (" mysql.binlog:type=BinaryLogClient" );
93
116
mBeanServer. registerMBean(binaryLogClient, objectName);
94
117
95
- // following bean accumulates various BinaryLogClient stats (e.g. number of disconnects, skipped events)
118
+ // following bean accumulates various BinaryLogClient stats
119
+ // (e.g. number of disconnects, skipped events)
96
120
BinaryLogClientStatistics stats = new BinaryLogClientStatistics (binaryLogClient);
97
121
ObjectName statsObjectName = new ObjectName (" mysql.binlog:type=BinaryLogClientStatistics" );
98
122
mBeanServer. registerMBean(stats, statsObjectName);
0 commit comments