// returns true if a new heap was added
public boolean addHeap(long heapId, String uri) {
heapSubMutationLock.lock();
try {
if (!heapStates.containsKey(heapId)) {
Heap heap = new ImmutableHeap(uri, newListenerConflater);
initialLatches.put(heapId, new CountDownLatch(1));
heapStates.put(heapId, new HeapState(heap));
return true;
}
return false;