com.sun.corba.se.spi.ior.iiop.IIOPAddress Java Examples

The following examples show how to use com.sun.corba.se.spi.ior.iiop.IIOPAddress. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source Project: openjdk-jdk8u-backup   Author: AdoptOpenJDK   File: BootstrapResolverImpl.java    License: GNU General Public License v2.0 6 votes vote down vote up
public BootstrapResolverImpl(ORB orb, String host, int port) {
    wrapper = ORBUtilSystemException.get( orb,
        CORBALogDomains.ORB_RESOLVER ) ;

    // Create a new IOR with the magic of INIT
    byte[] initialKey = "INIT".getBytes() ;
    ObjectKey okey = orb.getObjectKeyFactory().create(initialKey) ;

    IIOPAddress addr = IIOPFactories.makeIIOPAddress( orb, host, port ) ;
    IIOPProfileTemplate ptemp = IIOPFactories.makeIIOPProfileTemplate(
        orb, GIOPVersion.V1_0, addr);

    IORTemplate iortemp = IORFactories.makeIORTemplate( okey.getTemplate() ) ;
    iortemp.add( ptemp ) ;

    IOR initialIOR = iortemp.makeIOR( (com.sun.corba.se.spi.orb.ORB)orb,
        "", okey.getId() ) ;

    bootstrapDelegate = ORBUtility.makeClientDelegate( initialIOR ) ;
}
 
Example #2
Source Project: TencentKona-8   Author: Tencent   File: BootstrapResolverImpl.java    License: GNU General Public License v2.0 6 votes vote down vote up
public BootstrapResolverImpl(ORB orb, String host, int port) {
    wrapper = ORBUtilSystemException.get( orb,
        CORBALogDomains.ORB_RESOLVER ) ;

    // Create a new IOR with the magic of INIT
    byte[] initialKey = "INIT".getBytes() ;
    ObjectKey okey = orb.getObjectKeyFactory().create(initialKey) ;

    IIOPAddress addr = IIOPFactories.makeIIOPAddress( orb, host, port ) ;
    IIOPProfileTemplate ptemp = IIOPFactories.makeIIOPProfileTemplate(
        orb, GIOPVersion.V1_0, addr);

    IORTemplate iortemp = IORFactories.makeIORTemplate( okey.getTemplate() ) ;
    iortemp.add( ptemp ) ;

    IOR initialIOR = iortemp.makeIOR( (com.sun.corba.se.spi.orb.ORB)orb,
        "", okey.getId() ) ;

    bootstrapDelegate = ORBUtility.makeClientDelegate( initialIOR ) ;
}
 
Example #3
Source Project: JDKSourceCode1.8   Author: wupeixuan   File: BootstrapResolverImpl.java    License: MIT License 6 votes vote down vote up
public BootstrapResolverImpl(ORB orb, String host, int port) {
    wrapper = ORBUtilSystemException.get( orb,
        CORBALogDomains.ORB_RESOLVER ) ;

    // Create a new IOR with the magic of INIT
    byte[] initialKey = "INIT".getBytes() ;
    ObjectKey okey = orb.getObjectKeyFactory().create(initialKey) ;

    IIOPAddress addr = IIOPFactories.makeIIOPAddress( orb, host, port ) ;
    IIOPProfileTemplate ptemp = IIOPFactories.makeIIOPProfileTemplate(
        orb, GIOPVersion.V1_0, addr);

    IORTemplate iortemp = IORFactories.makeIORTemplate( okey.getTemplate() ) ;
    iortemp.add( ptemp ) ;

    IOR initialIOR = iortemp.makeIOR( (com.sun.corba.se.spi.orb.ORB)orb,
        "", okey.getId() ) ;

    bootstrapDelegate = ORBUtility.makeClientDelegate( initialIOR ) ;
}
 
Example #4
Source Project: jdk1.8-source-analysis   Author: raysonfang   File: IIOPFactories.java    License: Apache License 2.0 5 votes vote down vote up
public static IdentifiableFactory makeAlternateIIOPAddressComponentFactory()
{
    return new EncapsulationFactoryBase(TAG_ALTERNATE_IIOP_ADDRESS.value) {
        public Identifiable readContents( InputStream in )
        {
            IIOPAddress addr = new IIOPAddressImpl( in ) ;
            Identifiable comp =
                new AlternateIIOPAddressComponentImpl( addr ) ;
            return comp ;
        }
    } ;
}
 
Example #5
Source Project: openjdk-jdk9   Author: AdoptOpenJDK   File: DefaultSocketFactory.java    License: GNU General Public License v2.0 5 votes vote down vote up
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());
}
 
Example #6
Source Project: jdk1.8-source-analysis   Author: raysonfang   File: DefaultSocketFactory.java    License: Apache License 2.0 5 votes vote down vote up
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());
}
 
Example #7
Source Project: jdk1.8-source-analysis   Author: raysonfang   File: DefaultIORToSocketInfoImpl.java    License: Apache License 2.0 5 votes vote down vote up
public List getSocketInfo(IOR ior)
{
    SocketInfo socketInfo;
    List result = new ArrayList();

    IIOPProfileTemplate iiopProfileTemplate = (IIOPProfileTemplate)
        ior.getProfile().getTaggedProfileTemplate() ;
    IIOPAddress primary = iiopProfileTemplate.getPrimaryAddress() ;
    String hostname = primary.getHost().toLowerCase();
    int    port     = primary.getPort();
    // NOTE: we could check for 0 (i.e., CSIv2) but, for a
    // non-CSIv2-configured client ORB talking to a CSIv2 configured
    // server ORB you might end up with an empty contact info list
    // which would then report a failure which would not be as
    // instructive as leaving a ContactInfo with a 0 port in the list.
    socketInfo = createSocketInfo(hostname, port);
    result.add(socketInfo);

    Iterator iterator = iiopProfileTemplate.iteratorById(
        TAG_ALTERNATE_IIOP_ADDRESS.value);

    while (iterator.hasNext()) {
        AlternateIIOPAddressComponent alternate =
            (AlternateIIOPAddressComponent) iterator.next();
        hostname = alternate.getAddress().getHost().toLowerCase();
        port     = alternate.getAddress().getPort();
        socketInfo= createSocketInfo(hostname, port);
        result.add(socketInfo);
    }
    return result;
}
 
Example #8
Source Project: openjdk-jdk8u-backup   Author: AdoptOpenJDK   File: IIOPProfileImpl.java    License: GNU General Public License v2.0 5 votes vote down vote up
private void init( InputStream istr )
{
    // First, read all of the IIOP IOR data
    GIOPVersion version = new GIOPVersion() ;
    version.read( istr ) ;
    IIOPAddress primary = new IIOPAddressImpl( istr ) ;
    byte[] key = EncapsulationUtility.readOctets( istr ) ;

    ObjectKey okey = orb.getObjectKeyFactory().create( key ) ;
    oktemp = okey.getTemplate() ;
    oid = okey.getId() ;

    proftemp = IIOPFactories.makeIIOPProfileTemplate( orb,
        version, primary ) ;

    // Handle any tagged components (if applicable)
    if (version.getMinor() > 0)
        EncapsulationUtility.readIdentifiableSequence( proftemp,
            orb.getTaggedComponentFactoryFinder(), istr ) ;

    // If there is no codebase in this IOR and there IS a
    // java.rmi.server.codebase property set, we need to
    // update the IOR with the local codebase.  Note that
    // there is only one instance of the local codebase, but it
    // can be safely shared in multiple IORs since it is immutable.
    if (uncachedGetCodeBase() == null) {
        JavaCodebaseComponent jcc = LocalCodeBaseSingletonHolder.comp ;

        if (jcc != null) {
            if (version.getMinor() > 0)
                proftemp.add( jcc ) ;

            codebase = jcc.getURLs() ;
        }

        // Whether codebase is null or not, we have it,
        // and so getCodebase ned never call uncachedGetCodebase.
        cachedCodebase = true;
    }
}
 
