-
- All Known Subinterfaces:
- ORBInitInfo
public interface ORBInitInfoOperations
Passed to eachORBInitializer
, allowing it to to register interceptors and perform other duties while the ORB is initializing.The
ORBInitInfo
object is only valid duringORB.init
. If a service keeps a reference to itsORBInitInfo
object and tries to use it afterORB.init
returns, the object no longer exists and anOBJECT_NOT_EXIST
exception shall be thrown.- See Also:
ORBInitializer
-
-
Method Summary
Methods Modifier and Type Method and Description void
add_client_request_interceptor(ClientRequestInterceptor interceptor)
Used to add a client-side request Interceptor to the list of client-side request Interceptors.void
add_ior_interceptor(IORInterceptor interceptor)
Used to add an IOR Interceptor to the list of IOR Interceptors.void
add_server_request_interceptor(ServerRequestInterceptor interceptor)
Used to add a server-side request Interceptor to the list of server-side request Interceptors.int
allocate_slot_id()
Called to allocate a slot onPortableInterceptor.Current
.String[]
arguments()
Returns the arguments passed toORB.init
.CodecFactory
codec_factory()
Returns theIOP.CodecFactory
.String
orb_id()
Returns the ID of the ORB being initialized.void
register_initial_reference(String id, Object obj)
Identical toORB.register_initial_reference
.void
register_policy_factory(int type, PolicyFactory policy_factory)
Registers aPolicyFactory
for the givenPolicyType
.Object
resolve_initial_references(String id)
Identical toORB.resolve_initial_references
.
-
-
-
Method Detail
-
arguments
String[] arguments()
Returns the arguments passed toORB.init
. They may or may not contain the ORB's arguments.
-
orb_id
String orb_id()
Returns the ID of the ORB being initialized.
-
codec_factory
CodecFactory codec_factory()
Returns theIOP.CodecFactory
. TheCodecFactory
is normally obtained via a call toORB.resolve_initial_references( "CodecFactory" )
, but since the ORB is not yet available and Interceptors, particularly when processing service contexts, will require aCodec
, a means of obtaining aCodec
is necessary during ORB initialization.
-
register_initial_reference
void register_initial_reference(String id, Object obj) throws InvalidName
Identical toORB.register_initial_reference
. 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 (CORBA.ORB.ObjectId
) and (CORBA.ORB.InvalidName
) whereas the version in this interface uses IDL defined in this interface; the semantics are identical.- Throws:
InvalidName
-
resolve_initial_references
Object resolve_initial_references(String id) throws InvalidName
Identical toORB.resolve_initial_references
. 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 (CORBA::ORB::ObjectId
andCORBA::ORB::InvalidName
) whereas the version in this interface uses IDL defined in this interface; the semantics are identical.This operation is only valid during post_init.
- Throws:
InvalidName
-
add_client_request_interceptor
void add_client_request_interceptor(ClientRequestInterceptor interceptor) throws DuplicateName
Used to add a client-side request Interceptor to the list of client-side request Interceptors.- Parameters:
interceptor
- TheClientRequestInterceptor
to be added.- Throws:
DuplicateName
- thrown if a client-side request Interceptor has already been registered with this Interceptor's name.
-
add_server_request_interceptor
void add_server_request_interceptor(ServerRequestInterceptor interceptor) throws DuplicateName
Used to add a server-side request Interceptor to the list of server-side request Interceptors.- Parameters:
interceptor
- The ServerRequestInterceptor to be added.- Throws:
DuplicateName
- thrown if a server-side request Interceptor has already been registered with this Interceptor's name
-
add_ior_interceptor
void add_ior_interceptor(IORInterceptor interceptor) throws DuplicateName
Used to add an IOR Interceptor to the list of IOR Interceptors.- Parameters:
interceptor
- The IORInterceptor to be added.- Throws:
DuplicateName
- thrown if an IOR Interceptor has already been registered with this Interceptor's name.
-
allocate_slot_id
int allocate_slot_id()
Called to allocate a slot onPortableInterceptor.Current
.Note that while slot id's can be allocated within an ORB initializer, the slots themselves cannot be initialized.
- Returns:
- The index to the slot which has been allocated.
- Throws:
BAD_INV_ORDER
- thrown, with a standard minor code of 14, ifset_slot
orget_slot
is called on thePICurrent
within an ORB initializer.- See Also:
Current
-
register_policy_factory
void register_policy_factory(int type, PolicyFactory policy_factory)
Registers aPolicyFactory
for the givenPolicyType
.- Parameters:
type
- The policy type that the givenPolicyFactory
serves.policy_factory
- The factory for the given policy type.- Throws:
BAD_INV_ORDER
- thrown, with a standard minor code of 16, if aPolicyFactory
already exists for the givenPolicyType
.
-
-
Deutsche Übersetzung
Sie haben gebeten, diese Seite auf Deutsch zu besuchen. Momentan ist nur die Oberfläche übersetzt, aber noch nicht der gesamte Inhalt.Wenn Sie mir bei Übersetzungen helfen wollen, ist Ihr Beitrag willkommen. Alles, was Sie tun müssen, ist, sich auf der Website zu registrieren und mir eine Nachricht zu schicken, in der Sie gebeten werden, Sie der Gruppe der Übersetzer hinzuzufügen, die Ihnen die Möglichkeit gibt, die gewünschten Seiten zu übersetzen. Ein Link am Ende jeder übersetzten Seite zeigt an, dass Sie der Übersetzer sind und einen Link zu Ihrem Profil haben.
Vielen Dank im Voraus.
Dokument erstellt 11/06/2005, zuletzt geändert 04/03/2020
Quelle des gedruckten Dokuments:https://www.gaudry.be/de/java-api-rf-org/omg/portableinterceptor/orbinitinfooperations.html
Die Infobro ist eine persönliche Seite, deren Inhalt in meiner alleinigen Verantwortung liegt. Der Text ist unter der CreativeCommons-Lizenz (BY-NC-SA) verfügbar. Weitere Informationen auf die Nutzungsbedingungen und dem Autor.
Referenzen
Diese Verweise und Links verweisen auf Dokumente, die während des Schreibens dieser Seite konsultiert wurden, oder die zusätzliche Informationen liefern können, aber die Autoren dieser Quellen können nicht für den Inhalt dieser Seite verantwortlich gemacht werden.
Der Autor Diese Website ist allein dafür verantwortlich, wie die verschiedenen Konzepte und Freiheiten, die mit den Nachschlagewerken gemacht werden, hier dargestellt werden. Denken Sie daran, dass Sie mehrere Quellinformationen austauschen müssen, um das Risiko von Fehlern zu reduzieren.