orbsingleton.java
来自「JAVA 所有包」· Java 代码 · 共 758 行 · 第 1/2 页
JAVA
758 行
/* * @(#)ORBSingleton.java 1.44 06/12/11 * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. *//* * Licensed Materials - Property of IBM * RMI-IIOP v1.0 * Copyright IBM Corp. 1998 1999 All Rights Reserved * * US Government Users Restricted Rights - Use, duplication or * disclosure restricted by GSA ADP Schedule Contract with IBM Corp. */package com.sun.corba.se.impl.orb;import java.util.Collection;import java.util.Properties;import java.util.Hashtable;import java.applet.Applet;import java.net.URL;import java.io.IOException ;import java.util.logging.Logger ;import org.omg.CORBA.Context;import org.omg.CORBA.ContextList;import org.omg.CORBA.Environment;import org.omg.CORBA.ExceptionList;import org.omg.CORBA.ORBPackage.InvalidName;import org.omg.CORBA.NVList;import org.omg.CORBA.TCKind;import org.omg.CORBA.NamedValue;import org.omg.CORBA.NO_IMPLEMENT;import org.omg.CORBA.Object;import org.omg.CORBA.Request;import org.omg.CORBA.TypeCode;import org.omg.CORBA.Any;import org.omg.CORBA.StructMember;import org.omg.CORBA.UnionMember;import org.omg.CORBA.ValueMember;import org.omg.CORBA.Policy;import org.omg.CORBA.PolicyError;import org.omg.CORBA.portable.OutputStream;import org.omg.CORBA.portable.RemarshalException;import com.sun.corba.se.pept.protocol.ClientInvocationInfo ;import com.sun.corba.se.pept.transport.ContactInfo;import com.sun.corba.se.pept.transport.ConnectionCache;import com.sun.corba.se.pept.transport.Selector ;import com.sun.corba.se.pept.transport.TransportManager;import com.sun.corba.se.spi.legacy.connection.ORBSocketFactory;import com.sun.corba.se.spi.orb.ORBData;import com.sun.corba.se.spi.orb.Operation;import com.sun.corba.se.spi.orb.ORB;import com.sun.corba.se.spi.orb.ORBVersion;import com.sun.corba.se.spi.orb.ORBVersionFactory;import com.sun.corba.se.spi.oa.OAInvocationInfo;import com.sun.corba.se.spi.oa.ObjectAdapter;import com.sun.corba.se.spi.protocol.CorbaMessageMediator;import com.sun.corba.se.spi.protocol.ClientDelegateFactory;import com.sun.corba.se.spi.protocol.RequestDispatcherRegistry;import com.sun.corba.se.spi.protocol.CorbaServerRequestDispatcher;import com.sun.corba.se.spi.protocol.PIHandler;import com.sun.corba.se.spi.resolver.Resolver;import com.sun.corba.se.spi.resolver.LocalResolver;import com.sun.corba.se.spi.ior.IOR;import com.sun.corba.se.spi.ior.IdentifiableFactoryFinder;import com.sun.corba.se.spi.ior.TaggedComponentFactoryFinder;import com.sun.corba.se.spi.ior.ObjectKey;import com.sun.corba.se.spi.ior.ObjectKeyFactory;import com.sun.corba.se.spi.ior.iiop.GIOPVersion;import com.sun.corba.se.pept.transport.ByteBufferPool ;import com.sun.corba.se.spi.transport.CorbaContactInfoListFactory ;import com.sun.corba.se.spi.transport.CorbaTransportManager;import com.sun.corba.se.spi.legacy.connection.LegacyServerSocketManager;import com.sun.corba.se.spi.orbutil.closure.Closure;import com.sun.corba.se.spi.orbutil.threadpool.ThreadPoolManager;import com.sun.corba.se.spi.logging.LogWrapperFactory;import com.sun.corba.se.spi.logging.LogWrapperBase;import com.sun.corba.se.spi.copyobject.CopierManager;import com.sun.corba.se.spi.presentation.rmi.PresentationManager;import com.sun.corba.se.spi.presentation.rmi.PresentationDefaults;import com.sun.corba.se.spi.servicecontext.ServiceContextRegistry;import com.sun.corba.se.spi.servicecontext.ServiceContexts;import com.sun.corba.se.impl.corba.TypeCodeFactory;import com.sun.corba.se.impl.corba.TypeCodeImpl;import com.sun.corba.se.impl.corba.NVListImpl;import com.sun.corba.se.impl.corba.NamedValueImpl;import com.sun.corba.se.impl.corba.ExceptionListImpl;import com.sun.corba.se.impl.corba.ContextListImpl;import com.sun.corba.se.impl.corba.EnvironmentImpl;import com.sun.corba.se.impl.corba.AnyImpl;import com.sun.corba.se.impl.encoding.BufferManagerFactory;import com.sun.corba.se.impl.encoding.CodeSetComponentInfo;import com.sun.corba.se.impl.encoding.MarshalInputStream;import com.sun.corba.se.impl.encoding.EncapsOutputStream;import com.sun.corba.se.impl.encoding.MarshalOutputStream;import com.sun.corba.se.impl.oa.poa.BadServerIdHandler;import com.sun.corba.se.impl.orbutil.ORBConstants;import com.sun.corba.se.spi.legacy.connection.LegacyServerSocketEndPointInfo;/* * The restricted singleton ORB implementation. * * For now, this class must implement just enough functionality to be * used as a factory for immutable TypeCode instances. * * See ORBImpl.java for the real ORB implementation. */public class ORBSingleton extends ORB{ // This is used to support read_Object. private ORB fullORB; private static PresentationManager.StubFactoryFactory staticStubFactoryFactory = PresentationDefaults.getStaticStubFactoryFactory() ; public void set_parameters( Properties props ) { } protected void set_parameters(Applet app, Properties props) { } protected void set_parameters (String params[], Properties props) { } public OutputStream create_output_stream() { return new EncapsOutputStream(this); } public TypeCode create_struct_tc(String id, String name, StructMember[] members) { return new TypeCodeImpl(this, TCKind._tk_struct, id, name, members); } public TypeCode create_union_tc(String id, String name, TypeCode discriminator_type, UnionMember[] members) { return new TypeCodeImpl(this, TCKind._tk_union, id, name, discriminator_type, members); } public TypeCode create_enum_tc(String id, String name, String[] members) { return new TypeCodeImpl(this, TCKind._tk_enum, id, name, members); } public TypeCode create_alias_tc(String id, String name, TypeCode original_type) { return new TypeCodeImpl(this, TCKind._tk_alias, id, name, original_type); } public TypeCode create_exception_tc(String id, String name, StructMember[] members) { return new TypeCodeImpl(this, TCKind._tk_except, id, name, members); } public TypeCode create_interface_tc(String id, String name) { return new TypeCodeImpl(this, TCKind._tk_objref, id, name); } public TypeCode create_string_tc(int bound) { return new TypeCodeImpl(this, TCKind._tk_string, bound); } public TypeCode create_wstring_tc(int bound) { return new TypeCodeImpl(this, TCKind._tk_wstring, bound); } public TypeCode create_sequence_tc(int bound, TypeCode element_type) { return new TypeCodeImpl(this, TCKind._tk_sequence, bound, element_type); } public TypeCode create_recursive_sequence_tc(int bound, int offset) { return new TypeCodeImpl(this, TCKind._tk_sequence, bound, offset); } public TypeCode create_array_tc(int length, TypeCode element_type) { return new TypeCodeImpl(this, TCKind._tk_array, length, element_type); } public org.omg.CORBA.TypeCode create_native_tc(String id, String name) { return new TypeCodeImpl(this, TCKind._tk_native, id, name); } public org.omg.CORBA.TypeCode create_abstract_interface_tc( String id, String name) { return new TypeCodeImpl(this, TCKind._tk_abstract_interface, id, name); } public org.omg.CORBA.TypeCode create_fixed_tc(short digits, short scale) { return new TypeCodeImpl(this, TCKind._tk_fixed, digits, scale); } // orbos 98-01-18: Objects By Value -- begin public org.omg.CORBA.TypeCode create_value_tc(String id, String name, short type_modifier, TypeCode concrete_base, ValueMember[] members) { return new TypeCodeImpl(this, TCKind._tk_value, id, name, type_modifier, concrete_base, members); } public org.omg.CORBA.TypeCode create_recursive_tc(String id) { return new TypeCodeImpl(this, id); } public org.omg.CORBA.TypeCode create_value_box_tc(String id, String name, TypeCode boxed_type) { return new TypeCodeImpl(this, TCKind._tk_value_box, id, name, boxed_type); } public TypeCode get_primitive_tc( TCKind tckind ) { return get_primitive_tc( tckind.value() ) ; } public Any create_any() { return new AnyImpl(this); } // TypeCodeFactory interface methods. // Keeping track of type codes by repository id. /* * Not strictly needed for TypeCode factory duty but these seem * harmless enough. */ public NVList create_list(int count) { return new NVListImpl(this, count); } public org.omg.CORBA.NVList create_operation_list(org.omg.CORBA.Object oper) { throw wrapper.genericNoImpl() ; } public org.omg.CORBA.NamedValue create_named_value(String s, Any any, int flags) { return new NamedValueImpl(this, s, any, flags); } public org.omg.CORBA.ExceptionList create_exception_list() { return new ExceptionListImpl(); } public org.omg.CORBA.ContextList create_context_list() { return new ContextListImpl(this); } public org.omg.CORBA.Context get_default_context() { throw wrapper.genericNoImpl() ; } public org.omg.CORBA.Environment create_environment() { return new EnvironmentImpl(); } public org.omg.CORBA.Current get_current() { throw wrapper.genericNoImpl() ; } /* * Things that aren't allowed. */ public String[] list_initial_services () { throw wrapper.genericNoImpl() ; } public org.omg.CORBA.Object resolve_initial_references(String identifier) throws InvalidName { throw wrapper.genericNoImpl() ; } public void register_initial_reference( String id, org.omg.CORBA.Object obj ) throws InvalidName { throw wrapper.genericNoImpl() ; } public void send_multiple_requests_oneway(Request[] req) { throw new SecurityException("ORBSingleton: access denied"); } public void send_multiple_requests_deferred(Request[] req) { throw new SecurityException("ORBSingleton: access denied"); } public boolean poll_next_response() { throw new SecurityException("ORBSingleton: access denied"); } public org.omg.CORBA.Request get_next_response() { throw new SecurityException("ORBSingleton: access denied"); } public String object_to_string(org.omg.CORBA.Object obj) { throw new SecurityException("ORBSingleton: access denied"); } public org.omg.CORBA.Object string_to_object(String s) { throw new SecurityException("ORBSingleton: access denied"); } public java.rmi.Remote string_to_remote(String s) throws java.rmi.RemoteException { throw new SecurityException("ORBSingleton: access denied"); } public void connect(org.omg.CORBA.Object servant) { throw new SecurityException("ORBSingleton: access denied"); } public void disconnect(org.omg.CORBA.Object obj) { throw new SecurityException("ORBSingleton: access denied"); } public void run() { throw new SecurityException("ORBSingleton: access denied"); } public void shutdown(boolean wait_for_completion) { throw new SecurityException("ORBSingleton: access denied"); } protected void shutdownServants(boolean wait_for_completion) { throw new SecurityException("ORBSingleton: access denied"); } protected void destroyConnections() {
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?