pub struct DefaultMQPushConsumer { /* private fields */ }Implementations§
Source§impl DefaultMQPushConsumer
impl DefaultMQPushConsumer
pub fn builder( client_runtime: Arc<ClientRuntime>, ) -> DefaultMQPushConsumerBuilder
pub async fn start(&mut self) -> ClientResult<()>
pub async fn shutdown(&mut self)
pub async fn create_topic( &mut self, key: &str, new_topic: &str, queue_num: i32, attributes: HashMap<String, String>, ) -> ClientResult<()>
pub async fn create_topic_with_flag( &mut self, key: &str, new_topic: &str, queue_num: i32, topic_sys_flag: i32, attributes: HashMap<String, String>, ) -> ClientResult<()>
pub async fn search_offset( &mut self, mq: &MessageQueue, timestamp: u64, ) -> ClientResult<i64>
pub async fn max_offset(&mut self, mq: &MessageQueue) -> ClientResult<i64>
pub async fn min_offset(&mut self, mq: &MessageQueue) -> ClientResult<i64>
pub async fn earliest_msg_store_time( &mut self, mq: &MessageQueue, ) -> ClientResult<i64>
pub async fn query_message( &mut self, topic: &str, key: &str, max_num: i32, begin: u64, end: u64, ) -> ClientResult<QueryResult>
pub async fn view_message( &mut self, topic: &str, msg_id: &str, ) -> ClientResult<MessageExt>
pub async fn send_message_back( &mut self, msg: MessageExt, delay_level: i32, broker_name: &str, ) -> ClientResult<()>
pub async fn send_message_back_to_origin_broker( &mut self, msg: MessageExt, delay_level: i32, ) -> ClientResult<()>
pub async fn fetch_subscribe_message_queues( &mut self, topic: &str, ) -> ClientResult<Vec<MessageQueue>>
pub async fn subscribe( &mut self, topic: impl Into<CheetahString>, sub_expression: impl Into<CheetahString>, ) -> ClientResult<()>
pub async fn subscribe_with_selector( &mut self, topic: &str, selector: Option<MessageSelector>, ) -> ClientResult<()>
pub async fn unsubscribe(&mut self, topic: &str)
pub async fn suspend(&self)
pub async fn resume(&self)
pub fn update_core_pool_size(&self, core_pool_size: usize) -> ClientResult<()>
Sourcepub async fn consumer_running_info(&self) -> ClientResult<ConsumerRunningInfo>
pub async fn consumer_running_info(&self) -> ClientResult<ConsumerRunningInfo>
Returns a Java-compatible running snapshot for broker admin diagnostics.
Sourcepub fn is_pause(&self) -> bool
pub fn is_pause(&self) -> bool
Returns whether this push consumer is currently paused.
Mirrors Java DefaultMQPushConsumer.isPause.
Sourcepub fn is_consume_orderly(&self) -> bool
pub fn is_consume_orderly(&self) -> bool
Returns whether the registered listener consumes messages orderly.
Mirrors Java DefaultMQPushConsumer.isConsumeOrderly.
Sourcepub fn register_consume_message_hook(
&mut self,
hook: impl ConsumeMessageHook + 'static,
) -> ClientResult<()>
pub fn register_consume_message_hook( &mut self, hook: impl ConsumeMessageHook + 'static, ) -> ClientResult<()>
Registers a hook invoked before and after message consumption.
Mirrors Java DefaultMQPushConsumer.registerConsumeMessageHook.
pub fn default_mq_push_consumer_impl( &self, ) -> Option<&Arc<DefaultMQPushConsumerImpl>>
pub fn get_default_mq_push_consumer_impl( &self, ) -> Option<&Arc<DefaultMQPushConsumerImpl>>
pub fn message_listener(&self) -> Option<Arc<MessageListener>>
pub fn get_message_listener(&self) -> Option<Arc<MessageListener>>
pub fn set_message_listener( &mut self, message_listener: Option<Arc<MessageListener>>, )
pub fn register_message_listener( &mut self, message_listener: Option<Arc<MessageListener>>, )
pub fn allocate_message_queue_strategy( &self, ) -> Option<Arc<dyn AllocateMessageQueueStrategy>>
pub fn get_allocate_message_queue_strategy( &self, ) -> Option<Arc<dyn AllocateMessageQueueStrategy>>
pub fn set_allocate_message_queue_strategy( &mut self, allocate_message_queue_strategy: Arc<dyn AllocateMessageQueueStrategy>, )
pub fn consume_concurrently_max_span(&self) -> u32
pub fn get_consume_concurrently_max_span(&self) -> u32
pub fn set_consume_concurrently_max_span( &mut self, consume_concurrently_max_span: u32, )
pub fn consume_from_where(&self) -> ConsumeFromWhere
pub fn get_consume_from_where(&self) -> ConsumeFromWhere
pub fn set_consume_from_where(&mut self, consume_from_where: ConsumeFromWhere)
pub fn consume_message_batch_max_size(&self) -> u32
pub fn get_consume_message_batch_max_size(&self) -> u32
pub fn set_consume_message_batch_max_size( &mut self, consume_message_batch_max_size: u32, )
pub fn consumer_group(&self) -> CheetahString
pub fn get_consumer_group(&self) -> CheetahString
pub fn get_subscription(&self) -> Arc<HashMap<CheetahString, CheetahString>> ⓘ
pub fn set_consumer_group(&mut self, consumer_group: impl Into<CheetahString>)
pub fn consume_thread_max(&self) -> u32
pub fn get_consume_thread_max(&self) -> u32
pub fn set_consume_thread_max(&mut self, consume_thread_max: u32)
pub fn consume_thread_min(&self) -> u32
pub fn get_consume_thread_min(&self) -> u32
pub fn set_consume_thread_min(&mut self, consume_thread_min: u32)
pub fn message_model(&self) -> MessageModel
pub fn get_message_model(&self) -> MessageModel
pub fn set_message_model(&mut self, message_model: MessageModel)
pub fn pull_batch_size(&self) -> u32
pub fn get_pull_batch_size(&self) -> u32
pub fn set_pull_batch_size(&mut self, pull_batch_size: u32)
pub fn pull_interval(&self) -> u64
pub fn get_pull_interval(&self) -> u64
pub fn set_pull_interval(&mut self, pull_interval: u64)
pub fn pull_threshold_for_queue(&self) -> u32
pub fn get_pull_threshold_for_queue(&self) -> u32
pub fn set_pull_threshold_for_queue(&mut self, pull_threshold_for_queue: u32)
pub fn pop_threshold_for_queue(&self) -> u32
pub fn get_pop_threshold_for_queue(&self) -> u32
pub fn set_pop_threshold_for_queue(&mut self, pop_threshold_for_queue: u32)
pub fn pull_threshold_for_topic(&self) -> i32
pub fn get_pull_threshold_for_topic(&self) -> i32
pub fn set_pull_threshold_for_topic(&mut self, pull_threshold_for_topic: i32)
pub fn pull_threshold_size_for_queue(&self) -> u32
pub fn get_pull_threshold_size_for_queue(&self) -> u32
pub fn set_pull_threshold_size_for_queue( &mut self, pull_threshold_size_for_queue: u32, )
pub fn pull_threshold_size_for_topic(&self) -> i32
pub fn get_pull_threshold_size_for_topic(&self) -> i32
pub fn set_pull_threshold_size_for_topic( &mut self, pull_threshold_size_for_topic: i32, )
pub fn consume_timestamp(&self) -> Option<CheetahString>
pub fn get_consume_timestamp(&self) -> Option<CheetahString>
pub fn set_consume_timestamp( &mut self, consume_timestamp: impl Into<CheetahString>, )
pub fn clear_consume_timestamp(&mut self)
pub fn is_post_subscription_when_pull(&self) -> bool
pub fn set_post_subscription_when_pull( &mut self, post_subscription_when_pull: bool, )
pub fn is_unit_mode(&self) -> bool
pub fn set_unit_mode(&mut self, unit_mode: bool)
pub fn adjust_thread_pool_nums_threshold(&self) -> u64
pub fn get_adjust_thread_pool_nums_threshold(&self) -> u64
pub fn set_adjust_thread_pool_nums_threshold( &mut self, adjust_thread_pool_nums_threshold: u64, )
pub fn max_reconsume_times(&self) -> i32
pub fn get_max_reconsume_times(&self) -> i32
pub fn set_max_reconsume_times(&mut self, max_reconsume_times: i32)
pub fn suspend_current_queue_time_millis(&self) -> u64
pub fn get_suspend_current_queue_time_millis(&self) -> u64
pub fn set_suspend_current_queue_time_millis( &mut self, suspend_current_queue_time_millis: u64, )
pub fn consume_timeout(&self) -> u64
pub fn get_consume_timeout(&self) -> u64
pub fn set_consume_timeout(&mut self, consume_timeout: u64)
pub fn pop_invisible_time(&self) -> u64
pub fn get_pop_invisible_time(&self) -> u64
pub fn set_pop_invisible_time(&mut self, pop_invisible_time: u64)
pub fn await_termination_millis_when_shutdown(&self) -> u64
pub fn get_await_termination_millis_when_shutdown(&self) -> u64
pub fn set_await_termination_millis_when_shutdown( &mut self, await_termination_millis_when_shutdown: u64, )
pub fn pull_batch_size_in_bytes(&self) -> u32
pub fn get_pull_batch_size_in_bytes(&self) -> u32
pub fn set_pull_batch_size_in_bytes(&mut self, pull_batch_size_in_bytes: u32)
pub fn trace_dispatcher(&self) -> Option<ArcTraceDispatcher>
pub fn get_trace_dispatcher(&self) -> Option<ArcTraceDispatcher>
pub fn is_use_tls(&self) -> bool
pub fn set_use_tls(&mut self, use_tls: bool)
pub fn offset_store(&self) -> Option<Arc<OffsetStore>>
pub fn get_offset_store(&self) -> Option<Arc<OffsetStore>>
pub fn set_offset_store(&mut self, offset_store: Option<Arc<OffsetStore>>)
pub fn pop_batch_nums(&self) -> u32
pub fn get_pop_batch_nums(&self) -> u32
pub fn set_pop_batch_nums(&mut self, pop_batch_nums: u32)
pub fn is_client_rebalance(&self) -> bool
pub fn set_client_rebalance(&mut self, client_rebalance: bool)
pub fn message_queue_listener(&self) -> Option<ArcMessageQueueListener>
pub fn get_message_queue_listener(&self) -> Option<ArcMessageQueueListener>
pub fn set_message_queue_listener( &mut self, message_queue_listener: Option<ArcMessageQueueListener>, )
pub fn apply_tuning_profile(&mut self, profile: ConsumerTuningProfile)
pub fn new( client_runtime: Arc<ClientRuntime>, client_config: ClientConfig, consumer_config: ConsumerConfig, ) -> DefaultMQPushConsumer
pub fn set_name_server_addr(&mut self, name_server_addr: CheetahString)
Trait Implementations§
Source§impl MQConsumer for DefaultMQPushConsumer
impl MQConsumer for DefaultMQPushConsumer
Source§async fn create_topic(
&mut self,
key: &str,
new_topic: &str,
queue_num: i32,
attributes: HashMap<String, String>,
) -> ClientResult<()>
async fn create_topic( &mut self, key: &str, new_topic: &str, queue_num: i32, attributes: HashMap<String, String>, ) -> ClientResult<()>
Creates a topic through the consumer’s admin facade. Read more
Source§async fn create_topic_with_flag(
&mut self,
key: &str,
new_topic: &str,
queue_num: i32,
topic_sys_flag: i32,
attributes: HashMap<String, String>,
) -> ClientResult<()>
async fn create_topic_with_flag( &mut self, key: &str, new_topic: &str, queue_num: i32, topic_sys_flag: i32, attributes: HashMap<String, String>, ) -> ClientResult<()>
Creates a topic with an explicit topic system flag.
Source§async fn search_offset(
&mut self,
mq: &MessageQueue,
timestamp: u64,
) -> ClientResult<i64>
async fn search_offset( &mut self, mq: &MessageQueue, timestamp: u64, ) -> ClientResult<i64>
Searches the offset in a queue by store timestamp.
Source§async fn max_offset(&mut self, mq: &MessageQueue) -> ClientResult<i64>
async fn max_offset(&mut self, mq: &MessageQueue) -> ClientResult<i64>
Returns the broker max offset for a queue.
Source§async fn min_offset(&mut self, mq: &MessageQueue) -> ClientResult<i64>
async fn min_offset(&mut self, mq: &MessageQueue) -> ClientResult<i64>
Returns the broker min offset for a queue.
Source§async fn earliest_msg_store_time(
&mut self,
mq: &MessageQueue,
) -> ClientResult<i64>
async fn earliest_msg_store_time( &mut self, mq: &MessageQueue, ) -> ClientResult<i64>
Returns the earliest store time for messages in a queue.
Source§async fn query_message(
&mut self,
topic: &str,
key: &str,
max_num: i32,
begin: u64,
end: u64,
) -> ClientResult<QueryResult>
async fn query_message( &mut self, topic: &str, key: &str, max_num: i32, begin: u64, end: u64, ) -> ClientResult<QueryResult>
Queries messages by key in a time range.
Source§async fn view_message(
&mut self,
topic: &str,
msg_id: &str,
) -> ClientResult<MessageExt>
async fn view_message( &mut self, topic: &str, msg_id: &str, ) -> ClientResult<MessageExt>
Views a message by message id.
async fn send_message_back( &mut self, msg: MessageExt, delay_level: i32, broker_name: &str, ) -> ClientResult<()>
async fn fetch_subscribe_message_queues( &mut self, topic: &str, ) -> ClientResult<Vec<MessageQueue>>
Source§async fn send_message_back_to_origin_broker(
&mut self,
msg: MessageExt,
delay_level: i32,
) -> ClientResult<()>
async fn send_message_back_to_origin_broker( &mut self, msg: MessageExt, delay_level: i32, ) -> ClientResult<()>
Sends a message back using the broker name carried by the message. Read more
Source§impl MQPushConsumer for DefaultMQPushConsumer
impl MQPushConsumer for DefaultMQPushConsumer
Source§async fn start(&mut self) -> ClientResult<()>
async fn start(&mut self) -> ClientResult<()>
Asynchronously starts the consumer instance. Read more
Source§fn register_message_listener_concurrently<ML>(&mut self, message_listener: ML)
fn register_message_listener_concurrently<ML>(&mut self, message_listener: ML)
Registers a message listener for concurrent message consumption. Read more
Source§fn register_message_listener_orderly<ML>(&mut self, message_listener: ML)
fn register_message_listener_orderly<ML>(&mut self, message_listener: ML)
Registers a message listener for orderly message consumption. Read more
Source§async fn subscribe(
&mut self,
topic: impl Into<CheetahString>,
sub_expression: impl Into<CheetahString>,
) -> ClientResult<()>
async fn subscribe( &mut self, topic: impl Into<CheetahString>, sub_expression: impl Into<CheetahString>, ) -> ClientResult<()>
Asynchronously subscribes to a topic with a subscription expression. Read more
Source§async fn subscribe_with_selector(
&mut self,
topic: &str,
selector: Option<MessageSelector>,
) -> ClientResult<()>
async fn subscribe_with_selector( &mut self, topic: &str, selector: Option<MessageSelector>, ) -> ClientResult<()>
Asynchronously subscribes to a topic with an optional selector. Read more
Source§async fn unsubscribe(&mut self, topic: &str)
async fn unsubscribe(&mut self, topic: &str)
Asynchronously unsubscribes from a topic. Read more
Source§fn update_core_pool_size(&self, core_pool_size: usize) -> ClientResult<()>
fn update_core_pool_size(&self, core_pool_size: usize) -> ClientResult<()>
Updates the core size used by the concurrent consume worker pool. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for DefaultMQPushConsumer
impl !UnwindSafe for DefaultMQPushConsumer
impl Freeze for DefaultMQPushConsumer
impl Send for DefaultMQPushConsumer
impl Sync for DefaultMQPushConsumer
impl Unpin for DefaultMQPushConsumer
impl UnsafeUnpin for DefaultMQPushConsumer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
Causes
self to use its Binary implementation when Debug-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
Causes
self to use its Display implementation when
Debug-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
Causes
self to use its LowerExp implementation when
Debug-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
Causes
self to use its LowerHex implementation when
Debug-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
Causes
self to use its Octal implementation when Debug-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
Causes
self to use its Pointer implementation when
Debug-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
Causes
self to use its UpperExp implementation when
Debug-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
Causes
self to use its UpperHex implementation when
Debug-formatted.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Pipes by value. This is generally the method you want to use. Read more
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
Borrows
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
Mutably borrows
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
Borrows
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
Mutably borrows
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
Borrows
self, then passes self.deref() into the pipe function.Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Immutable access to the
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
Mutable access to the
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
Immutable access to the
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
Mutable access to the
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Immutable access to the
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Mutable access to the
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
Calls
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
Calls
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
Calls
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
Calls
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
Calls
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
Calls
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
Calls
.tap_deref() only in debug builds, and is erased in release
builds.