android.net vs java.net and the different URI classes
<p>I'm writing an application with a model object that will expose a Restful interface to some web services. I've noticed that in android there is a java.net.URI and an android.net.Uri class. What are the benefits to using one versus the other? Has anyone else run into this and found one works better than the other?</p>

<p>In the below code I'm parsing the indiviual parts of the URI into a java.net URI object so I can then call httpGet(URI uri). However, would there be any performance benefits or any benefits at all to using the android.net classes or just calling httpGet(String url)?</p>

<pre><code>public class RestMethods {
    private String protocol;
    private String host;
    private Integer port;
    private URI uri;

    public String restGet(String path) throws MalformedURLException, InterruptedException, ExecutionException{
        StringBuilder builder = new StringBuilder();
        try {
            // Execute HTTP Post Request
            HttpClient httpclient = new DefaultHttpClient();
            HttpGet httpget = new HttpGet(uri);
            HttpResponse response = httpclient.execute(httpget);
            BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent(), "UTF-8"));
            for (String line = null; (line = reader.readLine()) != null;) {
                builder.append(line).append("\n");
            }
        } catch (ClientProtocolException e) {
            return "Client Protocol Exception Exception " + e.toString();
        } catch (IOException e) {
            return "IO Exception " + e.toString();
        }   
        return builder.toString();
    }
...
//Other rest methods, Getters, and setters down here
...
}
</code></pre>
