code: public void setUserAgent(String name, String version, @Nullable String comments) {
          //TODO Check that height is needed here (it wasnt, but it should be, no?)
          int height = chain == null ? 0 : chain.getBestChainHeight();
          VersionMessage ver = new VersionMessage(params, height);
          ver.relayTxesBeforeFilter = false;
          updateVersionMessageRelayTxesBeforeFilter(ver);
          ver.appendToSubVer(name, version, comments);
          setVersionMessage(ver);
      }
docs: Sets information that identifies this software to remote nodes. This is a convenience wrapper for creating
  a new {@link VersionMessage}, calling {@link VersionMessage#appendToSubVer(String, String, String)} on it,
  and then calling {@link PeerGroup#setVersionMessage(VersionMessage)} on the result of that. See the docs for
  {@link VersionMessage#appendToSubVer(String, String, String)} for information on what the fields should contain.