当前位置: 首页>>代码示例>>Java>>正文


Java Stat.setEphemeralOwner方法代码示例

本文整理汇总了Java中org.apache.zookeeper.data.Stat.setEphemeralOwner方法的典型用法代码示例。如果您正苦于以下问题:Java Stat.setEphemeralOwner方法的具体用法?Java Stat.setEphemeralOwner怎么用?Java Stat.setEphemeralOwner使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.zookeeper.data.Stat的用法示例。


在下文中一共展示了Stat.setEphemeralOwner方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testCreateNodeResultRetryBecomeStandby

import org.apache.zookeeper.data.Stat; //导入方法依赖的package包/类
/**
 * verify that retry of network errors verifies active by session id and
 * becomes standby if they dont match. monitoring is started.
 */
@Test
public void testCreateNodeResultRetryBecomeStandby() {
  elector.joinElection(data);

  elector.processResult(Code.CONNECTIONLOSS.intValue(), ZK_LOCK_NAME, mockZK,
      ZK_LOCK_NAME);
  elector.processResult(Code.NODEEXISTS.intValue(), ZK_LOCK_NAME, mockZK,
      ZK_LOCK_NAME);
  verifyExistCall(1);

  Stat stat = new Stat();
  stat.setEphemeralOwner(0);
  Mockito.when(mockZK.getSessionId()).thenReturn(1L);
  elector.processResult(Code.OK.intValue(), ZK_LOCK_NAME, mockZK, stat);
  Mockito.verify(mockApp, Mockito.times(1)).becomeStandby();
  verifyExistCall(1);
}
 
开发者ID:nucypher,项目名称:hadoop-oss,代码行数:22,代码来源:TestActiveStandbyElector.java

示例2: copyStat

import org.apache.zookeeper.data.Stat; //导入方法依赖的package包/类
synchronized public void copyStat(Stat to) {
    to.setAversion(stat.getAversion());
    to.setCtime(stat.getCtime());
    to.setCzxid(stat.getCzxid());
    to.setMtime(stat.getMtime());
    to.setMzxid(stat.getMzxid());
    to.setPzxid(stat.getPzxid());
    to.setVersion(stat.getVersion());
    to.setEphemeralOwner(stat.getEphemeralOwner());
    to.setDataLength(data == null ? 0 : data.length);
    int numChildren = 0;
    if (this.children != null) {
        numChildren = children.size();
    }
    // when we do the Cversion we need to translate from the count of the creates
    // to the count of the changes (v3 semantics)
    // for every create there is a delete except for the children still present
    to.setCversion(stat.getCversion()*2 - numChildren);
    to.setNumChildren(numChildren);
}
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:21,代码来源:DataNode.java

示例3: newStat

import org.apache.zookeeper.data.Stat; //导入方法依赖的package包/类
/**
 * Create a new Stat, fill in dummy values trying to catch Assert.failure
 * to copy in client or server code.
 *
 * @return a new stat with dummy values
 */
private Stat newStat() {
    Stat stat = new Stat();

    stat.setAversion(100);
    stat.setCtime(100);
    stat.setCversion(100);
    stat.setCzxid(100);
    stat.setDataLength(100);
    stat.setEphemeralOwner(100);
    stat.setMtime(100);
    stat.setMzxid(100);
    stat.setNumChildren(100);
    stat.setPzxid(100);
    stat.setVersion(100);

    return stat;
}
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:24,代码来源:StatTest.java

示例4: copyStat

import org.apache.zookeeper.data.Stat; //导入方法依赖的package包/类
synchronized public void copyStat(Stat to) {
    to.setAversion(stat.getAversion());
    to.setCtime(stat.getCtime());
    to.setCzxid(stat.getCzxid());
    to.setMtime(stat.getMtime());
    to.setMzxid(stat.getMzxid());
    to.setPzxid(stat.getPzxid());
    to.setVersion(stat.getVersion());
    to.setEphemeralOwner(getClientEphemeralOwner(stat));
    to.setDataLength(data == null ? 0 : data.length);
    int numChildren = 0;
    if (this.children != null) {
        numChildren = children.size();
    }
    // when we do the Cversion we need to translate from the count of the creates
    // to the count of the changes (v3 semantics)
    // for every create there is a delete except for the children still present
    to.setCversion(stat.getCversion()*2 - numChildren);
    to.setNumChildren(numChildren);
}
 
开发者ID:didichuxing2,项目名称:https-github.com-apache-zookeeper,代码行数:21,代码来源:DataNode.java

示例5: testCreateNodeResultBecomeActive

import org.apache.zookeeper.data.Stat; //导入方法依赖的package包/类
/**
 * verify that successful znode create result becomes active and monitoring is
 * started
 */
