@Override public T putComputedNodeIfNotPresent(Cell cell, BuildTarget target, T targetNode) throws BuildTargetException { try (AutoCloseableLock writeLock = rawAndComputedNodesLock.writeLock()) { T updatedNode = allComputedNodes.get(target, targetNode); if (updatedNode.equals(targetNode)) { targetsCornucopia.put(target.getUnflavoredBuildTarget(), target); } return updatedNode; } }