@Override
  public String @NotNull [] getUrls() {
    if (myTimeStampOfCachedThings == UNINITIALIZED) {
      // optimization: when querying urls, and nothing was cached yet, do not access disk (in cacheThings()) - can be expensive
      return ContainerUtil.map2Array(myList, ArrayUtil.EMPTY_STRING_ARRAY, VirtualFilePointer::getUrl);
    }
    return getOrCache().first;
  }
@Override
  public String @NotNull [] getUrls()