当前位置: 首页>>代码示例>>Java>>正文


Java SSLSocket.bind方法代码示例

本文整理汇总了Java中javax.net.ssl.SSLSocket.bind方法的典型用法代码示例。如果您正苦于以下问题:Java SSLSocket.bind方法的具体用法?Java SSLSocket.bind怎么用?Java SSLSocket.bind使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在javax.net.ssl.SSLSocket的用法示例。


在下文中一共展示了SSLSocket.bind方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: createSSLSocket

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
public SSLSocket createSSLSocket(InetAddress address, int port,
        InetAddress myAddress) throws IOException {
	SSLSocket sock = (SSLSocket) sslSocketFactory.createSocket();
	if (myAddress != null) {
 	// trying to bind to the correct ipaddress (in case of multiple vip addresses by example)
 	// and let the JDK pick an ephemeral port
 	sock.bind(new InetSocketAddress(myAddress, 0));
	}
	try {
		sock.connect(new InetSocketAddress(address, port), 8000);
	} catch (SocketTimeoutException e) {
		throw new ConnectException("Socket timeout error (8sec)" + address + ":" + port);
	}
	return sock;
}
 
开发者ID:YunlongYang,项目名称:LightSIP,代码行数:16,代码来源:SslNetworkLayer.java

示例2: createSSLSocket

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
public SSLSocket createSSLSocket(InetAddress address, int port,
        InetAddress myAddress) throws IOException {
	SSLSocket sock = (SSLSocket) sslSocketFactory.createSocket();
	if (myAddress != null) {
		// trying to bind to the correct ipaddress (in case of multiple vip addresses by example)
		// and let the JDK pick an ephemeral port
		sock.bind(new InetSocketAddress(myAddress, 0));
	}
	try {
		sock.connect(new InetSocketAddress(address, port), 8000);
	} catch (SocketTimeoutException e) {
		throw new ConnectException("Socket timeout error (8sec)" + address + ":" + port);
	}
	return sock;
}
 
开发者ID:YunlongYang,项目名称:LightSIP,代码行数:16,代码来源:DefaultNetworkLayer.java

示例3: connectSocket

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
@Override
public Socket connectSocket(int connectTimeout, Socket sock, HttpHost host, InetSocketAddress remoteAddress, InetSocketAddress localAddress, HttpContext context) throws IOException {

    SSLSocket sslsock = (SSLSocket) ((sock != null) ? sock :
            createSocket(context));
    if (localAddress != null) sslsock.bind(localAddress);


    sslsock.connect(remoteAddress, connectTimeout);
    // socket timeout is set internally by the
    // PoolingHttpClientConnectionManager.
    return sslsock;
}
 
开发者ID:IBM,项目名称:ibm-cos-sdk-java,代码行数:14,代码来源:ApacheConnectionManagerFactory.java

示例4: connectSocket

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
@Override
public Socket connectSocket(int connectTimeout, Socket sock, HttpHost host, InetSocketAddress remoteAddress, InetSocketAddress localAddress, HttpContext context) throws IOException {
    SSLSocket sslsock = (SSLSocket) ((sock != null) ? sock : createSocket(context));
    if (localAddress != null) {
        InetSocketAddress isa = new InetSocketAddress(localAddress.getAddress(),
                localAddress.getPort());
        sslsock.bind(isa);
    }
    sslsock.connect(remoteAddress, connectTimeout);
    return sslsock;
}
 
开发者ID:1991wangliang,项目名称:lorne_core,代码行数:12,代码来源:EasySSLConnectionSocketFactory.java

示例5: connectSocket

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
/**
 * @since 4.1
 */
public Socket connectSocket(final Socket sock, final InetSocketAddress remoteAddress, final InetSocketAddress localAddress, final HttpParams params) throws IOException
{
	if (remoteAddress == null)
	{
		throw new IllegalArgumentException("Remote address may not be null");
	}

	if (params == null)
	{
		throw new IllegalArgumentException("HTTP parameters may not be null");
	}

	SSLSocket sslSocket = (SSLSocket) (sock != null ? sock : createSocket());

	if (localAddress != null)
	{
		//            sslSocket.setReuseAddress(HttpConnectionParams.getSoReuseaddr(params));
		sslSocket.bind(localAddress);
	}

	int connTimeout = HttpConnectionParams.getConnectionTimeout(params);
	int soTimeout = HttpConnectionParams.getSoTimeout(params);

	try
	{
		sslSocket.connect(remoteAddress, connTimeout);
	}
	catch (SocketTimeoutException ex)
	{
		throw new ConnectTimeoutException(String.format("Connect to %s/%s timed out", remoteAddress.getHostName(), remoteAddress.getAddress()));
	}

	sslSocket.setSoTimeout(soTimeout);

	if (this.hostnameVerifier != null)
	{
		try
		{
			this.hostnameVerifier.verify(remoteAddress.getHostName(), sslSocket);
			// verifyHostName() didn't blowup - good!
		}
		catch (IOException iox)
		{
			// close the socket before re-throwing the exception
			try
			{
				sslSocket.close();
			}
			catch (Exception x)
			{ /*ignore*/ }
			throw iox;
		}
	}

	return sslSocket;
}
 
开发者ID:ultrasonic,项目名称:ultrasonic,代码行数:60,代码来源:SSLSocketFactory.java

示例6: connectSocket

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
@Override
public Socket connectSocket(Socket sock, String host, int port, InetAddress localAddress,
		int localPort, HttpParams params) throws IOException, UnknownHostException,
		ConnectTimeoutException {
	if (host == null) {
		throw new IllegalArgumentException("Target host may not be null.");
	}
	if (params == null) {
		throw new IllegalArgumentException("Parameters may not be null.");
	}

	SSLSocket sslsock = (SSLSocket) ((sock != null) ? sock : createSocket());

	if ((localAddress != null) || (localPort > 0)) {
		if (localPort < 0)
			localPort = 0;

		InetSocketAddress isa = new InetSocketAddress(localAddress, localPort);
		sslsock.bind(isa);
	}

	int connTimeout = HttpConnectionParams.getConnectionTimeout(params);
	int soTimeout = HttpConnectionParams.getSoTimeout(params);

	InetSocketAddress remoteAddress = new InetSocketAddress(host, port);

	sslsock.connect(remoteAddress, connTimeout);

	sslsock.setSoTimeout(soTimeout);
	try {
		hostnameVerifier.verify(host, sslsock);
	} catch (IOException iox) {
		try {
			sslsock.close();
		} catch (Exception x) {
		}

		throw iox;
	}

	return sslsock;
}
 
开发者ID:CactusSoft,项目名称:zabbkit-android,代码行数:43,代码来源:MySSLSocketFactory.java


注:本文中的javax.net.ssl.SSLSocket.bind方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。