org.omg.PortableInterceptor

Interface ORBInitInfoOperations

Known Subinterfaces:
ORBInitInfo

public interface ORBInitInfoOperations

Defines operations, applicable to ORBInitInfo. The ORBInitInfo is passed to the ORBInitializer that is reponsible for registering an Interceptor.

Method Summary

void
add_client_request_interceptor(ClientRequestInterceptor interceptor)
Register the client request interceptor.
void
add_ior_interceptor(IORInterceptor interceptor)
Register the IOR (object reference) interceptor.
void
add_server_request_interceptor(ServerRequestInterceptor interceptor)
Register the server request interceptor.
int
allocate_slot_id()
Allocate a slot on a Current of this interceptor.
String[]
arguments()
Returns the arguments passed to the ORB.init.
CodecFactory
codec_factory()
Get the CodecFactory that may be needed during the interceptor initialization.
String
orb_id()
Returns the ID of the ORB being initialized.
void
register_initial_reference(String object_name, Object object)
Register the initial reference.
void
register_policy_factory(int policy_type, PolicyFactory policy_factory)
Registers a PolicyFactory for the given PolicyType.
Object
resolve_initial_references(String object_name)
Identical to ORB.resolve_initial_references(String).

Method Details

add_client_request_interceptor

public void add_client_request_interceptor(ClientRequestInterceptor interceptor)
            throws DuplicateName
Register the client request interceptor.
Parameters:
interceptor - the interceptor to register.
Throws:
DuplicateName - if the interceptor name is not an empty string and an interceptor with this name is already registered with the ORB being created.

add_ior_interceptor

public void add_ior_interceptor(IORInterceptor interceptor)
            throws DuplicateName
Register the IOR (object reference) interceptor. If the registered interceptor implements the extended IORInterceptor_3_0 interface, ORB will call its additional methods, defined in the IORInterceptor_3_0Operations.
Parameters:
interceptor - the interceptor to register.
Throws:
DuplicateName - if the interceptor name is not an empty string and an interceptor with this name is already registered with the ORB being created.

add_server_request_interceptor

public void add_server_request_interceptor(ServerRequestInterceptor interceptor)
            throws DuplicateName
Register the server request interceptor.
Parameters:
interceptor - the interceptor to register.
Throws:
DuplicateName - if the interceptor name is not an empty string and an interceptor with this name is already registered with the ORB being created.

allocate_slot_id

public int allocate_slot_id()
Allocate a slot on a Current of this interceptor. While slots can be allocated by this method, they cannot be initialized. CurrentOperations.get_slot(int) and CurrentOperations.set_slot(int,Any) throw BAD_INV_ORDER while called from the interceptor initializer.
Returns:
the index to the slot that has been allocated.

arguments

public String[] arguments()
Returns the arguments passed to the ORB.init.
Returns:
the first parameter, passed to the methods from the group org.omg.CORBA.ORB#init(String[], ...).

codec_factory

public CodecFactory codec_factory()
Get the CodecFactory that may be needed during the interceptor initialization. The method ORB.resolve_initial_references ("CodecFactory") cannot be used during ORB initialization.
Returns:
the CodecFactory.

orb_id

public String orb_id()
Returns the ID of the ORB being initialized.
Returns:
the ORB id that differs for each new ORB being created during the current run of the java virtual machine.

register_initial_reference

public void register_initial_reference(String object_name,
                                       Object object)
            throws InvalidName
Register the initial reference. The registered object will be accessible by the ORB.resolve_initial_references(String) under the object_name.
Parameters:
object_name - the name of the object to register.
object - the object to register.
Throws:
InvalidName - if the name being registered is assumed to be invalid.

register_policy_factory

public void register_policy_factory(int policy_type,
                                    PolicyFactory policy_factory)
Registers a PolicyFactory for the given PolicyType.
Parameters:
policy_type - the type of policy for that the factory is being registered.
policy_factory - the policy factory to register.
Throws:
BAD_INV_ORDER - minor 16 if the policy of the given type already has the registered factory in this ORB.

resolve_initial_references

public Object resolve_initial_references(String object_name)
            throws InvalidName
Parameters:
object_name - the name of the object to search.
Returns:
the object, accessible by the given name.
Throws:
InvalidName - if the given name is not associated with the known object.

ORBInitInfoOperations.java -- Copyright (C) 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.