Example #9
Source Project: TencentKona-8   Author: Tencent   File: IIOPFactories.java    License: GNU General Public License v2.0 5 votes vote down vote up
public static IdentifiableFactory makeAlternateIIOPAddressComponentFactory()
{
    return new EncapsulationFactoryBase(TAG_ALTERNATE_IIOP_ADDRESS.value) {
        public Identifiable readContents( InputStream in )
        {
            IIOPAddress addr = new IIOPAddressImpl( in ) ;
            Identifiable comp =
                new AlternateIIOPAddressComponentImpl( addr ) ;
            return comp ;
        }
    } ;
}
 
Example #10
Source Project: openjdk-jdk8u-backup   Author: AdoptOpenJDK   File: DefaultSocketFactory.java    License: GNU General Public License v2.0 5 votes vote down vote up
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());
}
 
Example #11
Source Project: TencentKona-8   Author: Tencent   File: DefaultIORToSocketInfoImpl.java    License: GNU General Public License v2.0 5 votes vote down vote up
public List getSocketInfo(IOR ior)
{
    SocketInfo socketInfo;
    List result = new ArrayList();

    IIOPProfileTemplate iiopProfileTemplate = (IIOPProfileTemplate)
        ior.getProfile().getTaggedProfileTemplate() ;
    IIOPAddress primary = iiopProfileTemplate.getPrimaryAddress() ;
    String hostname = primary.getHost().toLowerCase();
    int    port     = primary.getPort();
    // NOTE: we could check for 0 (i.e., CSIv2) but, for a
    // non-CSIv2-configured client ORB talking to a CSIv2 configured
    // server ORB you might end up with an empty contact info list
    // which would then report a failure which would not be as
    // instructive as leaving a ContactInfo with a 0 port in the list.
    socketInfo = createSocketInfo(hostname, port);
    result.add(socketInfo);

    Iterator iterator = iiopProfileTemplate.iteratorById(
        TAG_ALTERNATE_IIOP_ADDRESS.value);

    while (iterator.hasNext()) {
        AlternateIIOPAddressComponent alternate =
            (AlternateIIOPAddressComponent) iterator.next();
        hostname = alternate.getAddress().getHost().toLowerCase();
        port     = alternate.getAddress().getPort();
        socketInfo= createSocketInfo(hostname, port);
        result.add(socketInfo);
    }
    return result;
}
 
Example #12
Source Project: TencentKona-8   Author: Tencent   File: IIOPProfileImpl.java    License: GNU General Public License v2.0 5 votes vote down vote up
private void init( InputStream istr )
{
    // First, read all of the IIOP IOR data
    GIOPVersion version = new GIOPVersion() ;
    version.read( istr ) ;
    IIOPAddress primary = new IIOPAddressImpl( istr ) ;
    byte[] key = EncapsulationUtility.readOctets( istr ) ;

    ObjectKey okey = orb.getObjectKeyFactory().create( key ) ;
    oktemp = okey.getTemplate() ;
    oid = okey.getId() ;

    proftemp = IIOPFactories.makeIIOPProfileTemplate( orb,
        version, primary ) ;

    // Handle any tagged components (if applicable)
    if (version.getMinor() > 0)
        EncapsulationUtility.readIdentifiableSequence( proftemp,
            orb.getTaggedComponentFactoryFinder(), istr ) ;

    // If there is no codebase in this IOR and there IS a
    // java.rmi.server.codebase property set, we need to
    // update the IOR with the local codebase.  Note that
    // there is only one instance of the local codebase, but it
    // can be safely shared in multiple IORs since it is immutable.
    if (uncachedGetCodeBase() == null) {
        JavaCodebaseComponent jcc = LocalCodeBaseSingletonHolder.comp ;

        if (jcc != null) {
            if (version.getMinor() > 0)
                proftemp.add( jcc ) ;

            codebase = jcc.getURLs() ;
        }

        // Whether codebase is null or not, we have it,
        // and so getCodebase ned never call uncachedGetCodebase.
        cachedCodebase = true;
    }
}
 