@Test
public void testCreateNodeResultBecomeActive() throws Exception {
  mockNoPriorActive();
  
  elector.joinElection(data);
  elector.processResult(Code.OK.intValue(), ZK_LOCK_NAME, mockZK,
      ZK_LOCK_NAME);
  Mockito.verify(mockApp, Mockito.times(1)).becomeActive();
  verifyExistCall(1);

  // monitor callback verifies the leader is ephemeral owner of lock but does
  // not call becomeActive since its already active
  Stat stat = new Stat();
  stat.setEphemeralOwner(1L);
  Mockito.when(mockZK.getSessionId()).thenReturn(1L);
  elector.processResult(Code.OK.intValue(), ZK_LOCK_NAME, mockZK, stat);
  // should not call neutral mode/standby/active
  Mockito.verify(mockApp, Mockito.times(0)).enterNeutralMode();
  Mockito.verify(mockApp, Mockito.times(0)).becomeStandby();
  Mockito.verify(mockApp, Mockito.times(1)).becomeActive();
  // another joinElection not called.
  Mockito.verify(mockZK, Mockito.times(1)).create(ZK_LOCK_NAME, data,
      Ids.OPEN_ACL_UNSAFE, CreateMode.EPHEMERAL, elector, mockZK);
  // no new monitor called
  verifyExistCall(1);
}
 
开发者ID:nucypher,项目名称:hadoop-oss,代码行数:31,代码来源:TestActiveStandbyElector.java

示例6: testFailToBecomeActiveAfterZKDisconnect

import org.apache.zookeeper.data.Stat; //导入方法依赖的package包/类
/**
 * Verify that, when the callback fails to enter active state, after
 * a ZK disconnect (i.e from the StatCallback), that the elector rejoins
 * the election after sleeping for a short period.
 */
@Test
public void testFailToBecomeActiveAfterZKDisconnect() throws Exception {
  mockNoPriorActive();
  elector.joinElection(data);
  Assert.assertEquals(0, elector.sleptFor);

  elector.processResult(Code.CONNECTIONLOSS.intValue(), ZK_LOCK_NAME, mockZK,
      ZK_LOCK_NAME);
  Mockito.verify(mockZK, Mockito.times(2)).create(ZK_LOCK_NAME, data,
      Ids.OPEN_ACL_UNSAFE, CreateMode.EPHEMERAL, elector, mockZK);

  elector.processResult(Code.NODEEXISTS.intValue(), ZK_LOCK_NAME, mockZK,
      ZK_LOCK_NAME);
  verifyExistCall(1);

  Stat stat = new Stat();
  stat.setEphemeralOwner(1L);
  Mockito.when(mockZK.getSessionId()).thenReturn(1L);

  // Fake failure to become active from within the stat callback
  Mockito.doThrow(new ServiceFailedException("fail to become active"))
      .when(mockApp).becomeActive();
  elector.processResult(Code.OK.intValue(), ZK_LOCK_NAME, mockZK, stat);
  Mockito.verify(mockApp, Mockito.times(1)).becomeActive();
  
  // should re-join
  Mockito.verify(mockZK, Mockito.times(3)).create(ZK_LOCK_NAME, data,
      Ids.OPEN_ACL_UNSAFE, CreateMode.EPHEMERAL, elector, mockZK);
  Assert.assertEquals(2, count);
  Assert.assertTrue(elector.sleptFor > 0);
}
 
开发者ID:nucypher,项目名称:hadoop-oss,代码行数:37,代码来源:TestActiveStandbyElector.java

示例7: testSuccessiveStandbyCalls

import org.apache.zookeeper.data.Stat; //导入方法依赖的package包/类
/**
 * verify becomeStandby is not called if already in standby
 */
@Test
public void testSuccessiveStandbyCalls() {
  elector.joinElection(data);

  // make the object go into the monitoring standby state
  elector.processResult(Code.NODEEXISTS.intValue(), ZK_LOCK_NAME, mockZK,
      ZK_LOCK_NAME);
  Mockito.verify(mockApp, Mockito.times(1)).becomeStandby();
  verifyExistCall(1);
  Assert.assertTrue(elector.isMonitorLockNodePending());

  Stat stat = new Stat();
  stat.setEphemeralOwner(0L);
  Mockito.when(mockZK.getSessionId()).thenReturn(1L);
  elector.processResult(Code.OK.intValue(), ZK_LOCK_NAME, mockZK, stat);
  Assert.assertFalse(elector.isMonitorLockNodePending());

  WatchedEvent mockEvent = Mockito.mock(WatchedEvent.class);
  Mockito.when(mockEvent.getPath()).thenReturn(ZK_LOCK_NAME);

  // notify node deletion
  // monitoring should be setup again after event is received
  Mockito.when(mockEvent.getType()).thenReturn(Event.EventType.NodeDeleted);
  elector.processWatchEvent(mockZK, mockEvent);
  // is standby. no need to notify anything now
  Mockito.verify(mockApp, Mockito.times(0)).enterNeutralMode();
  // another joinElection called.
  Mockito.verify(mockZK, Mockito.times(2)).create(ZK_LOCK_NAME, data,
      Ids.OPEN_ACL_UNSAFE, CreateMode.EPHEMERAL, elector, mockZK);
  // lost election
  elector.processResult(Code.NODEEXISTS.intValue(), ZK_LOCK_NAME, mockZK,
      ZK_LOCK_NAME);
  // still standby. so no need to notify again
  Mockito.verify(mockApp, Mockito.times(1)).becomeStandby();
  // monitor is set again
  verifyExistCall(2);
}
 
