Index: src/main/org/codehaus/groovy/runtime/DefaultGroovyMethods.java
===================================================================
--- src/main/org/codehaus/groovy/runtime/DefaultGroovyMethods.java	(revision 10212)
+++ src/main/org/codehaus/groovy/runtime/DefaultGroovyMethods.java	(working copy)
@@ -7715,6 +7715,19 @@
     }
 
     /**
+     * Creates a new InputStream for this URL and passes it into the closure.
+     * This method ensures the stream is closed after the closure returns.
+     *
+     * @param url     a URL
+     * @param closure a closure
+     * @throws IOException if an IOException occurs.
+     * @see #withStream(InputStream,Closure)
+     */
+    public static void withInputStream(URL url, Closure closure) throws IOException {
+        withStream(newInputStream(url), closure);
+    }
+
+    /**
      * Create a new DataOutputStream for this file and passes it into the closure.
      * This method ensures the stream is closed after the closure returns.
      *
@@ -8107,6 +8120,18 @@
     }
 
     /**
+     * Creates a buffered input stream for this URL.
+     *
+     * @param url a URL
+     * @return a BufferedInputStream of the URL
+     * @throws MalformedURLException is thrown if the URL is not well formed.
+     * @throws IOException if an I/O error occurs while creating the input stream
+     */
+    public static BufferedInputStream newInputStream(URL url) throws MalformedURLException, IOException {
+        return new BufferedInputStream(url.openConnection().getInputStream());
+    }
+
+    /**
      * Create a data input stream for this file
      *
      * @param file a File