Example #13
Source Project: TencentKona-8   Author: Tencent   File: IIOPAddressBase.java    License: GNU General Public License v2.0 5 votes vote down vote up
public boolean equals( Object obj )
{
    if (!(obj instanceof IIOPAddress))
        return false ;

    IIOPAddress other = (IIOPAddress)obj ;

    return getHost().equals(other.getHost()) &&
        (getPort() == other.getPort()) ;
}
 
Example #14
Source Project: jdk8u60   Author: chenghanpeng   File: IIOPFactories.java    License: GNU General Public License v2.0 5 votes vote down vote up
public static IdentifiableFactory makeAlternateIIOPAddressComponentFactory()
{
    return new EncapsulationFactoryBase(TAG_ALTERNATE_IIOP_ADDRESS.value) {
        public Identifiable readContents( InputStream in )
        {
            IIOPAddress addr = new IIOPAddressImpl( in ) ;
            Identifiable comp =
                new AlternateIIOPAddressComponentImpl( addr ) ;
            return comp ;
        }
    } ;
}
 
Example #15
Source Project: openjdk-jdk8u-backup   Author: AdoptOpenJDK   File: DefaultIORToSocketInfoImpl.java    License: GNU General Public License v2.0 5 votes vote down vote up
public List getSocketInfo(IOR ior)
{
    SocketInfo socketInfo;
    List result = new ArrayList();

    IIOPProfileTemplate iiopProfileTemplate = (IIOPProfileTemplate)
        ior.getProfile().getTaggedProfileTemplate() ;
    IIOPAddress primary = iiopProfileTemplate.getPrimaryAddress() ;
    String hostname = primary.getHost().toLowerCase();
    int    port     = primary.getPort();
    // NOTE: we could check for 0 (i.e., CSIv2) but, for a
    // non-CSIv2-configured client ORB talking to a CSIv2 configured
    // server ORB you might end up with an empty contact info list
    // which would then report a failure which would not be as
    // instructive as leaving a ContactInfo with a 0 port in the list.
    socketInfo = createSocketInfo(hostname, port);
    result.add(socketInfo);

    Iterator iterator = iiopProfileTemplate.iteratorById(
        TAG_ALTERNATE_IIOP_ADDRESS.value);

    while (iterator.hasNext()) {
        AlternateIIOPAddressComponent alternate =
            (AlternateIIOPAddressComponent) iterator.next();
        hostname = alternate.getAddress().getHost().toLowerCase();
        port     = alternate.getAddress().getPort();
        socketInfo= createSocketInfo(hostname, port);
        result.add(socketInfo);
    }
    return result;
}
 
Example #16
Source Project: openjdk-jdk9   Author: AdoptOpenJDK   File: DefaultIORToSocketInfoImpl.java    License: GNU General Public License v2.0 5 votes vote down vote up
public List getSocketInfo(IOR ior)
{
    SocketInfo socketInfo;
    List result = new ArrayList();

    IIOPProfileTemplate iiopProfileTemplate = (IIOPProfileTemplate)
        ior.getProfile().getTaggedProfileTemplate() ;
    IIOPAddress primary = iiopProfileTemplate.getPrimaryAddress() ;
    String hostname = primary.getHost().toLowerCase();
    int    port     = primary.getPort();
    // NOTE: we could check for 0 (i.e., CSIv2) but, for a
    // non-CSIv2-configured client ORB talking to a CSIv2 configured
    // server ORB you might end up with an empty contact info list
    // which would then report a failure which would not be as
    // instructive as leaving a ContactInfo with a 0 port in the list.
    socketInfo = createSocketInfo(hostname, port);
    result.add(socketInfo);

    Iterator iterator = iiopProfileTemplate.iteratorById(
        TAG_ALTERNATE_IIOP_ADDRESS.value);

    while (iterator.hasNext()) {
        AlternateIIOPAddressComponent alternate =
            (AlternateIIOPAddressComponent) iterator.next();
        hostname = alternate.getAddress().getHost().toLowerCase();
        port     = alternate.getAddress().getPort();
        socketInfo= createSocketInfo(hostname, port);
        result.add(socketInfo);
    }
    return result;
}
 
