docs: protected String addDisplayValue(final String value) {
          if (mapDisplayValuesToValues.containsValue(value)) {
              for (Map.Entry<String, String> entry : mapDisplayValuesToValues.entrySet()) {
                  if (value.equals(entry.getValue())) {
                      return entry.getKey();
                  }
              }
          }
  
          String displayValue = value;
          // Create special displayValue only for quoted constants longer than maxDisplayLength
          if (maxDisplayLength > 0 && value != null && StringUtils.isQuotedConstant(value) && value.length() > maxDisplayLength + 2) {
              String displayValueStart = value.substring(0,
                                                         maxDisplayLength + 1);
              int nextIndex = 0;
              for (String existingDisplayValue : mapDisplayValuesToValues.keySet()) {
                  if (existingDisplayValue.startsWith(displayValueStart)) {
                      // Is it like "\"abcdeabcde...(01)\""
                      if (existingDisplayValue.length() == (maxDisplayLength + 9)) {
                          String sExistingIndex = existingDisplayValue.substring(existingDisplayValue.length() - 4,
                                                                                 existingDisplayValue.length() - 2);
                          try {
                              int existingIndex = Integer.parseInt(sExistingIndex);
                              if (nextIndex <= existingIndex) {
                                  nextIndex = existingIndex + 1;
                              }
                          } catch (NumberFormatException nfe) {
                              // do nothing
                          }
                      } else {
                          if (nextIndex == 0) {
                              nextIndex++;
                          }
                      }
                  }
              }
              if (nextIndex == 0) {
                  displayValue = displayValueStart + "..." + "\"";
              } else {
                  String sNextIndex = Integer.toString(nextIndex);
                  if (nextIndex < 10) {
                      sNextIndex = "0" + sNextIndex;
                  }
                  displayValue = displayValueStart + "...(" + sNextIndex + ")\"";
              }
          }
          mapDisplayValuesToValues.put(displayValue,
                                       value);
  
          return displayValue;
      }