开发者ID:nucypher,项目名称:hadoop-oss,代码行数:41,代码来源:TestActiveStandbyElector.java

示例8: copyStat

import org.apache.zookeeper.data.Stat; //导入方法依赖的package包/类
public void copyStat(Stat to) {
    to.setAversion(stat.getAversion());
    to.setCtime(stat.getCtime());
    to.setCversion(stat.getCversion());
    to.setCzxid(stat.getCzxid());
    to.setMtime(stat.getMtime());
    to.setMzxid(stat.getMzxid());
    to.setVersion(stat.getVersion());
    to.setEphemeralOwner(stat.getEphemeralOwner());
    to.setDataLength(data.length);
    to.setNumChildren(children.size());
}
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:13,代码来源:DataNodeV1.java

示例9: copyStat

import org.apache.zookeeper.data.Stat; //导入方法依赖的package包/类
static public void copyStat(Stat from, Stat to) {
    to.setAversion(from.getAversion());
    to.setCtime(from.getCtime());
    to.setCversion(from.getCversion());
    to.setCzxid(from.getCzxid());
    to.setMtime(from.getMtime());
    to.setMzxid(from.getMzxid());
    to.setVersion(from.getVersion());
    to.setEphemeralOwner(from.getEphemeralOwner());
    to.setDataLength(from.getDataLength());
    to.setNumChildren(from.getNumChildren());
}
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:13,代码来源:DataTreeV1.java

示例10: copyStat

import org.apache.zookeeper.data.Stat; //导入方法依赖的package包/类
static public void copyStat(Stat from, Stat to) {
    to.setAversion(from.getAversion());
    to.setCtime(from.getCtime());
    to.setCversion(from.getCversion());
    to.setCzxid(from.getCzxid());
    to.setMtime(from.getMtime());
    to.setMzxid(from.getMzxid());
    to.setPzxid(from.getPzxid());
    to.setVersion(from.getVersion());
    to.setEphemeralOwner(from.getEphemeralOwner());
    to.setDataLength(from.getDataLength());
    to.setNumChildren(from.getNumChildren());
}
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:14,代码来源:DataTree.java

示例11: testCreateNodeResultRetryBecomeActive

import org.apache.zookeeper.data.Stat; //导入方法依赖的package包/类
/**
 * verify that retry of network errors verifies master by session id and
 * becomes active if they match. monitoring is started.
 */
@Test
public void testCreateNodeResultRetryBecomeActive() throws Exception {
  mockNoPriorActive();
  
  elector.joinElection(data);

  elector.processResult(Code.CONNECTIONLOSS.intValue(), ZK_LOCK_NAME, mockZK,
      ZK_LOCK_NAME);
  elector.processResult(Code.CONNECTIONLOSS.intValue(), ZK_LOCK_NAME, mockZK,
      ZK_LOCK_NAME);
  elector.processResult(Code.CONNECTIONLOSS.intValue(), ZK_LOCK_NAME, mockZK,
      ZK_LOCK_NAME);
  elector.processResult(Code.CONNECTIONLOSS.intValue(), ZK_LOCK_NAME, mockZK,
      ZK_LOCK_NAME);
  // 4 errors results in fatalError
  Mockito
      .verify(mockApp, Mockito.times(1))
      .notifyFatalError(
          "Received create error from Zookeeper. code:CONNECTIONLOSS " +
          "for path " + ZK_LOCK_NAME + ". " +
          "Not retrying further znode create connection errors.");

  elector.joinElection(data);
  // recreate connection via getNewZooKeeper
  Assert.assertEquals(2, count);
  elector.processResult(Code.CONNECTIONLOSS.intValue(), ZK_LOCK_NAME, mockZK,
      ZK_LOCK_NAME);
  elector.processResult(Code.NODEEXISTS.intValue(), ZK_LOCK_NAME, mockZK,
      ZK_LOCK_NAME);
  verifyExistCall(1);

  Stat stat = new Stat();
  stat.setEphemeralOwner(1L);
  Mockito.when(mockZK.getSessionId()).thenReturn(1L);
  elector.processResult(Code.OK.intValue(), ZK_LOCK_NAME, mockZK, stat);
  Mockito.verify(mockApp, Mockito.times(1)).becomeActive();
  verifyExistCall(1);
  Mockito.verify(mockZK, Mockito.times(6)).create(ZK_LOCK_NAME, data,
      Ids.OPEN_ACL_UNSAFE, CreateMode.EPHEMERAL, elector, mockZK);
}
 
开发者ID:nucypher,项目名称:hadoop-oss,代码行数:45,代码来源:TestActiveStandbyElector.java


注:本文中的org.apache.zookeeper.data.Stat.setEphemeralOwner方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。