private static void setPatientNames()

in util/src/main/java/com/google/cloud/healthcare/imaging/dicomadapter/AttributesUtil.java [231:252]


  private static void setPatientNames(Attributes attrs, int tag, JSONArray jsonValues) {
    List<String> results = new ArrayList<>();
    for (Object itemObj : jsonValues) {
      JSONObject item = (JSONObject) itemObj;
      String alphabetic = item.has(PN_ALPHABETIC) ? item.getString(PN_ALPHABETIC) : "";
      String ideographic = item.has(PN_IDEOGRAPHIC) ? item.getString(PN_IDEOGRAPHIC) : "";
      String phonetic = item.has(PN_PHONETIC) ? item.getString(PN_PHONETIC) : "";
      StringBuilder result = new StringBuilder();
      result.append(alphabetic);
      if (ideographic.length() > 0 || phonetic.length() > 0) {
        result.append(PN_DELIMITER);
      }
      result.append(ideographic);
      if (phonetic.length() > 0) {
        result.append(PN_DELIMITER);
      }
      result.append(phonetic);
      results.add(result.toString());
    }

    attrs.setString(tag, VR.PN, results.toArray(new String[0]));
  }