package com.github.os72.protocjar;

import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.MalformedURLException;
import java.net.Proxy;
import java.net.URL;
import java.net.URLConnection;

public class URLSpec
{
	public URLSpec(String url) throws MalformedURLException {
		mUrl = new URL(url);
	}
	public URLSpec(URL url) {
		mUrl = url;
	}

	public URLSpec(String url, String host, int port) throws MalformedURLException {
		mUrl = new URL(url);
		mProxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(host, port));
	}
	public URLSpec(String url, Proxy proxy) throws MalformedURLException {
		mUrl = new URL(url);
		mProxy = proxy;
	}
	public URLSpec(URL url, Proxy proxy) {
		mUrl = url;
		mProxy = proxy;
	}

	public URLConnection openConnection() throws IOException {
		if (mProxy == null) return mUrl.openConnection();
		return mUrl.openConnection(mProxy);
	}

	@Override
	public String toString() {
		if (mProxy == null) return mUrl.toString();
		return mUrl.toString() + " [" + mProxy + "]";
	}

	private URL mUrl;
	private Proxy mProxy;
}

@@ -1,8 +1,615 @@
+/*%0A * Copyright 2014 protoc-jar developers%0A * %0A * Licensed under the Apache License, Version 2.0 (the %22License%22);%0A * you may not use this file except in compliance with the License.%0A * You may obtain a copy of the License at%0A *%0A *      http://www.apache.org/licenses/LICENSE-2.0%0A *%0A * Unless required by applicable law or agreed to in writing, software%0A * distributed under the License is distributed on an %22AS IS%22 BASIS,%0A * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.%0A * See the License for the specific language governing permissions and%0A * limitations under the License.%0A */%0A
 package 

add copyright