Example #17
Source Project: openjdk-jdk8u-backup   Author: AdoptOpenJDK   File: IIOPProfileTemplateImpl.java    License: GNU General Public License v2.0 5 votes vote down vote up
public IIOPProfileTemplateImpl( ORB orb, GIOPVersion version, IIOPAddress primary )
{
    this.orb = orb ;
    this.giopVersion = version ;
    this.primary = primary ;
    if (giopVersion.getMinor() == 0)
        // Adding tagged components is not allowed for IIOP 1.0,
        // so this template is complete and should be made immutable.
        makeImmutable() ;
}
 
Example #18
Source Project: jdk8u60   Author: chenghanpeng   File: IIOPAddressBase.java    License: GNU General Public License v2.0 5 votes vote down vote up
public boolean equals( Object obj )
{
    if (!(obj instanceof IIOPAddress))
        return false ;

    IIOPAddress other = (IIOPAddress)obj ;

    return getHost().equals(other.getHost()) &&
        (getPort() == other.getPort()) ;
}
 
Example #19
Source Project: JDKSourceCode1.8   Author: wupeixuan   File: IIOPFactories.java    License: MIT License 5 votes vote down vote up
public static IdentifiableFactory makeAlternateIIOPAddressComponentFactory()
{
    return new EncapsulationFactoryBase(TAG_ALTERNATE_IIOP_ADDRESS.value) {
        public Identifiable readContents( InputStream in )
        {
            IIOPAddress addr = new IIOPAddressImpl( in ) ;
            Identifiable comp =
                new AlternateIIOPAddressComponentImpl( addr ) ;
            return comp ;
        }
    } ;
}
 
Example #20
Source Project: JDKSourceCode1.8   Author: wupeixuan   File: DefaultIORToSocketInfoImpl.java    License: MIT License 5 votes vote down vote up
public List getSocketInfo(IOR ior)
{
    SocketInfo socketInfo;
    List result = new ArrayList();

    IIOPProfileTemplate iiopProfileTemplate = (IIOPProfileTemplate)
        ior.getProfile().getTaggedProfileTemplate() ;
    IIOPAddress primary = iiopProfileTemplate.getPrimaryAddress() ;
    String hostname = primary.getHost().toLowerCase();
    int    port     = primary.getPort();
    // NOTE: we could check for 0 (i.e., CSIv2) but, for a
    // non-CSIv2-configured client ORB talking to a CSIv2 configured
    // server ORB you might end up with an empty contact info list
    // which would then report a failure which would not be as
    // instructive as leaving a ContactInfo with a 0 port in the list.
    socketInfo = createSocketInfo(hostname, port);
    result.add(socketInfo);

    Iterator iterator = iiopProfileTemplate.iteratorById(
        TAG_ALTERNATE_IIOP_ADDRESS.value);

    while (iterator.hasNext()) {
        AlternateIIOPAddressComponent alternate =
            (AlternateIIOPAddressComponent) iterator.next();
        hostname = alternate.getAddress().getHost().toLowerCase();
        port     = alternate.getAddress().getPort();
        socketInfo= createSocketInfo(hostname, port);
        result.add(socketInfo);
    }
    return result;
}
 
