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


Java IIOPProfile类代码示例

本文整理汇总了Java中com.sun.corba.se.spi.ior.iiop.IIOPProfile的典型用法代码示例。如果您正苦于以下问题:Java IIOPProfile类的具体用法?Java IIOPProfile怎么用?Java IIOPProfile使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


IIOPProfile类属于com.sun.corba.se.spi.ior.iiop包,在下文中一共展示了IIOPProfile类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: chooseRequestVersion

import com.sun.corba.se.spi.ior.iiop.IIOPProfile; //导入依赖的package包/类
/**
 * This chooses the appropriate GIOP version.
 *
 * @return the GIOP version 13.00 if Java serialization is enabled, or
 *         smallest(profGIOPVersion, orbGIOPVersion)
 */
public static GIOPVersion chooseRequestVersion(ORB orb, IOR ior ) {

    GIOPVersion orbVersion = orb.getORBData().getGIOPVersion();
    IIOPProfile prof = ior.getProfile() ;
    GIOPVersion profVersion = prof.getGIOPVersion();

    // Check if the profile is from a legacy Sun ORB.

    ORBVersion targetOrbVersion = prof.getORBVersion();
    if (!(targetOrbVersion.equals(ORBVersionFactory.getFOREIGN())) &&
            targetOrbVersion.lessThan(ORBVersionFactory.getNEWER())) {
        // we are dealing with a SUN legacy orb which emits 1.1 IORs,
        // in spite of being able to handle only GIOP 1.0 messages.
        return V1_0;
    }

    // Now the target has to be (FOREIGN | NEWER*)

    byte prof_major = profVersion.getMajor();
    byte prof_minor = profVersion.getMinor();

    byte orb_major = orbVersion.getMajor();
    byte orb_minor = orbVersion.getMinor();

    if (orb_major < prof_major) {
        return orbVersion;
    } else if (orb_major > prof_major) {
        return profVersion;
    } else { // both major version are the same
        if (orb_minor <= prof_minor) {
            return orbVersion;
        } else {
            return profVersion;
        }
    }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:43,代码来源:GIOPVersion.java

示例2: getEncodingVersion

import com.sun.corba.se.spi.ior.iiop.IIOPProfile; //导入依赖的package包/类
/**
 * @return the Java serialization encoding version.
 */
public static byte getEncodingVersion(ORB orb, IOR ior) {

    // Is Java serialization enabled?
    // Check the JavaSerializationComponent (tagged component)
    // in the IIOPProfile. If present, the peer ORB's GIOP is capable
    // of using Java serialization instead of CDR serialization.
    // In such a case, use Java serialization, iff the java serialization
    // versions match.

    if (orb.getORBData().isJavaSerializationEnabled()) {
        IIOPProfile prof = ior.getProfile();
        IIOPProfileTemplate profTemp =
            (IIOPProfileTemplate) prof.getTaggedProfileTemplate();
        java.util.Iterator iter = profTemp.iteratorById(
                              ORBConstants.TAG_JAVA_SERIALIZATION_ID);
        if (iter.hasNext()) {
            JavaSerializationComponent jc =
                (JavaSerializationComponent) iter.next();
            byte jcVersion = jc.javaSerializationVersion();
            if (jcVersion >= Message.JAVA_ENC_VERSION) {
                return Message.JAVA_ENC_VERSION;
            } else if (jcVersion > Message.CDR_ENC_VERSION) {
                return jc.javaSerializationVersion();
            } else {
                // throw error?
                // Since encodingVersion is <= 0 (CDR_ENC_VERSION).
            }
        }
    }
    return Message.CDR_ENC_VERSION; // default
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:35,代码来源:ORBUtility.java

示例3: isEquivalent

import com.sun.corba.se.spi.ior.iiop.IIOPProfile; //导入依赖的package包/类
public boolean isEquivalent( TaggedProfile prof )
{
    if (!(prof instanceof IIOPProfile))
        return false ;

    IIOPProfile other = (IIOPProfile)prof ;

    return oid.equals( other.getObjectId() ) &&
           proftemp.isEquivalent( other.getTaggedProfileTemplate() ) &&
           oktemp.equals( other.getObjectKeyTemplate() ) ;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:12,代码来源:IIOPProfileImpl.java

示例4: createContactInfoList

import com.sun.corba.se.spi.ior.iiop.IIOPProfile; //导入依赖的package包/类
protected void createContactInfoList()
{
    if (effectiveTargetIORContactInfoList != null) {
        return;
    }

    effectiveTargetIORContactInfoList = new ArrayList();

    IIOPProfile iiopProfile = effectiveTargetIOR.getProfile();
    String hostname =
        ((IIOPProfileTemplate)iiopProfile.getTaggedProfileTemplate())
            .getPrimaryAddress().getHost().toLowerCase();
    int    port     =
        ((IIOPProfileTemplate)iiopProfile.getTaggedProfileTemplate())
            .getPrimaryAddress().getPort();
    // For use by "sticky manager" if one is registered.
    primaryContactInfo =
        createContactInfo(SocketInfo.IIOP_CLEAR_TEXT, hostname, port);

    if (iiopProfile.isLocal()) {
        // NOTE: IMPORTANT:
        // Only do local.  The APP Server interceptors check
        // effectiveTarget.isLocal - which is determined via
        // the IOR - so if we added other addresses then
        // transactions and interceptors would not execute.
        ContactInfo contactInfo = new SharedCDRContactInfoImpl(
            orb, this, effectiveTargetIOR,
            orb.getORBData().getGIOPAddressDisposition());
        effectiveTargetIORContactInfoList.add(contactInfo);
    } else {
        addRemoteContactInfos(effectiveTargetIOR,
                              effectiveTargetIORContactInfoList);
    }
}
 
开发者ID:campolake,项目名称:openjdk9,代码行数:35,代码来源:CorbaContactInfoListImpl.java

示例5: getEffectiveProfile

import com.sun.corba.se.spi.ior.iiop.IIOPProfile; //导入依赖的package包/类
public IIOPProfile getEffectiveProfile()
{
    return effectiveTargetIOR.getProfile();
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:5,代码来源:CorbaContactInfoBase.java


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