synchronized (cacheRef) {
if (cacheRef.get() == null) {
CuratorFramework client = zkConnection.getClient();
PathChildrenCache cache = new PathChildrenCache(client, Paths.CONTAINERS,
true, ThreadUtils.newThreadFactory("ContainerCache"));
cache.getListenable().addListener(new PathChildrenCacheListener() {
@Override
public void childEvent(CuratorFramework client, PathChildrenCacheEvent event) {
// shut down the cache if ZooKeeper connection goes away
if (event.getType() == PathChildrenCacheEvent.Type.CONNECTION_SUSPENDED ||