docs: public static String constructUniqueName(String[] RDNs, String[] RDNValues, String parentDN) throws InvalidUniqueNameException {
          int length;
          if (RDNs != null) {
              length = RDNs.length;
          } else {
              return null;
          }
          if (length != RDNValues.length || length == 0)
              return null;
  
          StringBuffer RDN = new StringBuffer();
  
          for (int i = 0; i < length; i++) {
  
              if (RDNValues[i] != null && RDNValues[i].length() != 0) {
                  if (i != 0 && RDN.length() != 0) {
                      RDN.append("+");
                  }
                  RDN.append(RDNs[i] + "=" + escapeAttributeValue(RDNValues[i]));
              }
          }
  
          String DN = null;
          if (parentDN.length() == 0) {
              DN = RDN.toString();
          } else {
              DN = RDN.toString() + "," + parentDN;
          }
  
          return formatUniqueName(DN);
      }