public ImmutableMap<Name, Long> snapshotModifiedTimes(JimfsPath path) throws IOException {
    ImmutableMap.Builder<Name, Long> modifiedTimes = ImmutableMap.builder();
    store.readLock().lock();
    try {
      Directory dir = (Directory) lookUp(path, Options.FOLLOW_LINKS).requireDirectory(path).file();
      // TODO(cgdecker): Investigate whether WatchServices should keep a reference to the actual
      // directory when SecureDirectoryStream is supported rather than looking up the directory
      // each time the WatchService polls
      for (DirectoryEntry entry : dir) {
        if (!entry.name().equals(Name.SELF) && !entry.name().equals(Name.PARENT)) {
          modifiedTimes.put(entry.name(), entry.file().getLastModifiedTime());
        }
      }
      return modifiedTimes.build();
    } finally {
      store.readLock().unlock();
    }
  }
public ImmutableMap<Name, Long> snapshotModifiedTimes(JimfsPath path) throws IOException {
    ImmutableMap.Builder<Name, Long> modifiedTimes = ImmutableMap.builder();
    store.readLock().lock();
    try {
      Directory dir = (Directory) lookUp(path, Options.FOLLOW_LINKS).requireDirectory(path).file();
     
     
     
      for (DirectoryEntry entry : dir) {
        if (!entry.name().equals(Name.SELF) && !entry.name().equals(Name.PARENT)) {
          modifiedTimes.put(entry.name(), entry.file().getLastModifiedTime());
        }
      }
      return modifiedTimes.build();
    } finally {
      store.readLock().unlock();
    }
  }
public immutablemap<name, long> snapshotmodifiedtimes(jimfspath path) throws ioexception { immutablemap.builder<name, long> modifiedtimes = immutablemap.builder(); store.readlock().lock(); try { directory dir = (directory) lookup(path, options.follow_links).requiredirectory(path).file(); for (directoryentry entry : dir) { if (!entry.name().equals(name.self) && !entry.name().equals(name.parent)) { modifiedtimes.put(entry.name(), entry.file().getlastmodifiedtime()); } } return modifiedtimes.build(); } finally { store.readlock().unlock(); } }