public void showAttributesPopup(@Nullable String namePrefix, int caretPosition) {
    CollectionListModel<Object> model = new CollectionListModel<>(getAttributes());

    if (noPrefixSearchValues(model, namePrefix)) {
      return;
    }

    boolean async = myPopup != null;

    if (updatePopupOrCreate(SearchPopup.Type.AttributeName, model, namePrefix, caretPosition)) {
      return;
    }

    createAndShow(async, new SearchPopupCallback(namePrefix) {
      @Override
      public void consume(String value) {
        appendSearchText(value, prefix);
        handleShowAttributeValuesPopup(value, null, getCaretPosition());
      }
    });
  }
public void showAttributesPopup(@Nullable String namePrefix, int caretPosition)