- 使用 Spring Initializr 创建 Spring Boot 应用程序
- 在Spring Boot中配置Cassandra
- 在 Spring Boot 上配置 Tomcat 连接池
- 将Camel消息路由到嵌入WildFly的Artemis上
本文整理了Java中org.apache.curator.utils.ZKPaths
类的一些代码示例,展示了ZKPaths
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZKPaths
类的具体详情如下:
包路径:org.apache.curator.utils.ZKPaths
类名称:ZKPaths
暂无
代码示例来源:origin: apache/incubator-druid
case CHILD_REMOVED:
final ChildData child = event.getData();
final ZKPaths.PathAndNode childPath = ZKPaths.getPathAndNode(child.getPath());
final byte[] value = finalSubPaths.get(childPath.getNode());
if (value != null) {
log.info("Node[%s] dropped, reinstating.", child.getPath());
for (String node : finalSubPaths.keySet()) {
String path = ZKPaths.makePath(parentPath, node);
log.info("Node[%s] is added to reinstate.", path);
pathsToReinstate.add(path);
for (String path : thePathsLost) {
log.info("Reinstating [%s]", path);
final ZKPaths.PathAndNode split = ZKPaths.getPathAndNode(path);
createAnnouncement(path, announcements.get(split.getPath()).get(split.getNode()));
代码示例来源:origin: mpusher/mpush
public String getTail(String childPaths) {
return ZKPaths.getNodeFromPath(childPaths);
}
代码示例来源:origin: soabase/exhibitor
public UsageListing(Exhibitor exhibitor, String startPath, int maxChildren)
{
if ( startPath.trim().length() == 0 )
{
startPath = "/";
}
ZKPaths.PathAndNode pathAndNode = ZKPaths.getPathAndNode(startPath);
this.exhibitor = exhibitor;
this.startPath = ZKPaths.makePath(pathAndNode.getPath(), pathAndNode.getNode());
this.maxChildren = maxChildren;
}
代码示例来源:origin: apache/incubator-druid
final ZKPaths.PathAndNode pathAndNode = ZKPaths.getPathAndNode(path);
ConcurrentMap<String, byte[]> subPaths = announcements.get(parentPath);
if (curator.checkExists().forPath(parentPath) == null) {
buildParentPath = true;
announcements.putIfAbsent(parentPath, new ConcurrentHashMap<>());
final ConcurrentMap<String, byte[]> finalSubPaths = announcements.get(parentPath);
代码示例来源:origin: apache/incubator-druid
public void update(final String path, final byte[] bytes)
{
synchronized (toAnnounce) {
if (!started) {
// removeParentsIfCreated is not relevant for updates; use dummy value "false".
toUpdate.add(new Announceable(path, bytes, false));
return;
}
}
final ZKPaths.PathAndNode pathAndNode = ZKPaths.getPathAndNode(path);
final String parentPath = pathAndNode.getPath();
final String nodePath = pathAndNode.getNode();
ConcurrentMap<String, byte[]> subPaths = announcements.get(parentPath);
if (subPaths == null || subPaths.get(nodePath) == null) {
throw new ISE("Cannot update a path[%s] that hasn't been announced!", path);
}
synchronized (toAnnounce) {
try {
byte[] oldBytes = subPaths.get(nodePath);
if (!Arrays.equals(oldBytes, bytes)) {
subPaths.put(nodePath, bytes);
updateAnnouncement(path, bytes);
}
}
catch (Exception e) {
throw Throwables.propagate(e);
}
}
}
代码示例来源:origin: apache/incubator-druid
/**
* Unannounces an announcement created at path. Note that if all announcements get removed, the Announcer
* will continue to have ZK watches on paths because clearing them out is a source of ugly race conditions.
* <p/>
* If you need to completely clear all the state of what is being watched and announced, stop() the Announcer.
*
* @param path the path to unannounce
*/
public void unannounce(String path)
{
log.info("unannouncing [%s]", path);
final ZKPaths.PathAndNode pathAndNode = ZKPaths.getPathAndNode(path);
final String parentPath = pathAndNode.getPath();
final ConcurrentMap<String, byte[]> subPaths = announcements.get(parentPath);
if (subPaths == null || subPaths.remove(pathAndNode.getNode()) == null) {
log.error("Path[%s] not announced, cannot unannounce.", path);
return;
}
try {
curator.inTransaction().delete().forPath(path).and().commit();
}
catch (KeeperException.NoNodeException e) {
log.info("node[%s] didn't exist anyway...", path);
}
catch (Exception e) {
throw Throwables.propagate(e);
}
}
代码示例来源:origin: apache/incubator-druid
for (PathChildrenCache cache : listeners.values()) {
closer.register(cache);
for (Map.Entry<String, ConcurrentMap<String, byte[]>> entry : announcements.entrySet()) {
String basePath = entry.getKey();
for (String announcementPath : entry.getValue().keySet()) {
unannounce(ZKPaths.makePath(basePath, announcementPath));
CuratorTransaction transaction = curator.inTransaction();
for (String parent : parentsIBuilt) {
try {
代码示例来源:origin: com.bazaarvoice.emodb/emodb-sor
@Provides @Singleton @MinLagDurationValues
Map<String, ValueStore<Duration>> provideMinLagDurationValues(@CassandraClusters Collection<String> cassandraClusters,
@GlobalFullConsistencyZooKeeper final CuratorFramework curator,
final LifeCycleRegistry lifeCycle) {
final ConcurrentMap<String, ValueStore<Duration>> valuesByCluster = Maps.newConcurrentMap();
for (String cluster : cassandraClusters) {
String zkPath = ZKPaths.makePath("/consistency/min-lag", cluster);
ZkValueStore<Duration> holder = new ZkValueStore<>(curator, zkPath, new ZkDurationSerializer());
valuesByCluster.put(cluster, lifeCycle.manage(holder));
}
return valuesByCluster;
}
代码示例来源:origin: apache/incubator-druid
loadManagementPeons.put("server1", loadQueuePeon);
EasyMock.expect(serverInventoryView.getInventory()).andReturn(
ImmutableList.of(druidServer)
curator.delete().guaranteed().forPath(ZKPaths.makePath(LOADPATH, dataSegment.getId().toString()));
代码示例来源:origin: info.xiancloud/xian-curator-recipes
private void addNewQueueIfNeeded(String newQueuePath) throws Exception
{
if ( newQueuePath == null )
{
newQueuePath = ZKPaths.makePath(queuePath, QUEUE_PREFIX + UUID.randomUUID().toString());
}
if ( !queues.containsKey(newQueuePath) )
{
T queue = queueAllocator.allocateQueue(client, newQueuePath);
if ( queues.putIfAbsent(newQueuePath, queue) == null )
{
queue.start();
preferredQueues.add(newQueuePath);
}
}
}
代码示例来源:origin: org.apache.hadoop/hadoop-common
private void doWork()
{
for ( String path : paths )
{
try
{
List<String> children = client.getChildren().forPath(path);
for ( String name : children )
{
String thisPath = ZKPaths.makePath(path, name);
Stat stat = client.checkExists().forPath(thisPath);
if ( (stat != null) && (stat.getNumChildren() == 0) )
{
reaper.addPath(thisPath, mode);
}
}
}
catch ( Exception e )
{
log.error("Could not get children for path: " + path, e);
}
}
}
}
代码示例来源:origin: org.apache.camel/camel-zookeeper-master
private void processChildren(List<String> children, RefreshMode mode) throws Exception {
List<String> fullPaths = children.stream().map(c -> ZKPaths.makePath(path, c)).collect(Collectors.toList());
Set<String> removedNodes = new HashSet<>(currentData.keySet());
removedNodes.removeAll(fullPaths);
for (String fullPath : removedNodes) {
remove(fullPath);
}
for (String name : children) {
String fullPath = ZKPaths.makePath(path, name);
if ((mode == RefreshMode.FORCE_GET_DATA_AND_STAT) || !currentData.containsKey(fullPath)) {
try {
getDataAndStat(fullPath);
} catch (KeeperException.NoNodeException ignore) {
}
}
}
}
代码示例来源:origin: info.xiancloud/xian-curator-recipes
private void applyNewData(String fullPath, int resultCode, Stat stat, byte[] bytes)
{
if ( resultCode == KeeperException.Code.OK.intValue() ) // otherwise - node must have dropped or something - we should be getting another event
{
ChildData data = new ChildData(fullPath, stat, bytes);
ChildData previousData = currentData.put(fullPath, data);
if ( previousData == null ) // i.e. new
{
offerOperation(new EventOperation(this, new PathChildrenCacheEvent(PathChildrenCacheEvent.Type.CHILD_ADDED, data)));
}
else if ( previousData.getStat().getVersion() != stat.getVersion() )
{
offerOperation(new EventOperation(this, new PathChildrenCacheEvent(PathChildrenCacheEvent.Type.CHILD_UPDATED, data)));
}
updateInitialSet(ZKPaths.getNodeFromPath(fullPath), data);
}
}
代码示例来源:origin: HubSpot/Singularity
@Override
public void applyMigration() {
final long start = System.currentTimeMillis();
try {
if (curator.checkExists().forPath(PENDING_TASKS_ROOT) == null) {
return;
}
} catch (Exception e) {
throw Throwables.propagate(e);
}
try {
for (String pendingTaskId : curator.getChildren().forPath(PENDING_TASKS_ROOT)) {
SingularityPendingTaskId newPendingTaskId = createFrom(pendingTaskId, start);
if (!newPendingTaskId.toString().equals(pendingTaskId)) {
LOG.info("Migrating {} to {}", pendingTaskId, newPendingTaskId);
Optional<String> cmdLineArgs = getCmdLineArgs(pendingTaskId);
taskManager.savePendingTask(
new SingularityPendingTaskBuilder()
.setPendingTaskId(newPendingTaskId)
.setCmdLineArgsList(cmdLineArgs.isPresent() ? Optional.of(Collections.singletonList(cmdLineArgs.get())) : Optional.<List<String>> absent())
.build());
curator.delete().forPath(ZKPaths.makePath(PENDING_TASKS_ROOT, pendingTaskId));
}
}
} catch (Exception e) {
throw Throwables.propagate(e);
}
}
代码示例来源:origin: apache/incubator-druid
curator.start();
closerRule.closeLater(curator);
Assert.assertNotNull(curator.create().forPath("/druid"));
Assert.assertTrue(curator.blockUntilConnected(10, TimeUnit.SECONDS));
final Announcer announcer = new Announcer(curator, executorService);
final HostAndPortWithScheme node = HostAndPortWithScheme.fromString("localhost");
Assert.assertNotNull(curator.checkExists().forPath(announcePath));
final String nodePath = ZKPaths.makePath(announcePath, StringUtils.format("%s:%s", node.getScheme(), node.getHostText()));
Assert.assertNotNull(curator.checkExists().forPath(nodePath));
Assert.assertEquals(Long.BYTES, curator.getData().decompressed().forPath(nodePath).length);
Assert.assertNull(curator.checkExists()
.forPath(listeningAnnouncerConfig.getAnnouncementPath(listenerKey + "FOO")));
listenerResourceAnnouncer.stop();
listenerResourceAnnouncer.start();
代码示例来源:origin: soabase/exhibitor
try
Stat stat = client.setData().withVersion((int)compareVersion).forPath(ZKPaths.makePath(configPath, CONFIG_NODE_NAME), bytes);
newVersion = stat.getVersion();
client.create().creatingParentsIfNeeded().forPath(ZKPaths.makePath(configPath, CONFIG_NODE_NAME), bytes);
newVersion = 0;
代码示例来源:origin: apache/incubator-druid
@Test
public void testLeavesBehindTurdlingsThatAlreadyExisted() throws Exception
{
curator.start();
curator.blockUntilConnected();
Announcer announcer = new Announcer(curator, exec);
final byte[] billy = StringUtils.toUtf8("billy");
final String testPath = "/somewhere/test2";
final String parent = ZKPaths.getPathAndNode(testPath).getPath();
curator.create().forPath(parent);
final Stat initialStat = curator.checkExists().forPath(parent);
announcer.start();
try {
Assert.assertEquals(initialStat.getMzxid(), curator.checkExists().forPath(parent).getMzxid());
awaitAnnounce(announcer, testPath, billy, true);
Assert.assertEquals(initialStat.getMzxid(), curator.checkExists().forPath(parent).getMzxid());
}
finally {
announcer.stop();
}
Assert.assertEquals(initialStat.getMzxid(), curator.checkExists().forPath(parent).getMzxid());
}
代码示例来源:origin: apache/incubator-druid
@Test
public void testCleansUpItsLittleTurdlings() throws Exception
{
curator.start();
curator.blockUntilConnected();
Announcer announcer = new Announcer(curator, exec);
final byte[] billy = StringUtils.toUtf8("billy");
final String testPath = "/somewhere/test2";
final String parent = ZKPaths.getPathAndNode(testPath).getPath();
announcer.start();
try {
Assert.assertNull(curator.checkExists().forPath(parent));
awaitAnnounce(announcer, testPath, billy, true);
Assert.assertNotNull(curator.checkExists().forPath(parent));
}
finally {
announcer.stop();
}
Assert.assertNull(curator.checkExists().forPath(parent));
}
代码示例来源:origin: bazaarvoice/emodb
@Override
protected void run(Bootstrap<EmoConfiguration> bootstrap, Namespace namespace, EmoConfiguration configuration)
throws Exception {
String hostString = namespace.getString("host");
String serviceName = namespace.getString("service");
CuratorFramework curator = configuration.getZooKeeperConfiguration().newCurator();
curator.start();
HostAndPort host = HostAndPort.fromString(hostString).withDefaultPort(9160);
ServiceEndPoint endPoint = new ServiceEndPointBuilder()
.withServiceName(serviceName)
.withId(host.toString())
.build();
String dir = ZKPaths.makePath("ostrich", endPoint.getServiceName());
String path = ZKPaths.makePath(dir, endPoint.getId());
curator.newNamespaceAwareEnsurePath(dir).ensure(curator.getZookeeperClient());
try {
curator.delete().forPath(path);
System.out.println("Deleted.");
} catch (KeeperException.NoNodeException e) {
System.out.println("Not found.");
}
curator.close();
}
}
代码示例来源:origin: apache/incubator-druid
final String path = ZKPaths.makePath(basePath, currentlyProcessing.getSegmentId().toString());
final byte[] payload = jsonMapper.writeValueAsBytes(currentlyProcessing.getChangeRequest());
curator.create().withMode(CreateMode.EPHEMERAL).forPath(path, payload);
if (curator.checkExists().forPath(path) != null) {
failAssign(new ISE("%s was never removed! Failing this operation!", path));
);
final Stat stat = curator.checkExists().usingWatcher(
(CuratorWatcher) watchedEvent -> {
switch (watchedEvent.getType()) {
curator.create().withMode(CreateMode.EPHEMERAL).forPath(path, noopPayload);
我在这个网站上发布的代码有这个问题 https://developers.google.com/drive/quickstart-cs是 Google Drive 快速入门的开发人员站点。我按照网站上
我正在尝试制作一个非常简单的 Kafka Producer,目前正在关注 producer example除了我的制作人没有分区程序类。 将所需文件导出到 jar 后,我将它们传输到我的 Linux
问题 在java中,我有一个“Util项目”,在进行单元测试时使用另一个“Mock项目”。 我的问题是“模拟项目”也使用“Util项目”来构建一些模拟对象。 当我使用 Maven 构建项目时,我无法构
据我所知,这些包已经存在很长时间了。但是,我从未见过它们的实际用法。而且这些包似乎不成熟,不再维护。如果是,为什么这些包现在存在? 最佳答案 包裹automata被 scala.xml.dtd 使用,
关闭。这个问题需要debugging details .它目前不接受答案。 想改进这个问题?将问题更新为 on-topic对于堆栈溢出。 1年前关闭。 Improve this question Co
在java.util.Collections中,有一个方法: public static void fill(List list, T obj) 用第二个参数指定的对象填充第一个参数指定的List。
我不明白它要我做什么。分配给 sentence正在工作: val sentences : java.util.List[CoreMap] = document.get(classOf[Sentence
在我的 React 应用程序中,我想使用一些实用程序。我见过两种不同的方法。第一个是,只是创建函数并将其导出。第二个是,创建一个 Util 类并导出一个对象,这样它就不能被实例化(静态类)。 clas
我有一个 util 类,它接受 String jwtToken 和 Key key 并使用 io.jsonwebtoken.jwts 解码 jwt。 但是,我无法对此进行测试。原因是,我无法模拟公钥并
我有使用目标命名空间的专有架构 xmlns:ax216="http://util.java/xsd" 这给我带来了从 java (java.util.xsd) 开始生成禁止的(由 Java 安全管理器
我正在阅读集合以查看 Javadocs 中的实现层次结构。 Collections声明为public class Collections extendds Object Collection声明为pu
我正在使用 Spring-boot 应用程序,我可以在其中连接 Azure 应用程序配置。但是当我尝试使用内容类型应用程序/JSON 读取值时出现错误。 我的Java类 @ConfigurationP
我正在使用 Spring-boot 应用程序,我可以在其中连接 Azure 应用程序配置。但是当我尝试使用内容类型应用程序/JSON 读取值时出现错误。 我的Java类 @ConfigurationP
我在使用格式说明符时遇到问题。这是否意味着我正在使用 %d? public static void main(String[] args) { double y, x; for (x =
鉴于此代码 import java.util.Iterator; private static List someList = new ArrayList(); public static void
我正在 HackerEarth 解决问题,我无法弄清楚为什么我的程序在命令行上正确运行并给出正确的结果,但在代码编辑器上运行时却给出 java.util.NoSuchElementException
我正在尝试使用以下代码使用对象列表列表中的数据填充tableModel readExcel.readSheet(0): TableModel tableModel = new DefaultTabl
java.util.Set 、 java.util.List 和其他 Collection 接口(interface)不可序列化。需要一个简单、直接的解决方案来在可序列化的 POJO 中使用它。 pu
我试图从 servlet 返回数据库搜索结果的 ArrayList 以显示在 jsp 页面上。 在servlet中设置arraylist作为请求的属性,并将请求转发到jsp页面。当我尝试在 jsp 页
我是android新手,最近我试图从firebase中提取数据到recyclerview/cardview中以垂直布局显示数据,它显示将Hashmap转换为Arraylist的错误,其中代码是:
我是一名优秀的程序员,十分优秀!