@RestrictedApi(explanation = "Should only be called internally or in tests", link = "",
      allowedOnPath = "(.*/src/test/.*|.*/org/apache/hadoop/hbase/backup/HBackupFileSystem.java)")
  static Path getManifestPath(Configuration conf, Path backupRootPath, String backupId,
    boolean throwIfNotFound) throws IOException {
    FileSystem fs = backupRootPath.getFileSystem(conf);
    Path manifestPath = new Path(getBackupPath(backupRootPath.toString(), backupId) + Path.SEPARATOR
      + BackupManifest.MANIFEST_FILE_NAME);
    if (throwIfNotFound && !fs.exists(manifestPath)) {
      String errorMsg = "Could not find backup manifest " + BackupManifest.MANIFEST_FILE_NAME
        + " for " + backupId + ". File " + manifestPath + " does not exists. Did " + backupId
        + " correspond to previously taken backup ?";
      throw new IOException(errorMsg);
    }
    return manifestPath;
  }
Given the backup root dir, backup id and the table name, return the backup image location,
which is also where the backup manifest file is. return value look like:
"hdfs://backup.hbase.org:9000/user/biadmin/backup/backup_1396650096738/default/t1_dn/", where
"hdfs://backup.hbase.org:9000/user/biadmin/backup" is a backup root directory
@param backupRootPath backup root path
@param tableName      table name
@param backupId       backup Id
@return backupPath for the particular table
hbase-backup/src/main/java/org/apache/hadoop/hbase/backup/HBackupFileSystem.java