gpt4 book ai didi

com.alibaba.otter.shared.common.utils.zookeeper.ZkClientx.createPersistent()方法的使用及代码示例

转载 作者:知者 更新时间:2024-03-13 11:21:17 29 4
gpt4 key购买 nike

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

ZkClientx.createPersistent介绍

[英]Create a persistent node.
[中]创建一个持久节点。

代码示例

代码示例来源:origin: com.alibaba.otter/shared.common

/**
 * Create a persistent node.
 * 
 * @param path
 * @throws ZkInterruptedException if operation was interrupted, or a required reconnection got interrupted
 * @throws IllegalArgumentException if called from anything except the ZooKeeper event thread
 * @throws ZkException if any ZooKeeper exception occurred
 * @throws RuntimeException if any other exception occurs
 */
public void createPersistent(String path) throws ZkInterruptedException, IllegalArgumentException, ZkException,
                     RuntimeException {
  createPersistent(path, false);
}

代码示例来源:origin: com.alibaba.otter/shared.common

/**
 * Create a persistent Sequential node.
 * 
 * @param path
 * @param createParents if true all parent dirs are created as well and no {@link ZkNodeExistsException} is thrown
 * in case the path already exists
 * @throws ZkInterruptedException if operation was interrupted, or a required reconnection got interrupted
 * @throws IllegalArgumentException if called from anything except the ZooKeeper event thread
 * @throws ZkException if any ZooKeeper exception occurred
 * @throws RuntimeException if any other exception occurs
 */
public String createPersistentSequential(String path, boolean createParents) throws ZkInterruptedException,
                                      IllegalArgumentException, ZkException,
                                      RuntimeException {
  try {
    return create(path, null, CreateMode.PERSISTENT_SEQUENTIAL);
  } catch (ZkNoNodeException e) {
    if (!createParents) {
      throw e;
    }
    String parentDir = path.substring(0, path.lastIndexOf('/'));
    createPersistent(parentDir, createParents);
    return createPersistentSequential(path, createParents);
  }
}

代码示例来源:origin: com.alibaba.otter/shared.common

/**
 * Create a persistent Sequential node.
 * 
 * @param path
 * @param data
 * @param createParents if true all parent dirs are created as well and no {@link ZkNodeExistsException} is thrown
 * in case the path already exists
 * @throws ZkInterruptedException if operation was interrupted, or a required reconnection got interrupted
 * @throws IllegalArgumentException if called from anything except the ZooKeeper event thread
 * @throws ZkException if any ZooKeeper exception occurred
 * @throws RuntimeException if any other exception occurs
 */
public void createPersistent(String path, Object data, boolean createParents) throws ZkInterruptedException,
                                       IllegalArgumentException, ZkException,
                                       RuntimeException {
  try {
    create(path, data, CreateMode.PERSISTENT);
  } catch (ZkNodeExistsException e) {
    if (!createParents) {
      throw e;
    }
  } catch (ZkNoNodeException e) {
    if (!createParents) {
      throw e;
    }
    String parentDir = path.substring(0, path.lastIndexOf('/'));
    createPersistent(parentDir, createParents);
    createPersistent(path, data, createParents);
  }
}

代码示例来源:origin: com.alibaba.otter/shared.common

/**
 * Create a persistent Sequential node.
 * 
 * @param path
 * @param data
 * @param createParents if true all parent dirs are created as well and no {@link ZkNodeExistsException} is thrown
 * in case the path already exists
 * @throws ZkInterruptedException if operation was interrupted, or a required reconnection got interrupted
 * @throws IllegalArgumentException if called from anything except the ZooKeeper event thread
 * @throws ZkException if any ZooKeeper exception occurred
 * @throws RuntimeException if any other exception occurs
 */
public String createPersistentSequential(String path, Object data, boolean createParents)
                                             throws ZkInterruptedException,
                                             IllegalArgumentException,
                                             ZkException,
                                             RuntimeException {
  try {
    return create(path, data, CreateMode.PERSISTENT_SEQUENTIAL);
  } catch (ZkNoNodeException e) {
    if (!createParents) {
      throw e;
    }
    String parentDir = path.substring(0, path.lastIndexOf('/'));
    createPersistent(parentDir, createParents);
    return createPersistentSequential(path, data, createParents);
  }
}

