1. package org.omg.PortableInterceptor;
  2. /**
  3. * org/omg/PortableInterceptor/IORInfoOperations.java .
  4. * Generated by the IDL-to-Java compiler (portable), version "3.1"
  5. * from ../../../../src/share/classes/org/omg/PortableInterceptor/Interceptors.idl
  6. * Monday, February 23, 2004 7:03:06 AM GMT
  7. */
  8. /**
  9. * Provides the server-side ORB service with access to the applicable
  10. * policies during IOR construction and the ability to add components.
  11. * The ORB passes an instance of its implementation of this interface as
  12. * a parameter to <code>IORInterceptor.establish_components</code>.
  13. *
  14. * @see IORInterceptor
  15. */
  16. public interface IORInfoOperations
  17. {
  18. /**
  19. * Allows an ORB service implementation to determine what server side
  20. * policy of a particular type is in effect for an IOR being
  21. * constructed. When the IOR being constructed is for an object
  22. * implemented using a POA, all Policy objects passed to the
  23. * <code>PortableServer.POA.create_POA</code> call that created that
  24. * POA are accessable via <code>get_effective_policy</code>.
  25. * <p>
  26. * If a policy for the given type is not known to the ORB, then this
  27. * operation will throw <code>INV_POLICY</code> with a standard minor
  28. * code of 2.
  29. *
  30. * @param type an int specifying the type of policy to return.
  31. * @return The effective <code>CORBA.Policy</code> object of the
  32. * requested type. If the given policy type is known, but no policy
  33. * of that type is in effect, then this operation will return a
  34. * nil object reference.
  35. */
  36. org.omg.CORBA.Policy get_effective_policy (int type);
  37. /**
  38. * A portable ORB service implementation calls
  39. * <code>add_ior_component</code> from its implementation of
  40. * <code>establish_components</code> to add a tagged component to the
  41. * set which will be included when constructing IORs. The components in
  42. * this set will be included in all profiles.
  43. * <p>
  44. * Any number of components may exist with the same component ID.
  45. *
  46. * @param a_component The IOP.TaggedComponent to add.
  47. */
  48. void add_ior_component (org.omg.IOP.TaggedComponent tagged_component);
  49. /**
  50. * A portable ORB service implementation calls
  51. * <code>add_ior_component_to_profile</code> from its implementation of
  52. * <code>establish_components</code> to add a tagged component to the
  53. * set which will be included when constructing IORs. The components in
  54. * this set will be included in the specified profile.
  55. * <p>
  56. * Any number of components may exist with the same component ID.
  57. *
  58. * @param a_component The <code>IOP.TaggedComponent</code> to add.
  59. * @param profile_id The profile id of the profile to
  60. * which this component will be added.
  61. * @exception BAD_PARAM thrown, with a standard minor code of 29, if the
  62. * given profile ID does not define a known profile or it is
  63. * impossible to add components to that profile.
  64. */
  65. void add_ior_component_to_profile (org.omg.IOP.TaggedComponent tagged_component, int profile_id);
  66. } // interface IORInfoOperations