public static JmxManagerLocatorResponse send(String locatorHost, int locatorPort, int msTimeout,
      Properties sslConfigProps) throws IOException, ClassNotFoundException {

    // simply need to turn sslConfigProps into sslConfig for locator
    SSLConfig sslConfig = SSLConfigurationFactory.getSSLConfigForComponent(sslConfigProps,
        SecurableCommunicationChannel.LOCATOR);
    SocketCreator socketCreator = new SocketCreator(sslConfig);
    TcpClient client = new TcpClient(socketCreator,
        InternalDataSerializer.getDSFIDSerializer().getObjectSerializer(),
        InternalDataSerializer.getDSFIDSerializer().getObjectDeserializer(),
        TcpSocketFactory.DEFAULT);
    Object responseFromServer = client.requestToServer(new HostAndPort(locatorHost, locatorPort),
        SINGLETON, msTimeout, true);

    if (responseFromServer instanceof JmxManagerLocatorResponse) {
      return (JmxManagerLocatorResponse) responseFromServer;
    } else {
      throw new IllegalStateException(
          "Unrecognisable response received: This could be the result of trying to connect a non-SSL-enabled client to an SSL-enabled locator.");
    }
  }
Send a request to the specified locator asking it to find (and start if needed) a jmx manager.
A jmx manager will only be started

@param locatorHost the name of the host the locator is on
@param locatorPort the port the locator is listening on
@param msTimeout how long in milliseconds to wait for a response from the locator
@param sslConfigProps Map carrying SSL configuration that can be used by SocketCreator
@return a response object that describes the jmx manager.
@throws IOException if we can not connect to the locator, timeout waiting for a response, or
        have trouble communicating with it.
geode-core/src/main/java/org/apache/geode/management/internal/JmxManagerLocatorRequest.java