⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bootstrapserver.java

📁 java1.6众多例子参考
💻 JAVA
字号:
/* * @(#)BootstrapServer.java	1.6 05/11/17 * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package com.sun.corba.se.internal.CosNaming;import java.util.Enumeration;import java.util.Properties;import java.io.File;import java.io.FileInputStream;import com.sun.corba.se.spi.orb.ORB ;import com.sun.corba.se.spi.resolver.Resolver ;import com.sun.corba.se.spi.resolver.LocalResolver ;import com.sun.corba.se.spi.resolver.ResolverDefault ;import com.sun.corba.se.impl.orbutil.CorbaResourceUtil;import com.sun.corba.se.impl.orbutil.ORBConstants;/** * Class BootstrapServer is the main entry point for the bootstrap server * implementation.  The BootstrapServer makes all object references * defined in a configurable file available using the old * naming bootstrap protocol. */public class BootstrapServer{    private ORB orb;     /**     * Main startup routine for the bootstrap server.     * It first determines the port on which to listen, checks that the     * specified file is available, and then creates the resolver      * that will be used to service the requests in the      * BootstrapServerRequestDispatcher.     * @param args the command-line arguments to the main program.     */    public static final void main(String[] args)    {	String propertiesFilename = null;	int initialPort = ORBConstants.DEFAULT_INITIAL_PORT;	// Process arguments	for (int i=0;i<args.length;i++) {	    // Look for the filename	    if (args[i].equals("-InitialServicesFile") && i < args.length -1) {		propertiesFilename = args[i+1];	    }	    // Was the initial port specified? If so, override	    // This property normally is applied for the client side	    // configuration of resolvers.  Here we are using it to	    // define the server port that the with which the resolvers	    // communicate.	    if (args[i].equals("-ORBInitialPort") && i < args.length-1) {		initialPort = java.lang.Integer.parseInt(args[i+1]);	    }	}	if (propertiesFilename == null) {	    System.out.println( CorbaResourceUtil.getText("bootstrap.usage", 		"BootstrapServer"));	    return;	}	// Create a file	File file = new File(propertiesFilename);	// Verify that if it exists, it is readable	if (file.exists() == true && file.canRead() == false) {	    System.err.println(CorbaResourceUtil.getText(		"bootstrap.filenotreadable", file.getAbsolutePath()));	    return;	}	// Success: start up	System.out.println(CorbaResourceUtil.getText(	    "bootstrap.success", Integer.toString(initialPort), 	    file.getAbsolutePath()));	Properties props = new Properties() ;	// Use the SERVER_PORT to create an Acceptor using the	// old legacy code in ORBConfiguratorImpl.  When (if?)	// the legacy support is removed, this code will need	// to create an Acceptor directly.	props.put( ORBConstants.SERVER_PORT_PROPERTY,  	    Integer.toString( initialPort ) ) ;	ORB orb = (ORB) org.omg.CORBA.ORB.init(args,props);	LocalResolver lres = orb.getLocalResolver() ;	Resolver fres = ResolverDefault.makeFileResolver( orb, file ) ;	Resolver cres = ResolverDefault.makeCompositeResolver( fres, lres ) ;	LocalResolver sres = ResolverDefault.makeSplitLocalResolver( cres, lres ) ;	orb.setLocalResolver( sres ) ;	try {	    // This causes the acceptors to start listening.	    orb.resolve_initial_references(ORBConstants.ROOT_POA_NAME);	} catch (org.omg.CORBA.ORBPackage.InvalidName e) {	    RuntimeException rte = new RuntimeException("This should not happen");	    rte.initCause(e);	    throw rte;	}	orb.run() ;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -