transport/client/play-ahc-ws/src/main/java/play/libs/ws/ahc/AhcWSClient.java
public static AhcWSClient create(
      AhcWSClientConfig config, AhcHttpCache cache, Materializer materializer) {
    final StandaloneAhcWSClient client = StandaloneAhcWSClient.create(config, cache, materializer);
    return new AhcWSClient(client, materializer);
  }
public static AhcWSClient create(
      AhcWSClientConfig config, AhcHttpCache cache, Materializer materializer) {
    final StandaloneAhcWSClient client = StandaloneAhcWSClient.create(config, cache, materializer);
    return new AhcWSClient(client, materializer);
  }
Creates WS client manually from configuration, internally creating a new instance of
AsyncHttpClient and managing its own thread pool.

<p>This client is not managed as part of Play's lifecycle, and <b>must</b> be closed by calling
ws.close(), otherwise you will run into memory leaks.

@param config a config object, usually from AhcWSClientConfigFactory
@param cache if not null, provides HTTP caching.
@param materializer an Akka materializer
@return a new instance of AhcWSClient.