code: @Pure
  	public static URL convertStringToURL(String urlDescription, boolean allowResourceSearch) {
  		return convertStringToURL(urlDescription, allowResourceSearch, true, true);
  	}
docs: Convert a string to an URL according to several rules.
  
  <p>The rules are (the first succeeded is replied):
  <ul>
  <li>if {@code urlDescription} is <code>null</code> or empty, return <code>null</code>;</li>
  <li>try to build an {@link URL} with {@code urlDescription} as parameter;</li>
  <li>if {@code allowResourceSearch} is <code>true</code> and
  {@code urlDescription} starts with {@code "resource:"}, call
  {@link Resources#getResource(String)} with the rest of the string as parameter;</li>
  <li>if {@code allowResourceSearch} is <code>true</code>, call
  {@link Resources#getResource(String)} with the {@code urlDescription} as
  parameter;</li>
  <li>assuming that the {@code urlDescription} is
  a filename, call {@link File#toURI()} to retreive an URI and then
  {@link URI#toURL()};</li>
  <li>If everything else failed, return <code>null</code>.</li>
  </ul>
  
  @param urlDescription is a string which is describing an URL.
  @param allowResourceSearch indicates if the convertion must take into account the Java resources.
  @return the URL.
  @throws IllegalArgumentException is the string could not be formatted to URL.
  @see Resources#getResource(String)