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

📄 iorfactories.java

📁 java1.6众多例子参考
💻 JAVA
字号:
/* * @(#)IORFactories.java	1.16 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.spi.ior ;import java.io.Serializable ;import org.omg.CORBA_2_3.portable.InputStream ;import org.omg.CORBA.BAD_PARAM ;import org.omg.CORBA.portable.ValueFactory ;import org.omg.PortableInterceptor.ObjectReferenceTemplate ;import org.omg.PortableInterceptor.ObjectReferenceFactory ;import com.sun.corba.se.impl.ior.ObjectIdImpl ;import com.sun.corba.se.impl.ior.ObjectKeyImpl ;import com.sun.corba.se.impl.ior.IORImpl ;import com.sun.corba.se.impl.ior.IORTemplateImpl ;import com.sun.corba.se.impl.ior.IORTemplateListImpl ;import com.sun.corba.se.impl.ior.ObjectReferenceProducerBase ;import com.sun.corba.se.impl.ior.ObjectReferenceFactoryImpl ;import com.sun.corba.se.impl.ior.ObjectReferenceTemplateImpl ;import com.sun.corba.se.impl.ior.ObjectKeyFactoryImpl ;import com.sun.corba.se.impl.orbutil.ORBUtility ;import com.sun.corba.se.spi.orb.ORB ;/** This class provides a number of factory methods for creating * various IOR SPI classes which are not subclassed for specific protocols. * The following types must be created using this class: * <ul> * <li>ObjectId</li> * <li>ObjectKey</li> * <li>IOR</li> * <li>IORTemplate</li> * </ul> */public class IORFactories {    private IORFactories() {}     /** Create an ObjectId for the given byte sequence.     */    public static ObjectId makeObjectId( byte[] id )    {	return new ObjectIdImpl( id ) ;    }    /** Create an ObjectKey for the given ObjectKeyTemplate and     * ObjectId.     */    public static ObjectKey makeObjectKey( ObjectKeyTemplate oktemp, ObjectId oid )    {	return new ObjectKeyImpl( oktemp, oid ) ;    }    /** Create an empty IOR for the given orb and typeid.  The result is mutable.     */    public static IOR makeIOR( ORB orb, String typeid )     {	return new IORImpl( orb, typeid ) ;    }    /** Create an empty IOR for the given orb with a null typeid.  The result is mutable.     */    public static IOR makeIOR( ORB orb )     {	return new IORImpl( orb ) ;    }    /** Read an IOR from an InputStream.  ObjectKeys are not shared.     */    public static IOR makeIOR( InputStream is )    {	return new IORImpl( is ) ;    }    /** Create an IORTemplate with the given ObjectKeyTemplate.  The result     * is mutable.     */    public static IORTemplate makeIORTemplate( ObjectKeyTemplate oktemp )    {	return new IORTemplateImpl( oktemp ) ;    }    /** Read an IORTemplate from an InputStream.     */    public static IORTemplate makeIORTemplate( InputStream is )    {	return new IORTemplateImpl( is ) ;    }    public static IORTemplateList makeIORTemplateList()     {	return new IORTemplateListImpl() ;    }    public static IORTemplateList makeIORTemplateList( InputStream is )     {	return new IORTemplateListImpl( is ) ;    }    public static IORFactory getIORFactory( ObjectReferenceTemplate ort )     {	if (ort instanceof ObjectReferenceTemplateImpl) {	    ObjectReferenceTemplateImpl orti = 		(ObjectReferenceTemplateImpl)ort ;	    return orti.getIORFactory() ;	}	throw new BAD_PARAM() ;    }    public static IORTemplateList getIORTemplateList( ObjectReferenceFactory orf )     {	if (orf instanceof ObjectReferenceProducerBase) {	    ObjectReferenceProducerBase base =		(ObjectReferenceProducerBase)orf ;	    return base.getIORTemplateList() ;	}	throw new BAD_PARAM() ;    }    public static ObjectReferenceTemplate makeObjectReferenceTemplate( ORB orb, 	IORTemplate iortemp )     {	return new ObjectReferenceTemplateImpl( orb, iortemp ) ;    }    public static ObjectReferenceFactory makeObjectReferenceFactory( ORB orb, 	IORTemplateList iortemps )    {	return new ObjectReferenceFactoryImpl( orb, iortemps ) ;    }    public static ObjectKeyFactory makeObjectKeyFactory( ORB orb )     {	return new ObjectKeyFactoryImpl( orb ) ;    }    public static IOR getIOR( org.omg.CORBA.Object obj )     {	return ORBUtility.getIOR( obj ) ;    }    public static org.omg.CORBA.Object makeObjectReference( IOR ior )     {	return ORBUtility.makeObjectReference( ior ) ;    }    /** This method must be called in order to register the value     * factories for the ObjectReferenceTemplate and ObjectReferenceFactory     * value types.     */    public static void registerValueFactories( ORB orb )     {	// Create and register the factory for the Object Reference Template	// implementation.	ValueFactory vf = new ValueFactory() {	    public Serializable read_value( InputStream is ) 	    {		return new ObjectReferenceTemplateImpl( is ) ;	    }	} ;	orb.register_value_factory( ObjectReferenceTemplateImpl.repositoryId, vf ) ;	// Create and register the factory for the Object Reference Factory	// implementation.	vf = new ValueFactory() {	    public Serializable read_value( InputStream is ) 	    {		return new ObjectReferenceFactoryImpl( is ) ;	    }	} ;	orb.register_value_factory( ObjectReferenceFactoryImpl.repositoryId, vf ) ;    }}

⌨️ 快捷键说明

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