本文整理汇总了Java中org.onosproject.store.primitives.resources.impl.AtomixLeaderElector类的典型用法代码示例。如果您正苦于以下问题:Java AtomixLeaderElector类的具体用法?Java AtomixLeaderElector怎么用?Java AtomixLeaderElector使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
AtomixLeaderElector类属于org.onosproject.store.primitives.resources.impl包,在下文中一共展示了AtomixLeaderElector类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: newAsyncLeaderElector
import org.onosproject.store.primitives.resources.impl.AtomixLeaderElector; //导入依赖的package包/类
@Override
public AsyncLeaderElector newAsyncLeaderElector(String name, long leaderTimeout, TimeUnit timeUnit) {
AtomixLeaderElector leaderElector = new AtomixLeaderElector(client.newProxyBuilder()
.withName(name)
.withServiceType(DistributedPrimitive.Type.LEADER_ELECTOR.name())
.withReadConsistency(ReadConsistency.LINEARIZABLE)
.withCommunicationStrategy(CommunicationStrategy.LEADER)
.withMinTimeout(Duration.ofMillis(timeUnit.toMillis(leaderTimeout)))
.withMaxTimeout(Duration.ofSeconds(5))
.withMaxRetries(MAX_RETRIES)
.build()
.open()
.join());
leaderElector.setupCache().join();
return leaderElector;
}
示例2: newAsyncLeaderElector
import org.onosproject.store.primitives.resources.impl.AtomixLeaderElector; //导入依赖的package包/类
@Override
public AsyncLeaderElector newAsyncLeaderElector(String name) {
AtomixLeaderElector leaderElector = client.getResource(name, AtomixLeaderElector.class)
.thenCompose(AtomixLeaderElector::setupCache)
.join();
Consumer<State> statusListener = state -> {
leaderElector.statusChangeListeners()
.forEach(listener -> listener.accept(mapper.apply(state)));
};
resourceClient.client().onStateChange(statusListener);
return leaderElector;
}