Example #21
Source Project: JDKSourceCode1.8   Author: wupeixuan   File: IIOPProfileImpl.java    License: MIT License 5 votes vote down vote up
private void init( InputStream istr )
{
    // First, read all of the IIOP IOR data
    GIOPVersion version = new GIOPVersion() ;
    version.read( istr ) ;
    IIOPAddress primary = new IIOPAddressImpl( istr ) ;
    byte[] key = EncapsulationUtility.readOctets( istr ) ;

    ObjectKey okey = orb.getObjectKeyFactory().create( key ) ;
    oktemp = okey.getTemplate() ;
    oid = okey.getId() ;

    proftemp = IIOPFactories.makeIIOPProfileTemplate( orb,
        version, primary ) ;

    // Handle any tagged components (if applicable)
    if (version.getMinor() > 0)
        EncapsulationUtility.readIdentifiableSequence( proftemp,
            orb.getTaggedComponentFactoryFinder(), istr ) ;

    // If there is no codebase in this IOR and there IS a
    // java.rmi.server.codebase property set, we need to
    // update the IOR with the local codebase.  Note that
    // there is only one instance of the local codebase, but it
    // can be safely shared in multiple IORs since it is immutable.
    if (uncachedGetCodeBase() == null) {
        JavaCodebaseComponent jcc = LocalCodeBaseSingletonHolder.comp ;

        if (jcc != null) {
            if (version.getMinor() > 0)
                proftemp.add( jcc ) ;

            codebase = jcc.getURLs() ;
        }

        // Whether codebase is null or not, we have it,
        // and so getCodebase ned never call uncachedGetCodebase.
        cachedCodebase = true;
    }
}
 
Example #22
Source Project: openjdk-jdk8u-backup   Author: AdoptOpenJDK   File: IIOPAddressBase.java    License: GNU General Public License v2.0 5 votes vote down vote up
public boolean equals( Object obj )
{
    if (!(obj instanceof IIOPAddress))
        return false ;

    IIOPAddress other = (IIOPAddress)obj ;

    return getHost().equals(other.getHost()) &&
        (getPort() == other.getPort()) ;
}
 
Example #23
Source Project: JDKSourceCode1.8   Author: wupeixuan   File: IIOPProfileTemplateImpl.java    License: MIT License 5 votes vote down vote up
public IIOPProfileTemplateImpl( ORB orb, GIOPVersion version, IIOPAddress primary )
{
    this.orb = orb ;
    this.giopVersion = version ;
    this.primary = primary ;
    if (giopVersion.getMinor() == 0)
        // Adding tagged components is not allowed for IIOP 1.0,
        // so this template is complete and should be made immutable.
        makeImmutable() ;
}
 
Example #24
Source Project: JDKSourceCode1.8   Author: wupeixuan   File: IIOPAddressBase.java    License: MIT License 5 votes vote down vote up
public boolean equals( Object obj )
{
    if (!(obj instanceof IIOPAddress))
        return false ;

    IIOPAddress other = (IIOPAddress)obj ;

    return getHost().equals(other.getHost()) &&
        (getPort() == other.getPort()) ;
}
 
Example #25
Source Project: openjdk-jdk8u   Author: AdoptOpenJDK   File: IIOPFactories.java    License: GNU General Public License v2.0 5 votes vote down vote up
public static IdentifiableFactory makeAlternateIIOPAddressComponentFactory()
{
    return new EncapsulationFactoryBase(TAG_ALTERNATE_IIOP_ADDRESS.value) {
        public Identifiable readContents( InputStream in )
        {
            IIOPAddress addr = new IIOPAddressImpl( in ) ;
            Identifiable comp =
                new AlternateIIOPAddressComponentImpl( addr ) ;
            return comp ;
        }
    } ;
}
 
Example #26
Source Project: openjdk-jdk8u   Author: AdoptOpenJDK   File: DefaultSocketFactory.java    License: GNU General Public License v2.0 5 votes vote down vote up
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());
}
 
