Path getTableInfoPath(TableName tableName) throws IOException {
    Path tableSnapShotPath = getTableSnapshotPath(backupRootPath, tableName, backupId);
    Path tableInfoPath = null;

    // can't build the path directly as the timestamp values are different
    FileStatus[] snapshots = fs.listStatus(tableSnapShotPath,
      new SnapshotDescriptionUtils.CompletedSnaphotDirectoriesFilter(fs));
    for (FileStatus snapshot : snapshots) {
      tableInfoPath = snapshot.getPath();
      // SnapshotManifest.DATA_MANIFEST_NAME = "data.manifest";
      if (tableInfoPath.getName().endsWith("data.manifest")) {
        break;
      }
    }
    return tableInfoPath;
  }
Returns value represent path for:
""/$USER/SBACKUP_ROOT/backup_id/namespace/table/.hbase-snapshot/
snapshot_1396650097621_namespace_table" this path contains .snapshotinfo, .tabledesc (0.96 and
0.98) this path contains .snapshotinfo, .data.manifest (trunk)
@param tableName table name
@return path to table info
@throws IOException exception
hbase-backup/src/main/java/org/apache/hadoop/hbase/backup/util/RestoreTool.java