- package org.omg.PortableInterceptor;
-
-
- /**
- * org/omg/PortableInterceptor/ORBInitInfoOperations.java .
- * Generated by the IDL-to-Java compiler (portable), version "3.1"
- * from ../../../../src/share/classes/org/omg/PortableInterceptor/Interceptors.idl
- * Monday, February 23, 2004 7:03:06 AM GMT
- */
-
-
- /**
- * Passed to each <code>ORBInitializer</code>, allowing it to
- * to register interceptors and perform other duties while the ORB is
- * initializing.
- * <p>
- * The <code>ORBInitInfo</code> object is only valid during
- * <code>ORB.init</code>. If a service keeps a reference to its
- * <code>ORBInitInfo</code> object and tries to use it after
- * <code>ORB.init</code> returns, the object no longer exists and an
- * <code>OBJECT_NOT_EXIST</code> exception shall be thrown.
- *
- * @see ORBInitializer
- */
- public interface ORBInitInfoOperations
- {
-
- /**
- * Returns the arguments passed to <code>ORB.init</code>. They may or
- * may not contain the ORB's arguments.
- */
- String[] arguments ();
-
- /**
- * Returns the ID of the ORB being initialized.
- */
- String orb_id ();
-
- /**
- * Returns the <code>IOP.CodecFactory</code>. The
- * <code>CodecFactory</code> is normally obtained via a call to
- * <code>ORB.resolve_initial_references( "CodecFactory" )</code>, but
- * since the ORB is not yet available and Interceptors, particularly when
- * processing service contexts, will require a <code>Codec</code>, a
- * means of obtaining a <code>Codec</code> is necessary during ORB
- * initialization.
- */
- org.omg.IOP.CodecFactory codec_factory ();
-
- /**
- * Identical to <code>ORB.register_initial_reference</code>. This same
- * functionality exists here because the ORB, not yet fully initialized,
- * is not yet available but initial references may need to be
- * registered as part of Interceptor registration. The only difference
- * is that the version of this operation on the ORB uses PIDL
- * (<code>CORBA.ORB.ObjectId</code>) and
- * (<code>CORBA.ORB.InvalidName</code>) whereas the version in this
- * interface uses IDL defined in this interface; the semantics are
- * identical.
- */
- void register_initial_reference (String id, org.omg.CORBA.Object obj) throws org.omg.PortableInterceptor.ORBInitInfoPackage.InvalidName;
-
- /**
- * Identical to <code>ORB.resolve_initial_references</code>. This same
- * functionality exists here because the ORB, not yet fully initialized,
- * is not yet available but initial references may be required from the
- * ORB as part of Interceptor registration. The only difference is that
- * the version of this operation on the ORB uses PIDL
- * (<code>CORBA::ORB::ObjectId</code> and
- * <code>CORBA::ORB::InvalidName</code>) whereas the version in this
- * interface uses IDL defined in this interface; the semantics
- * are identical.
- * <p>
- * This operation is only valid during post_init.
- */
- org.omg.CORBA.Object resolve_initial_references (String id) throws org.omg.PortableInterceptor.ORBInitInfoPackage.InvalidName;
-
- /**
- * Used to add a client-side request Interceptor to the list of
- * client-side request Interceptors.
- *
- * @param interceptor The <code>ClientRequestInterceptor</code> to be
- * added.
- * @exception DuplicateName thrown if a client-side request Interceptor
- * has already been registered with this Interceptor's name.
- */
- void add_client_request_interceptor (org.omg.PortableInterceptor.ClientRequestInterceptor interceptor) throws org.omg.PortableInterceptor.ORBInitInfoPackage.DuplicateName;
-
- /**
- * Used to add a server-side request Interceptor to the list of
- * server-side request Interceptors.
- *
- * @param interceptor The ServerRequestInterceptor to be added.
- * @exception DuplicateName thrown if a server-side request Interceptor
- * has already been registered with this Interceptor's name
- */
- void add_server_request_interceptor (org.omg.PortableInterceptor.ServerRequestInterceptor interceptor) throws org.omg.PortableInterceptor.ORBInitInfoPackage.DuplicateName;
-
- /**
- * Used to add an IOR Interceptor to the list of IOR Interceptors.
- *
- * @param interceptor The IORInterceptor to be added.
- * @exception DuplicateName thrown if an IOR Interceptor has already
- * been registered with this Interceptor's name.
- */
- void add_ior_interceptor (org.omg.PortableInterceptor.IORInterceptor interceptor) throws org.omg.PortableInterceptor.ORBInitInfoPackage.DuplicateName;
-
- /**
- * Called to allocate a slot on <code>PortableInterceptor.Current</code>.
- * <p>
- * Note that while slot id's can be allocated within an ORB initializer,
- * the slots themselves cannot be initialized.
- *
- * @return The index to the slot which has been allocated.
- * @exception BAD_INV_ORDER thrown, with a standard minor code of 14, if
- * <code>set_slot</code> or <code>get_slot</code> is called on the
- * <code>PICurrent</code> within an ORB initializer.
- * @see Current
- */
- int allocate_slot_id ();
-
- /**
- * Registers a <code>PolicyFactory</code> for the given
- * <code>PolicyType</code>.
- *
- * @param type The policy type that the given <code>PolicyFactory</code>
- * serves.
- * @param policy_factory The factory for the given policy type.
- * @exception BAD_INV_ORDER thrown, with a standard minor code of 16, if
- * a <code>PolicyFactory</code> already exists for the given
- * <code>PolicyType</code>.
- */
- void register_policy_factory (int type, org.omg.PortableInterceptor.PolicyFactory policy_factory);
- } // interface ORBInitInfoOperations