[−][src]Struct aeron_rs::client_conductor::ClientConductor
Methods
impl ClientConductor
[src]
pub fn new(
epoch_clock: fn() -> Moment,
driver_proxy: Arc<DriverProxy>,
broadcast_receiver: Arc<Mutex<CopyBroadcastReceiver>>,
counter_metadata_buffer: AtomicBuffer,
counter_values_buffer: AtomicBuffer,
on_new_publication_handler: OnNewPublication,
on_new_exclusive_publication_handler: OnNewPublication,
on_new_subscription_handler: OnNewSubscription,
error_handler: ErrorHandler,
on_available_counter_handler: OnAvailableCounter,
on_unavailable_counter_handler: OnUnavailableCounter,
on_close_client_handler: OnCloseClient,
driver_timeout_ms: Moment,
resource_linger_timeout_ms: Moment,
inter_service_timeout_ns: Moment,
pre_touch_mapped_memory: bool
) -> Arc<Mutex<Self>>
[src]
epoch_clock: fn() -> Moment,
driver_proxy: Arc<DriverProxy>,
broadcast_receiver: Arc<Mutex<CopyBroadcastReceiver>>,
counter_metadata_buffer: AtomicBuffer,
counter_values_buffer: AtomicBuffer,
on_new_publication_handler: OnNewPublication,
on_new_exclusive_publication_handler: OnNewPublication,
on_new_subscription_handler: OnNewSubscription,
error_handler: ErrorHandler,
on_available_counter_handler: OnAvailableCounter,
on_unavailable_counter_handler: OnUnavailableCounter,
on_close_client_handler: OnCloseClient,
driver_timeout_ms: Moment,
resource_linger_timeout_ms: Moment,
inter_service_timeout_ns: Moment,
pre_touch_mapped_memory: bool
) -> Arc<Mutex<Self>>
pub fn set_epoch_clock_provider(
&mut self,
new_provider: Box<dyn Fn() -> Moment>
)
[src]
&mut self,
new_provider: Box<dyn Fn() -> Moment>
)
pub fn set_error_handler(&mut self, new_handler: ErrorHandler)
[src]
pub fn set_on_new_publication_handler(&mut self, new_handler: OnNewPublication)
[src]
pub fn set_on_new_subscription_handler(
&mut self,
new_handler: OnNewSubscription
)
[src]
&mut self,
new_handler: OnNewSubscription
)
pub fn add_on_available_counter_handler(&mut self, handler: OnAvailableCounter)
[src]
pub fn add_on_unavailable_counter_handler(
&mut self,
handler: OnUnavailableCounter
)
[src]
&mut self,
handler: OnUnavailableCounter
)
pub fn counters_reader(&self) -> Result<Arc<CountersReader>, AeronError>
[src]
pub fn channel_status(&self, counter_id: i32) -> i64
[src]
pub fn is_closed(&self) -> bool
[src]
pub fn ensure_open(&self) -> Result<(), AeronError>
[src]
pub fn counter_values_buffer(&self) -> AtomicBuffer
[src]
pub fn verify_driver_is_active(&self) -> Result<(), AeronError>
[src]
pub fn verify_driver_is_active_via_error_handler(&self)
[src]
pub fn ensure_not_reentrant(&self)
[src]
pub fn get_log_buffers(
&mut self,
registration_id: i64,
log_filename: CString,
channel: CString
) -> Result<Arc<LogBuffers>, AeronError>
[src]
&mut self,
registration_id: i64,
log_filename: CString,
channel: CString
) -> Result<Arc<LogBuffers>, AeronError>
Returns thread safe shared mutable instance of LogBuffers
pub fn current_time_millis() -> Moment
[src]
pub fn system_nano_clock() -> Moment
[src]
pub fn add_publication(
&mut self,
channel: CString,
stream_id: i32
) -> Result<i64, AeronError>
[src]
&mut self,
channel: CString,
stream_id: i32
) -> Result<i64, AeronError>
pub fn find_publication(
&mut self,
registration_id: i64
) -> Result<Arc<Mutex<Publication>>, AeronError>
[src]
&mut self,
registration_id: i64
) -> Result<Arc<Mutex<Publication>>, AeronError>
pub fn return_registration_error(
err_code: i32,
err_message: &CStr
) -> AeronError
[src]
err_code: i32,
err_message: &CStr
) -> AeronError
pub fn release_publication(
&mut self,
registration_id: i64
) -> Result<(), AeronError>
[src]
&mut self,
registration_id: i64
) -> Result<(), AeronError>
pub fn add_exclusive_publication(
&mut self,
channel: CString,
stream_id: i32
) -> Result<i64, AeronError>
[src]
&mut self,
channel: CString,
stream_id: i32
) -> Result<i64, AeronError>
pub fn release_exclusive_publication(
&mut self,
registration_id: i64
) -> Result<(), AeronError>
[src]
&mut self,
registration_id: i64
) -> Result<(), AeronError>
pub fn add_subscription(
&mut self,
channel: CString,
stream_id: i32,
on_available_image_handler: OnAvailableImage,
on_unavailable_image_handler: OnUnavailableImage
) -> Result<i64, AeronError>
[src]
&mut self,
channel: CString,
stream_id: i32,
on_available_image_handler: OnAvailableImage,
on_unavailable_image_handler: OnUnavailableImage
) -> Result<i64, AeronError>
pub fn find_subscription(
&mut self,
registration_id: i64
) -> Result<Arc<Mutex<Subscription>>, AeronError>
[src]
&mut self,
registration_id: i64
) -> Result<Arc<Mutex<Subscription>>, AeronError>
pub fn release_subscription(
&mut self,
registration_id: i64,
images: Vec<Image>
) -> Result<(), AeronError>
[src]
&mut self,
registration_id: i64,
images: Vec<Image>
) -> Result<(), AeronError>
pub fn add_counter(
&mut self,
type_id: i32,
key_buffer: &[u8],
label: &str
) -> Result<i64, AeronError>
[src]
&mut self,
type_id: i32,
key_buffer: &[u8],
label: &str
) -> Result<i64, AeronError>
pub fn find_counter(
&mut self,
registration_id: i64
) -> Result<Arc<Counter>, AeronError>
[src]
&mut self,
registration_id: i64
) -> Result<Arc<Counter>, AeronError>
pub fn release_counter(
&mut self,
registration_id: i64
) -> Result<(), AeronError>
[src]
&mut self,
registration_id: i64
) -> Result<(), AeronError>
pub fn add_destination(
&mut self,
publication_registration_id: i64,
endpoint_channel: CString
) -> Result<i64, AeronError>
[src]
&mut self,
publication_registration_id: i64,
endpoint_channel: CString
) -> Result<i64, AeronError>
pub fn remove_destination(
&mut self,
publication_registration_id: i64,
endpoint_channel: CString
) -> Result<i64, AeronError>
[src]
&mut self,
publication_registration_id: i64,
endpoint_channel: CString
) -> Result<i64, AeronError>
pub fn add_rcv_destination(
&mut self,
subscription_registration_id: i64,
endpoint_channel: CString
) -> Result<i64, AeronError>
[src]
&mut self,
subscription_registration_id: i64,
endpoint_channel: CString
) -> Result<i64, AeronError>
pub fn remove_rcv_destination(
&mut self,
subscription_registration_id: i64,
endpoint_channel: CString
) -> Result<i64, AeronError>
[src]
&mut self,
subscription_registration_id: i64,
endpoint_channel: CString
) -> Result<i64, AeronError>
pub fn find_destination_response(
&mut self,
correlation_id: i64
) -> Result<bool, AeronError>
[src]
&mut self,
correlation_id: i64
) -> Result<bool, AeronError>
pub fn add_available_counter_handler(
&mut self,
handler: OnAvailableCounter
) -> Result<(), AeronError>
[src]
&mut self,
handler: OnAvailableCounter
) -> Result<(), AeronError>
pub fn remove_available_counter_handler(
&mut self,
_handler: OnAvailableCounter
) -> Result<(), AeronError>
[src]
&mut self,
_handler: OnAvailableCounter
) -> Result<(), AeronError>
pub fn add_unavailable_counter_handler(
&mut self,
handler: OnUnavailableCounter
) -> Result<(), AeronError>
[src]
&mut self,
handler: OnUnavailableCounter
) -> Result<(), AeronError>
pub fn remove_unavailable_counter_handler(
&mut self,
_handler: OnUnavailableCounter
) -> Result<(), AeronError>
[src]
&mut self,
_handler: OnUnavailableCounter
) -> Result<(), AeronError>
pub fn add_close_client_handler(
&mut self,
handler: OnCloseClient
) -> Result<(), AeronError>
[src]
&mut self,
handler: OnCloseClient
) -> Result<(), AeronError>
pub fn remove_close_client_handler(
&mut self,
_handler: OnCloseClient
) -> Result<(), AeronError>
[src]
&mut self,
_handler: OnCloseClient
) -> Result<(), AeronError>
pub fn close_all_resources(&mut self, now_ms: Moment)
[src]
pub fn on_check_managed_resources(&mut self, now_ms: Moment)
[src]
pub fn linger_resource(&mut self, now_ms: Moment, images: Vec<Image>)
[src]
pub fn linger_all_resources(&mut self, now_ms: Moment, images: Vec<Image>)
[src]
Trait Implementations
impl Agent for ClientConductor
[src]
fn on_start(&mut self) -> Result<(), AeronError>
[src]
fn do_work(&mut self) -> Result<i32, AeronError>
[src]
fn on_close(&mut self) -> Result<(), AeronError>
[src]
impl DriverListener for ClientConductor
[src]
fn on_new_publication(
&mut self,
registration_id: i64,
original_registration_id: i64,
stream_id: i32,
session_id: i32,
publication_limit_counter_id: i32,
channel_status_indicator_id: i32,
log_file_name: CString
)
[src]
&mut self,
registration_id: i64,
original_registration_id: i64,
stream_id: i32,
session_id: i32,
publication_limit_counter_id: i32,
channel_status_indicator_id: i32,
log_file_name: CString
)
fn on_new_exclusive_publication(
&mut self,
registration_id: i64,
original_registration_id: i64,
stream_id: i32,
session_id: i32,
publication_limit_counter_id: i32,
channel_status_indicator_id: i32,
log_file_name: CString
)
[src]
&mut self,
registration_id: i64,
original_registration_id: i64,
stream_id: i32,
session_id: i32,
publication_limit_counter_id: i32,
channel_status_indicator_id: i32,
log_file_name: CString
)
fn on_subscription_ready(
&mut self,
registration_id: i64,
channel_status_id: i32
)
[src]
&mut self,
registration_id: i64,
channel_status_id: i32
)
fn on_operation_success(&mut self, correlation_id: i64)
[src]
fn on_channel_endpoint_error_response(
&mut self,
offending_command_correlation_id: i64,
error_message: CString
)
[src]
&mut self,
offending_command_correlation_id: i64,
error_message: CString
)
fn on_error_response(
&mut self,
offending_command_correlation_id: i64,
error_code: i32,
error_message: CString
)
[src]
&mut self,
offending_command_correlation_id: i64,
error_code: i32,
error_message: CString
)
fn on_available_image(
&mut self,
correlation_id: i64,
session_id: i32,
subscriber_position_id: i32,
subscription_registration_id: i64,
log_filename: CString,
source_identity: CString
)
[src]
&mut self,
correlation_id: i64,
session_id: i32,
subscriber_position_id: i32,
subscription_registration_id: i64,
log_filename: CString,
source_identity: CString
)
fn on_unavailable_image(
&mut self,
correlation_id: i64,
subscription_registration_id: i64
)
[src]
&mut self,
correlation_id: i64,
subscription_registration_id: i64
)
fn on_available_counter(&mut self, registration_id: i64, counter_id: i32)
[src]
fn on_unavailable_counter(&mut self, registration_id: i64, counter_id: i32)
[src]
fn on_client_timeout(&mut self, client_id: i64)
[src]
impl Drop for ClientConductor
[src]
impl Send for ClientConductor
[src]
impl Sync for ClientConductor
[src]
Auto Trait Implementations
impl !RefUnwindSafe for ClientConductor
impl Unpin for ClientConductor
impl !UnwindSafe for ClientConductor
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,