org.jacorb.orb.portableInterceptor

Class IORInfoImpl

Implemented Interfaces:
IDLEntity, IORInfo, IORInfoExt, IORInfoOperations, Object, java.io.Serializable

public class IORInfoImpl
extends LocalObject
implements IORInfoExt

This class represents the type of info object that will be passed to the IORInterceptors.
See PI Spec p.7-64f

Version:
$Id: IORInfoImpl.java,v 1.13 2004/05/06 12:40:00 nicolas Exp $

Author:
Nicolas Noffke

Constructor Summary

IORInfoImpl(ORB orb, POA poa, Map components, Map policy_overrides, List profiles)

Method Summary

void
add_ior_component(TaggedComponent component)
Adds component to all profiles.
void
add_ior_component_to_profile(TaggedComponent component, int id)
Adds the component to the profile with the given tag.
void
add_profile(Profile profile)
This method adds a further profile to an IOR.
Policy
get_effective_policy(int type)
int
get_number_of_profiles(int tag)
This method returns the number of profiles of the given type.
Profile
get_profile(int tag)
Returns the first profile with the given tag (position == 0).
Profile
get_profile(int tag, int position)
Returns the profile with the given tag at the given position.

Methods inherited from class org.omg.CORBA.LocalObject

_create_request, _create_request, _duplicate, _get_domain_managers, _get_interface, _get_interface_def, _get_policy, _hash, _ids, _invoke, _is_a, _is_equivalent, _is_local, _non_existent, _orb, _release, _releaseReply, _request, _request, _servant_postinvoke, _servant_preinvoke, _set_policy_override, validate_connection

Constructor Details

IORInfoImpl

public IORInfoImpl(ORB orb,
                   POA poa,
                   Map components,
                   Map policy_overrides,
                   List profiles)

Method Details

add_ior_component

public void add_ior_component(TaggedComponent component)
Adds component to all profiles.
Specified by:
add_ior_component in interface IORInfoOperations


add_ior_component_to_profile

public void add_ior_component_to_profile(TaggedComponent component,
                                         int id)
Adds the component to the profile with the given tag.
Specified by:
add_ior_component_to_profile in interface IORInfoOperations


add_profile

public void add_profile(Profile profile)
This method adds a further profile to an IOR. By using this method it is possible to append e.g. further IIOP profiles. The added profile is marshalled after all profiles already existing in profile list.
Specified by:
add_profile in interface IORInfoExt

Parameters:
profile - the profile to add


get_effective_policy

public Policy get_effective_policy(int type)
Specified by:
get_effective_policy in interface IORInfoOperations

Returns:
a policy of the given type, or null, if no policy of that type is present.


get_number_of_profiles

public int get_number_of_profiles(int tag)
This method returns the number of profiles of the given type. The returned value can be used to iterate over the existing profiles of given type (get_profile()).
Specified by:
get_number_of_profiles in interface IORInfoExt

Parameters:
tag - profile tag, e.g. TAG_INTERNET_IOP.value

Returns:
number of profiles of given tag


get_profile

public Profile get_profile(int tag)
Returns the first profile with the given tag (position == 0). If no profile with given tag exists, null is returned.
Specified by:
get_profile in interface IORInfoExt

Parameters:
tag - tag of profile, e.g. TAG_INTERNET_IOP.value

Returns:
first profile or null if no profile with given tag exists


get_profile

public Profile get_profile(int tag,
                           int position)
Returns the profile with the given tag at the given position. Following rule must apply to parameter position:

0 <= position <32get_number_of_profiles(tag)

Specified by:
get_profile in interface IORInfoExt

Parameters:
tag - tag of profile, e.g. TAG_INTERNET_IOP.value
position - position in IOR

Returns:
profile