@Override
  public void endElement(String namespaceURI, String localName, String qName) {
    String currentValueString = currentValue.toString();
    currentValue.setLength(0);

    switch (qName) {
      case ID -> currentPlugin.setId(currentValueString);
      case NAME -> currentPlugin.setName(currentValueString);
      case DESCRIPTION -> currentPlugin.setDescription(currentValueString);
      case VERSION -> currentPlugin.setVersion(currentValueString);
      case VENDOR -> currentPlugin.setVendor(currentValueString);
      case DEPENDS -> currentPlugin.addDepends(currentValueString, false);
      case CHANGE_NOTES -> currentPlugin.setChangeNotes(currentValueString);
      case CATEGORY -> {
        categories.pop();
        categoryName = null;
      }
      case RATING -> currentPlugin.setRating(currentValueString);
      case DOWNLOAD_URL, DOWNLOAD_URL_NEW_STYLE -> currentPlugin.setDownloadUrl(currentValueString);
      case IDEA_PLUGIN, PLUGIN -> {
        if (currentPlugin != null) {
          plugins.add(currentPlugin);
        }
        currentPlugin = null;
      }
      case TAGS -> currentPlugin.addTags(currentValueString);
      case PRODUCT_CODE -> currentPlugin.setProductCode(currentValueString);
    }
  }
@Override
  public void endElement(String namespaceURI, String localName, String qName)