docs: public WebSocket createSocket(URL url, int timeout) throws IOException
      {
          if (url == null)
          {
              throw new IllegalArgumentException("The given URL is null.");
          }
  
          if (timeout < 0)
          {
              throw new IllegalArgumentException("The given timeout value is negative.");
          }
  
          try
          {
              return createSocket(url.toURI(), timeout);
          }
          catch (URISyntaxException e)
          {
              throw new IllegalArgumentException("Failed to convert the given URL into a URI.");
          }
      }