--- old/src/java.corba/share/classes/com/sun/corba/se/impl/legacy/connection/DefaultSocketFactory.java 2018-01-30 20:18:04.000000000 -0500 +++ /dev/null 2018-01-30 20:18:04.000000000 -0500 @@ -1,130 +0,0 @@ -/* - * Copyright (c) 2000, 2004, Oracle and/or its affiliates. All rights reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 only, as - * published by the Free Software Foundation. Oracle designates this - * particular file as subject to the "Classpath" exception as provided - * by Oracle in the LICENSE file that accompanied this code. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * version 2 for more details (a copy is included in the LICENSE file that - * accompanied this code). - * - * You should have received a copy of the GNU General Public License version - * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA - * or visit www.oracle.com if you need additional information or have any - * questions. - */ -package com.sun.corba.se.impl.legacy.connection; - -import java.io.IOException; -import java.net.InetSocketAddress; -import java.net.ServerSocket; -import java.net.Socket; -import java.net.UnknownHostException; -import java.nio.channels.ServerSocketChannel; -import java.nio.channels.SocketChannel; - -import org.omg.CORBA.ORB; -import org.omg.CORBA.COMM_FAILURE; -import org.omg.CORBA.CompletionStatus; - -import com.sun.corba.se.spi.ior.IOR; -import com.sun.corba.se.spi.ior.iiop.IIOPProfileTemplate ; -import com.sun.corba.se.spi.ior.iiop.IIOPAddress ; -import com.sun.corba.se.spi.legacy.connection.GetEndPointInfoAgainException; -import com.sun.corba.se.spi.legacy.connection.ORBSocketFactory; -import com.sun.corba.se.spi.logging.CORBALogDomains; -import com.sun.corba.se.spi.transport.SocketInfo; - -import com.sun.corba.se.impl.legacy.connection.EndPointInfoImpl; -import com.sun.corba.se.impl.logging.ORBUtilSystemException; -import com.sun.corba.se.impl.orbutil.ORBConstants; - -public class DefaultSocketFactory - implements - ORBSocketFactory -{ - private com.sun.corba.se.spi.orb.ORB orb; - private static ORBUtilSystemException wrapper = ORBUtilSystemException.get( - CORBALogDomains.RPC_TRANSPORT ) ; - - public DefaultSocketFactory() - { - } - - public void setORB(com.sun.corba.se.spi.orb.ORB orb) - { - this.orb = orb; - } - - public ServerSocket createServerSocket(String type, int port) - throws - IOException - { - if (! type.equals(ORBSocketFactory.IIOP_CLEAR_TEXT)) { - throw wrapper.defaultCreateServerSocketGivenNonIiopClearText( type ) ; - } - - ServerSocket serverSocket; - - if (orb.getORBData().acceptorSocketType().equals(ORBConstants.SOCKETCHANNEL)) { - ServerSocketChannel serverSocketChannel = - ServerSocketChannel.open(); - serverSocket = serverSocketChannel.socket(); - } else { - serverSocket = new ServerSocket(); - } - serverSocket.bind(new InetSocketAddress(port)); - return serverSocket; - } - - public SocketInfo getEndPointInfo(ORB orb, - IOR ior, - SocketInfo socketInfo) - { - IIOPProfileTemplate temp = - (IIOPProfileTemplate)ior.getProfile().getTaggedProfileTemplate() ; - IIOPAddress primary = temp.getPrimaryAddress() ; - - return new EndPointInfoImpl(ORBSocketFactory.IIOP_CLEAR_TEXT, - primary.getPort(), - primary.getHost().toLowerCase()); - } - - public Socket createSocket(SocketInfo socketInfo) - throws - IOException, - GetEndPointInfoAgainException - { - Socket socket; - - if (orb.getORBData().acceptorSocketType().equals(ORBConstants.SOCKETCHANNEL)) { - InetSocketAddress address = - new InetSocketAddress(socketInfo.getHost(), - socketInfo.getPort()); - SocketChannel socketChannel = SocketChannel.open(address); - socket = socketChannel.socket(); - } else { - socket = new Socket(socketInfo.getHost(), - socketInfo.getPort()); - } - - // REVISIT - this is done in SocketOrChannelConnectionImpl - try { - socket.setTcpNoDelay(true); - } catch (Exception e) { - ; - } - return socket; - } -} - -// End of file.