public static ShardSpecJsonDef fromJsonString()

in spanner-data-validator-java/src/main/java/com/google/migration/dto/ShardSpecJsonDef.java [86:115]


  public static ShardSpecJsonDef fromJsonString(String jsonStr) {
    try {
      JSONObject jsonObject = new JSONObject(jsonStr);

      ShardSpecJsonDef ssJsonDef = new ShardSpecJsonDef();

      ssJsonDef.setHostnamePrefix(jsonObject.getString("hostname-prefix"));
      ssJsonDef.setDbNamePrefix(jsonObject.getString("dbname-prefix"));
      ssJsonDef.setHostCount(jsonObject.getInt("host-count"));
      ssJsonDef.setHostnameSuffixStart(jsonObject.getInt("hostname-suffix-start"));
      ssJsonDef.setHostnameSuffixDigits(jsonObject.getInt("hostname-suffix-digits"));
      ssJsonDef.setShardCount(jsonObject.getInt("shard-count"));
      ssJsonDef.setShardSuffixStart(jsonObject.getInt("shard-suffix-start"));
      ssJsonDef.setShardSuffixDigits(jsonObject.getInt("shard-suffix-digits"));
      ssJsonDef.setUsername(jsonObject.getString("username"));
      ssJsonDef.setPassword(jsonObject.getString("password"));

      if(!jsonObject.isNull("shard-static-suffix")) {
        ssJsonDef.setShardStaticSuffix(jsonObject.getString("shard-static-suffix"));
      }

      return ssJsonDef;
    } catch (Exception ex) {
      LOG.error("Exception while loading shard spec from json file");
      LOG.error(ex.getMessage());
      LOG.error(ex.getStackTrace().toString());
    }

    return null;
  }