代码示例来源:origin: com.alibaba.otter/shared.common

/**
 * Create a persistent node.
 * 
 * @param path
 * @param createParents if true all parent dirs are created as well and no {@link ZkNodeExistsException} is thrown
 * in case the path already exists
 * @throws ZkInterruptedException if operation was interrupted, or a required reconnection got interrupted
 * @throws IllegalArgumentException if called from anything except the ZooKeeper event thread
 * @throws ZkException if any ZooKeeper exception occurred
 * @throws RuntimeException if any other exception occurs
 */
public void createPersistent(String path, boolean createParents) throws ZkInterruptedException,
                                IllegalArgumentException, ZkException,
                                RuntimeException {
  try {
    create(path, null, CreateMode.PERSISTENT);
  } catch (ZkNodeExistsException e) {
    if (!createParents) {
      throw e;
    }
  } catch (ZkNoNodeException e) {
    if (!createParents) {
      throw e;
    }
    String parentDir = path.substring(0, path.lastIndexOf('/'));
    createPersistent(parentDir, createParents);
    createPersistent(path, createParents);
  }
}

代码示例来源:origin: com.alibaba.otter/shared.arbitrate

/**
 * 初始化对应的channel节点,同步调用
 */
public void init(Long channelId) {
  String path = ManagePathUtils.getChannelByChannelId(channelId);
  byte[] data = JsonUtils.marshalToByte(ChannelStatus.STOP);// 初始化的数据对象
  try {
    zookeeper.create(path, data, CreateMode.PERSISTENT);
  } catch (ZkNodeExistsException e) {
    // 如果节点已经存在,则不抛异常
    // ignore
  } catch (ZkNoNodeException e) {
    zookeeper.createPersistent(path, data, true);//创建父节点
  } catch (ZkException e) {
    throw new ArbitrateException("Channel_init", channelId.toString(), e);
  }
}

代码示例来源:origin: com.alibaba.otter/shared.arbitrate

public NodeMonitor(){
  childListener = new IZkChildListener() {
    public void handleChildChange(String parentPath, List<String> currentChilds) throws Exception {
      if (currentChilds != null) {
        initNodes(currentChilds);
      }
    }
  };
  List<String> childs = zookeeper.subscribeChildChanges(ArbitrateConstants.NODE_NID_ROOT, childListener);
  if (childs == null) {//如果为null,代表系统节点为初始化
    try {
      zookeeper.createPersistent(ArbitrateConstants.NODE_NID_ROOT, true);
    } catch (ZkNodeExistsException e) {
      //ignore 
    }
    childs = zookeeper.getChildren(ArbitrateConstants.NODE_NID_ROOT);
  }
  initNodes(childs);
  // syncNodes();// 开始监视node节点的变化
  MonitorScheduler.register(this);
}

代码示例来源:origin: com.alibaba.otter/shared.arbitrate

/**
 * 初始化对应的pipeline节点,同步调用
 */
public void init(Long channelId, Long pipelineId) {
  String path = ManagePathUtils.getPipeline(channelId, pipelineId);
  String processRootPath = ManagePathUtils.getProcessRoot(channelId, pipelineId);
  String terminRootPath = ManagePathUtils.getTerminRoot(channelId, pipelineId);
  String remedyRootPath = ManagePathUtils.getRemedyRoot(channelId, pipelineId);
  String lockRootPath = ManagePathUtils.getLockRoot(channelId, pipelineId);
  String loadLockPath = lockRootPath + "/" + ArbitrateConstants.NODE_LOCK_LOAD;
  try {
    zookeeper.createPersistent(path, true);//创建父节点
    zookeeper.create(processRootPath, new byte[0], CreateMode.PERSISTENT);
    zookeeper.create(terminRootPath, new byte[0], CreateMode.PERSISTENT);
    zookeeper.create(remedyRootPath, new byte[0], CreateMode.PERSISTENT);
    zookeeper.create(lockRootPath, new byte[0], CreateMode.PERSISTENT);
    zookeeper.create(loadLockPath, new byte[0], CreateMode.PERSISTENT);
  } catch (ZkNodeExistsException e) {
    // 如果节点已经存在,则不抛异常
    // ignore
  } catch (ZkException e) {
    throw new ArbitrateException("Pipeline_init", pipelineId.toString(), e);
  }
}

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com