本文整理了Java中org.apache.zookeeper.ZooKeeper.setACL()
方法的一些代码示例,展示了ZooKeeper.setACL()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZooKeeper.setACL()
方法的具体详情如下:
包路径:org.apache.zookeeper.ZooKeeper
类名称:ZooKeeper
方法名:setACL
[英]Set the ACL for the node of the given path if such a node exists and the given aclVersion matches the acl version of the node. Return the stat of the node.
A KeeperException with error code KeeperException.NoNode will be thrown if no node with the given path exists.
A KeeperException with error code KeeperException.BadVersion will be thrown if the given aclVersion does not match the node's aclVersion.
[中]如果给定路径的节点存在且给定的ACL版本与该节点的ACL版本匹配,则为该节点设置ACL。返回节点的状态。
错误代码为KeeperException的KeeperException。如果不存在具有给定路径的节点,将抛出NoNode。
错误代码为KeeperException的KeeperException。如果给定的aclVersion与节点的aclVersion不匹配,将抛出BadVersion。
代码示例来源:origin: apache/zookeeper
@Override
public void processResult(int rc, String p, Object ctx, String name) {
try {
zk.setACL(p, acl, version);
} catch (KeeperException | InterruptedException e) {
out.print(e.getMessage());
}
}
});
代码示例来源:origin: org.apache.hadoop/hadoop-common
@Override
public Void run() throws KeeperException, InterruptedException {
List<ACL> acl = zkClient.getACL(path, stat);
if (acl == null || !acl.containsAll(zkAcl) ||
!zkAcl.containsAll(acl)) {
zkClient.setACL(path, zkAcl, stat.getAversion());
}
return null;
}
}, Code.BADVERSION);
代码示例来源:origin: apache/hbase
private static void resetAcls(final ZKWatcher zkw, final String znode,
final boolean eraseAcls) throws Exception {
List<String> children = ZKUtil.listChildrenNoWatch(zkw, znode);
if (children != null) {
for (String child: children) {
resetAcls(zkw, ZNodePaths.joinZNode(znode, child), eraseAcls);
}
}
ZooKeeper zk = zkw.getRecoverableZooKeeper().getZooKeeper();
if (eraseAcls) {
LOG.info(" - erase ACLs for " + znode);
zk.setACL(znode, ZooDefs.Ids.OPEN_ACL_UNSAFE, -1);
} else {
LOG.info(" - set ACLs for " + znode);
zk.setACL(znode, ZKUtil.createACL(zkw, znode, true), -1);
}
}
代码示例来源:origin: apache/zookeeper
Stat stat = zk.setACL(path, acl, version);
if (cl.hasOption("s")) {
new StatPrinter(out).print(stat);
代码示例来源:origin: apache/nifi
private Stat transmitNode(ZooKeeper zooKeeper, DataStatAclNode node) {
Preconditions.checkNotNull(zooKeeper, "zooKeeper must not be null");
Preconditions.checkNotNull(node, "node must not be null");
try {
LOGGER.debug("attempting to transfer node to {} with ACL {}: {}", zooKeeperEndpointConfig, node.getAcls(), node);
// set data without caring what the previous version of the data at that path
zooKeeper.setData(node.getPath(), node.getData(), -1);
zooKeeper.setACL(node.getPath(), node.getAcls(), -1);
LOGGER.info("transferred node {} in {}", node, zooKeeperEndpointConfig);
} catch (InterruptedException | KeeperException e) {
if (e instanceof InterruptedException) {
Thread.currentThread().interrupt();
}
throw new RuntimeException(String.format("unable to transmit data to %s for path %s", zooKeeper, node.getPath()), e);
}
return node.getStat();
}
代码示例来源:origin: apache/zookeeper
public void verifySetACLFailure_NoNode() {
rc = KeeperException.Code.NONODE;
stat = null;
zk.setACL(path, acl, version, this, toString());
verify();
}
代码示例来源:origin: apache/zookeeper
@Test
public void testSuperACL() throws Exception {
ZooKeeper zk = createClient();
try {
zk.addAuthInfo("digest", "pat:pass".getBytes());
zk.create("/path1", null, Ids.CREATOR_ALL_ACL,
CreateMode.PERSISTENT);
zk.close();
// verify super can do anything and ignores ACLs
zk = createClient();
zk.addAuthInfo("digest", "super:test".getBytes());
zk.getData("/path1", false, null);
zk.setACL("/path1", Ids.READ_ACL_UNSAFE, -1);
zk.create("/path1/foo", null, Ids.CREATOR_ALL_ACL, CreateMode.PERSISTENT);
zk.setACL("/path1", Ids.OPEN_ACL_UNSAFE, -1);
} finally {
zk.close();
}
}
}
代码示例来源:origin: apache/zookeeper
public void preAuth() throws Exception {
ZooKeeper zk = createClient();
zk.addAuthInfo("key", "25".getBytes());
try {
createNodePrintAcl(zk, "/pre", "testPreAuth");
zk.setACL("/", Ids.CREATOR_ALL_ACL, -1);
zk.getChildren("/", false);
zk.create("/abc", null, Ids.CREATOR_ALL_ACL, CreateMode.PERSISTENT);
zk.setData("/abc", "testData1".getBytes(), -1);
zk.create("/key", null, Ids.CREATOR_ALL_ACL, CreateMode.PERSISTENT);
zk.setData("/key", "5".getBytes(), -1);
Thread.sleep(1000);
} catch (KeeperException e) {
Assert.fail("test failed :" + e);
} finally {
zk.close();
}
}
代码示例来源:origin: org.apache.zookeeper/zookeeper
stat = zk.setACL(path, parseACLs(args[2]),
args.length > 4 ? Integer.parseInt(args[3]) : -1);
printStat(stat);
代码示例来源:origin: apache/zookeeper
public void verifySetACLFailure_BadVersion() {
new StringCB(zk).verifyCreate();
rc = Code.BADVERSION;
stat = null;
zk.setACL(path, acl, version + 1, this, toString());
verify();
}
代码示例来源:origin: apache/zookeeper
zk.setACL("/", Ids.CREATOR_ALL_ACL, -1);
zk.getData("/", false, null);
zk.close();
zk.delete("/apps", -1);
zk.setACL("/", Ids.OPEN_ACL_UNSAFE, -1);
zk.close();
zk = createClient();
代码示例来源:origin: apache/zookeeper
public void verifySetACL() {
stat.setAversion(1);
new StringCB(zk).verifyCreate();
zk.setACL(path, acl, version, this, toString());
verify();
}
代码示例来源:origin: apache/zookeeper
zk.setACL("/acltest", Ids.OPEN_ACL_UNSAFE, -1);
zk.close();
zk = createClient();
代码示例来源:origin: apache/zookeeper
zk.setACL("/foo", acls, -1);
Assert.fail("Expected InvalidACLException for null value in ACL List");
} catch (InvalidACLException e) {
代码示例来源:origin: apache/hbase
zk.setACL("/", ZooDefs.Ids.CREATOR_ALL_ACL, -1);
break;
} catch (KeeperException e) {
zk3.addAuthInfo("digest", "hbase:rox".getBytes());
try {
zk3.setACL("/", oldACL, -1);
} finally {
zk3.close();
代码示例来源:origin: apache/hbase
/**
* setAcl is an idempotent operation. Retry before throwing exception
* @return list of ACLs
*/
public Stat setAcl(String path, List<ACL> acls, int version)
throws KeeperException, InterruptedException {
try (TraceScope scope = TraceUtil.createTrace("RecoverableZookeeper.setAcl")) {
RetryCounter retryCounter = retryCounterFactory.create();
while (true) {
try {
long startTime = EnvironmentEdgeManager.currentTime();
Stat nodeStat = checkZk().setACL(path, acls, version);
return nodeStat;
} catch (KeeperException e) {
switch (e.code()) {
case CONNECTIONLOSS:
retryOrThrow(retryCounter, e, "setAcl");
break;
case OPERATIONTIMEOUT:
retryOrThrow(retryCounter, e, "setAcl");
break;
default:
throw e;
}
}
retryCounter.sleepUntilNextRetry();
}
}
}
代码示例来源:origin: apache/zookeeper
zk.setACL("/foo", null, 0);
Assert.fail("Expected InvalidACLException for null ACL parameter");
} catch (InvalidACLException e) {
代码示例来源:origin: apache/zookeeper
zk.setACL("/acltest", Ids.OPEN_ACL_UNSAFE, -1);
zk.close();
zk = createClient();
代码示例来源:origin: apache/zookeeper
@Test
public void testDisconnectedAddAuth() throws Exception {
File tmpDir = ClientBase.createTmpDir();
ClientBase.setupTestEnv();
ZooKeeperServer zks = new ZooKeeperServer(tmpDir, tmpDir, 3000);
SyncRequestProcessor.setSnapCount(1000);
final int PORT = Integer.parseInt(HOSTPORT.split(":")[1]);
ServerCnxnFactory f = ServerCnxnFactory.createFactory(PORT, -1);
f.startup(zks);
try {
LOG.info("starting up the zookeeper server .. waiting");
Assert.assertTrue("waiting for server being up",
ClientBase.waitForServerUp(HOSTPORT, CONNECTION_TIMEOUT));
ZooKeeper zk = ClientBase.createZKClient(HOSTPORT);
try {
zk.addAuthInfo("digest", "pat:test".getBytes());
zk.setACL("/", Ids.CREATOR_ALL_ACL, -1);
} finally {
zk.close();
}
} finally {
f.shutdown();
zks.shutdown();
Assert.assertTrue("waiting for server down",
ClientBase.waitForServerDown(HOSTPORT,
ClientBase.CONNECTION_TIMEOUT));
}
}
代码示例来源:origin: apache/zookeeper
zk.setACL("/", Ids.CREATOR_ALL_ACL, -1);
内容来源于网络,如有侵权,请联系作者删除!