package com.java.xiaoqin.download.impl; import com.java.xiaoqin.download.api.Connection; import com.java.xiaoqin.download.api.ConnectionException; import com.java.xiaoqin.download.api.ConnectionManager; import java.io.IOException; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.util.Objects; public class ConnectionManagerImpl implements ConnectionManager { @Override public Connection open(String url) throws ConnectionException { if(Objects.isNull(url) || "".equals(url)){ throw new NullPointerException("uri is null"); } Connection connection = null; try { URL uriU = new URL(url); HttpURLConnection conn = (HttpURLConnection) uriU.openConnection(); conn.setRequestMethod("GET"); conn.setConnectTimeout(5 * 1000); conn.setReadTimeout(5 * 1000); connection = new ConnectionImpl(conn); } catch (MalformedURLException e){ e.printStackTrace(); throw new ConnectionException(); } catch (IOException e) { e.printStackTrace(); throw new ConnectionException(); } return connection; } }