Skip to main content

CorbaConnection

Trait CorbaConnection 

Source
pub trait CorbaConnection {
    // Required methods
    fn invoke(
        &self,
        target_ior: &ObjectReference,
        operation: &str,
        request_endianness: Endianness,
        request_payload: &[u8],
    ) -> Result<(Vec<u8>, Endianness), CorbaException>;
    fn invoke_oneway(
        &self,
        target_ior: &ObjectReference,
        operation: &str,
        request_endianness: Endianness,
        request_payload: &[u8],
    ) -> Result<(), CorbaException>;
}
Expand description

Connection handle used by stubs to send GIOP requests. Phase 1 is an adapter trait whose full implementation lives in corba-iiop.

Required Methods§

Source

fn invoke( &self, target_ior: &ObjectReference, operation: &str, request_endianness: Endianness, request_payload: &[u8], ) -> Result<(Vec<u8>, Endianness), CorbaException>

Sends a GIOP request and blocks until a reply or system exception arrives.

target_ior = object reference, operation = method name, request_endianness = on-wire byte order in which request_payload is CDR-encoded (set into the GIOP flag), request_payload = already-encoded body (classic CDR of the in-params).

Returns the reply body plus its on-wire byte order — the server may reply in its native order (CDR “receiver makes it right”), so the stub must read the reply in the returned order.

§Errors

Wire error or server-side exception.

Source

fn invoke_oneway( &self, target_ior: &ObjectReference, operation: &str, request_endianness: Endianness, request_payload: &[u8], ) -> Result<(), CorbaException>

Sends a oneway request (no reply expected).

§Errors

Wire error during the send.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§