有谁知道如何检测作者实例是否作为主实例运行?
我们正在运行一个摄取过程作为Quartz servlet,因为它只是写入,我们不希望任何从属节点执行脚本。
似乎我们可以通过org.apache.sling.discovery.InstanceDescription.isLeader()了解当前实例是否是主实例,但是,获取当前的InstanceDescription似乎很有趣。
如果我去@Reference 私人DiscoveryService发现;
引用不满意。
关于如何获取InstanceDescription的任何其他建议?
答案 0 :(得分:0)
您可以按照以下方式执行此操作
@Reference
private SlingRepository repository;
public boolean isMasterRepository(){
final String isMaster = repository.getDescriptor("crx.cluster.master");
return StringUtils.isNotBlank(isMaster) && Boolean.parseBoolean(isMaster);
}