Java源码示例:com.alibaba.otter.canal.meta.MemoryMetaManager

示例1
protected void initMetaManager() {
    logger.info("init metaManager begin...");
    MetaMode mode = parameters.getMetaMode();
    if (mode.isMemory()) {
        metaManager = new MemoryMetaManager();
    } else if (mode.isZookeeper()) {
        metaManager = new ZooKeeperMetaManager();
        ((ZooKeeperMetaManager) metaManager).setZkClientx(getZkclientx());
    } else if (mode.isMixed()) {
        // metaManager = new MixedMetaManager();
        metaManager = new PeriodMixedMetaManager();// 换用优化过的mixed, at
                                                   // 2012-09-11
        // 设置内嵌的zk metaManager
        ZooKeeperMetaManager zooKeeperMetaManager = new ZooKeeperMetaManager();
        zooKeeperMetaManager.setZkClientx(getZkclientx());
        ((PeriodMixedMetaManager) metaManager).setZooKeeperMetaManager(zooKeeperMetaManager);
    } else if (mode.isLocalFile()) {
        FileMixedMetaManager fileMixedMetaManager = new FileMixedMetaManager();
        fileMixedMetaManager.setDataDir(parameters.getDataDir());
        fileMixedMetaManager.setPeriod(parameters.getMetaFileFlushPeriod());
        metaManager = fileMixedMetaManager;
    } else {
        throw new CanalException("unsupport MetaMode for " + mode);
    }

    logger.info("init metaManager end! \n\t load CanalMetaManager:{} ", metaManager.getClass().getName());
}
 
示例2
protected void initMetaManager() {
    logger.info("init metaManager begin...");
    MetaMode mode = parameters.getMetaMode();
    if (mode.isMemory()) {
        metaManager = new MemoryMetaManager();
    } else if (mode.isZookeeper()) {
        metaManager = new ZooKeeperMetaManager();
        ((ZooKeeperMetaManager) metaManager).setZkClientx(getZkclientx());
    } else if (mode.isMixed()) {
        // metaManager = new MixedMetaManager();
        metaManager = new PeriodMixedMetaManager();// 换用优化过的mixed, at
                                                   // 2012-09-11
        // 设置内嵌的zk metaManager
        ZooKeeperMetaManager zooKeeperMetaManager = new ZooKeeperMetaManager();
        zooKeeperMetaManager.setZkClientx(getZkclientx());
        ((PeriodMixedMetaManager) metaManager).setZooKeeperMetaManager(zooKeeperMetaManager);
    } else if (mode.isLocalFile()) {
        FileMixedMetaManager fileMixedMetaManager = new FileMixedMetaManager();
        fileMixedMetaManager.setDataDir(parameters.getDataDir());
        fileMixedMetaManager.setPeriod(parameters.getMetaFileFlushPeriod());
        metaManager = fileMixedMetaManager;
    } else {
        throw new CanalException("unsupport MetaMode for " + mode);
    }

    logger.info("init metaManager end! \n\t load CanalMetaManager:{} ", metaManager.getClass().getName());
}