code: public static WebSocketExtensionFactory newInstance(ClassLoader cl) {
          ServiceLoader<WebSocketExtensionFactorySpi> services = load(WebSocketExtensionFactorySpi.class, cl);
          return newInstance(services);
      }
docs: Creates a new instance of WebSocketExtensionFactory. It uses the specified {@link ClassLoader} to load
  {@link WebSocketExtensionFactorySpi} objects that are registered using META-INF/services.
  
  @return WebSocketExtensionFactory