@Override
    protected void update(@NotNull PresentationData presentation) {
      RemoteServer<?> server = getServer();
      ServerConnection<?> connection = getConnection();
      presentation.setPresentableText(server.getName());

      Icon icon;

      if (ExperimentalUI.isNewUI()) {
        if (connection == null) {
          icon = server.getType().getIcon();
        }
        else {
          icon = switch (connection.getStatus()) {
            case CONNECTED -> new BadgeIconSupplier(server.getType().getIcon()).getLiveIndicatorIcon();
            case DISCONNECTED -> LayeredIcon.layeredIcon(new Icon[]{server.getType().getIcon(), AllIcons.RunConfigurations.InvalidConfigurationLayer});
            default -> server.getType().getIcon();
          };
        }
      }
      else {
        icon = getServerNodeIcon(server.getType().getIcon(), connection != null ? getStatusIcon(connection.getStatus()) : null);
      }

      presentation.setIcon(icon);

      presentation.setTooltip(connection != null ? connection.getStatusText() : null);
    }
@Override
    protected void update(@NotNull PresentationData presentation)