com.github.shyiko.mysql.binlog.BinaryLogClient.registerEventListener()方法的使用及代码示例

x33g5p2x  于2022-01-17 转载在 其他  
字(6.1k)|赞(0)|评价(0)|浏览(110)

本文整理了Java中com.github.shyiko.mysql.binlog.BinaryLogClient.registerEventListener()方法的一些代码示例,展示了BinaryLogClient.registerEventListener()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。BinaryLogClient.registerEventListener()方法的具体详情如下:
包路径:com.github.shyiko.mysql.binlog.BinaryLogClient
类名称:BinaryLogClient
方法名:registerEventListener

BinaryLogClient.registerEventListener介绍

[英]Register event listener. Note that multiple event listeners will be called in order they where registered.
[中]注册事件侦听器。请注意,将按注册位置的顺序调用多个事件侦听器。

代码示例

代码示例来源:origin: shyiko/mysql-binlog-connector-java

public BinaryLogClientStatistics(BinaryLogClient binaryLogClient) {
  binaryLogClient.registerEventListener(this);
  binaryLogClient.registerLifecycleListener(this);
}

代码示例来源:origin: apache/nifi

binlogClient.registerEventListener(eventListener);

代码示例来源:origin: apache/rocketmq-externals

public void start() throws Exception {
  initDataSource();
  binlogPositionManager = new BinlogPositionManager(config, dataSource);
  binlogPositionManager.initBeginPosition();
  schema = new Schema(dataSource);
  schema.load();
  eventListener = new EventListener(queue);
  binaryLogClient = new BinaryLogClient(config.mysqlAddr,
    config.mysqlPort,
    config.mysqlUsername,
    config.mysqlPassword);
  binaryLogClient.setBlocking(true);
  binaryLogClient.setServerId(1001);
  EventDeserializer eventDeserializer = new EventDeserializer();
  eventDeserializer.setCompatibilityMode(EventDeserializer.CompatibilityMode.DATE_AND_TIME_AS_LONG,
    EventDeserializer.CompatibilityMode.CHAR_AND_BINARY_AS_BYTE_ARRAY);
  binaryLogClient.setEventDeserializer(eventDeserializer);
  binaryLogClient.registerEventListener(eventListener);
  binaryLogClient.setBinlogFilename(binlogPositionManager.getBinlogFilename());
  binaryLogClient.setBinlogPosition(binlogPositionManager.getPosition());
  binaryLogClient.connect(3000);
  LOGGER.info("Started.");
  doProcess();
}

代码示例来源:origin: zendesk/maxwell

this.binlogEventListener = new BinlogConnectorEventListener(client, queue, metrics, outputConfig);
this.client.setBlocking(!stopOnEOF);
this.client.registerEventListener(binlogEventListener);
this.client.registerLifecycleListener(binlogLifecycleListener);
this.client.setServerId(replicaServerID.intValue());

代码示例来源:origin: debezium/debezium

protected void startClient(Consumer<BinaryLogClient> preConnect) throws IOException, TimeoutException, SQLException {
  // Connect the bin log client ...
  counters = new EventQueue(DEFAULT_TIMEOUT, this::logConsumedEvent, this::logIgnoredEvent);
  client = new BinaryLogClient(config.getHostname(), config.getPort(), "replicator", "replpass");
  client.setServerId(client.getServerId() - 1); // avoid clashes between BinaryLogClient instances
  client.setKeepAlive(false);
  client.setSSLMode(SSLMode.DISABLED);
  client.registerEventListener(counters);
  client.registerEventListener(this::recordEvent);
  client.registerLifecycleListener(new TraceLifecycleListener());
  EventDeserializer eventDeserializer = new EventDeserializer();
  eventDeserializer.setEventDataDeserializer(EventType.STOP, new StopEventDataDeserializer());
  client.setEventDeserializer(eventDeserializer);
  if (preConnect != null) preConnect.accept(client);
  client.connect(DEFAULT_TIMEOUT); // does not block
  // Set up the table as one transaction and wait to see the events ...
  conn.execute("DROP TABLE IF EXISTS person",
         "CREATE TABLE person (" +
             "  name VARCHAR(255) primary key," +
             "  age INTEGER NULL DEFAULT 10," +
             "  createdAt DATETIME NULL DEFAULT CURRENT_TIMESTAMP," +
             "  updatedAt DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP" +
             ")");
  counters.consume(2, EventType.QUERY);
  counters.reset();
}

代码示例来源:origin: debezium/debezium

client.setKeepAlive(context.config().getBoolean(MySqlConnectorConfig.KEEP_ALIVE));
client.setKeepAliveInterval(context.config().getLong(MySqlConnectorConfig.KEEP_ALIVE_INTERVAL_MS));
client.registerEventListener(context.bufferSizeForBinlogReader() == 0
    ? this::handleEvent
    : (new EventBuffer(context.bufferSizeForBinlogReader(), this))::add);
if (logger.isDebugEnabled()) client.registerEventListener(this::logEvent);

代码示例来源:origin: perfectsense/dari

client.registerEventListener(new MySQLBinaryLogEventListener(database, cache, catalog));

代码示例来源:origin: org.apache.nifi/nifi-cdc-mysql-processors

binlogClient.registerEventListener(eventListener);

代码示例来源:origin: perfectsense/dari

client.registerEventListener(new MySQLBinaryLogEventListener(database, cache, schema, recordTableName));

代码示例来源:origin: mysql-time-machine/replicator

this.client.registerEventListener(
    event -> {
      try {

代码示例来源:origin: networknt/light-eventuate-4j

client.registerEventListener(event -> {
 switch (event.getHeader().getEventType()) {
  case TABLE_MAP: {

代码示例来源:origin: eventuate-local/eventuate-local

client.registerEventListener(event -> {
 switch (event.getHeader().getEventType()) {
  case TABLE_MAP: {

代码示例来源:origin: io.debezium/debezium-connector-mysql

protected void startClient(Consumer<BinaryLogClient> preConnect) throws IOException, TimeoutException, SQLException {
  // Connect the bin log client ...
  counters = new EventQueue(DEFAULT_TIMEOUT, this::logConsumedEvent, this::logIgnoredEvent);
  client = new BinaryLogClient(config.getHostname(), config.getPort(), "replicator", "replpass");
  client.setServerId(client.getServerId() - 1); // avoid clashes between BinaryLogClient instances
  client.setKeepAlive(false);
  client.setSSLMode(SSLMode.DISABLED);
  client.registerEventListener(counters);
  client.registerEventListener(this::recordEvent);
  client.registerLifecycleListener(new TraceLifecycleListener());
  EventDeserializer eventDeserializer = new EventDeserializer();
  eventDeserializer.setEventDataDeserializer(EventType.STOP, new StopEventDataDeserializer());
  client.setEventDeserializer(eventDeserializer);
  if (preConnect != null) preConnect.accept(client);
  client.connect(DEFAULT_TIMEOUT); // does not block
  // Set up the table as one transaction and wait to see the events ...
  conn.execute("DROP TABLE IF EXISTS person",
         "CREATE TABLE person (" +
             "  name VARCHAR(255) primary key," +
             "  age INTEGER NULL DEFAULT 10," +
             "  createdAt DATETIME NULL DEFAULT CURRENT_TIMESTAMP," +
             "  updatedAt DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP" +
             ")");
  counters.consume(2, EventType.QUERY);
  counters.reset();
}

相关文章