Example #27
Source Project: openjdk-jdk8u   Author: AdoptOpenJDK   File: DefaultIORToSocketInfoImpl.java    License: GNU General Public License v2.0 5 votes vote down vote up
public List getSocketInfo(IOR ior)
{
    SocketInfo socketInfo;
    List result = new ArrayList();

    IIOPProfileTemplate iiopProfileTemplate = (IIOPProfileTemplate)
        ior.getProfile().getTaggedProfileTemplate() ;
    IIOPAddress primary = iiopProfileTemplate.getPrimaryAddress() ;
    String hostname = primary.getHost().toLowerCase();
    int    port     = primary.getPort();
    // NOTE: we could check for 0 (i.e., CSIv2) but, for a
    // non-CSIv2-configured client ORB talking to a CSIv2 configured
    // server ORB you might end up with an empty contact info list
    // which would then report a failure which would not be as
    // instructive as leaving a ContactInfo with a 0 port in the list.
    socketInfo = createSocketInfo(hostname, port);
    result.add(socketInfo);

    Iterator iterator = iiopProfileTemplate.iteratorById(
        TAG_ALTERNATE_IIOP_ADDRESS.value);

    while (iterator.hasNext()) {
        AlternateIIOPAddressComponent alternate =
            (AlternateIIOPAddressComponent) iterator.next();
        hostname = alternate.getAddress().getHost().toLowerCase();
        port     = alternate.getAddress().getPort();
        socketInfo= createSocketInfo(hostname, port);
        result.add(socketInfo);
    }
    return result;
}
 
Example #28
Source Project: openjdk-jdk9   Author: AdoptOpenJDK   File: IIOPFactories.java    License: GNU General Public License v2.0 5 votes vote down vote up
public static IdentifiableFactory makeAlternateIIOPAddressComponentFactory()
{
    return new EncapsulationFactoryBase(TAG_ALTERNATE_IIOP_ADDRESS.value) {
        public Identifiable readContents( InputStream in )
        {
            IIOPAddress addr = new IIOPAddressImpl( in ) ;
            Identifiable comp =
                new AlternateIIOPAddressComponentImpl( addr ) ;
            return comp ;
        }
    } ;
}
 
Example #29
Source Project: openjdk-jdk9   Author: AdoptOpenJDK   File: IIOPProfileTemplateImpl.java    License: GNU General Public License v2.0 5 votes vote down vote up
public IIOPProfileTemplateImpl( ORB orb, GIOPVersion version, IIOPAddress primary )
{
    this.orb = orb ;
    this.giopVersion = version ;
    this.primary = primary ;
    if (giopVersion.getMinor() == 0)
        // Adding tagged components is not allowed for IIOP 1.0,
        // so this template is complete and should be made immutable.
        makeImmutable() ;
}
 
Example #30
Source Project: openjdk-jdk8u   Author: AdoptOpenJDK   File: IIOPProfileImpl.java    License: GNU General Public License v2.0 5 votes vote down vote up
private void init( InputStream istr )
{
    // First, read all of the IIOP IOR data
    GIOPVersion version = new GIOPVersion() ;
    version.read( istr ) ;
    IIOPAddress primary = new IIOPAddressImpl( istr ) ;
    byte[] key = EncapsulationUtility.readOctets( istr ) ;

    ObjectKey okey = orb.getObjectKeyFactory().create( key ) ;
    oktemp = okey.getTemplate() ;
    oid = okey.getId() ;

    proftemp = IIOPFactories.makeIIOPProfileTemplate( orb,
        version, primary ) ;

    // Handle any tagged components (if applicable)
    if (version.getMinor() > 0)
        EncapsulationUtility.readIdentifiableSequence( proftemp,
            orb.getTaggedComponentFactoryFinder(), istr ) ;

    // If there is no codebase in this IOR and there IS a
    // java.rmi.server.codebase property set, we need to
    // update the IOR with the local codebase.  Note that
    // there is only one instance of the local codebase, but it
    // can be safely shared in multiple IORs since it is immutable.
    if (uncachedGetCodeBase() == null) {
        JavaCodebaseComponent jcc = LocalCodeBaseSingletonHolder.comp ;

        if (jcc != null) {
            if (version.getMinor() > 0)
                proftemp.add( jcc ) ;

            codebase = jcc.getURLs() ;
        }

        // Whether codebase is null or not, we have it,
        // and so getCodebase ned never call uncachedGetCodebase.
        cachedCodebase = true;
    }
}