@Override
 public void setWriteChecksum(final boolean writeChecksum) {
   List<InodeTree.MountPoint<FileSystem>> mountPoints = fsState.getMountPoints();
   for (InodeTree.MountPoint<FileSystem> mount : mountPoints) {
     mount.target.targetFileSystem.setWriteChecksum(writeChecksum);
   }
 }
 @Override
 public FileSystem[] getChildFileSystems() {
   List<InodeTree.MountPoint<FileSystem>> mountPoints = fsState.getMountPoints();
   Set<FileSystem> children = new HashSet<FileSystem>();
   for (InodeTree.MountPoint<FileSystem> mountPoint : mountPoints) {
     FileSystem targetFs = mountPoint.target.targetFileSystem;
     children.addAll(Arrays.asList(targetFs.getChildFileSystems()));
   }
   return children.toArray(new FileSystem[] {});
 }
  public MountPoint[] getMountPoints() {
    List<InodeTree.MountPoint<FileSystem>> mountPoints = fsState.getMountPoints();

    MountPoint[] result = new MountPoint[mountPoints.size()];
    for (int i = 0; i < mountPoints.size(); ++i) {
      result[i] =
          new MountPoint(
              new Path(mountPoints.get(i).src), mountPoints.get(i).target.targetDirLinkList);
    }
    return result;
  }