pub trait LitePullConsumerLocal: Sync {
Show 30 methods
// Required methods
async fn start(&self) -> RocketMQResult<()>;
async fn shutdown(&self);
async fn is_running(&self) -> bool;
async fn subscribe(&self, topic: &str) -> RocketMQResult<()>;
async fn subscribe_with_expression(
&self,
topic: &str,
sub_expression: &str,
) -> RocketMQResult<()>;
async fn subscribe_with_listener<MQL>(
&self,
topic: &str,
sub_expression: &str,
listener: MQL,
) -> RocketMQResult<()>
where MQL: MessageQueueListener;
async fn subscribe_with_selector(
&self,
topic: &str,
selector: Option<MessageSelector>,
) -> RocketMQResult<()>;
async fn unsubscribe(&self, topic: &str);
async fn assignment(&self) -> RocketMQResult<HashSet<MessageQueue>>;
async fn assign(&self, message_queues: Vec<MessageQueue>);
async fn set_sub_expression_for_assign(
&self,
topic: &str,
sub_expression: &str,
);
async fn poll(&self) -> Vec<MessageExt>;
async fn poll_with_timeout(&self, timeout: u64) -> Vec<MessageExt>;
async fn seek(
&self,
message_queue: &MessageQueue,
offset: i64,
) -> RocketMQResult<()>;
async fn pause(&self, message_queues: Vec<MessageQueue>);
async fn resume(&self, message_queues: Vec<MessageQueue>);
async fn is_auto_commit(&self) -> bool;
async fn set_auto_commit(&self, auto_commit: bool);
async fn fetch_message_queues(
&self,
topic: &str,
) -> RocketMQResult<Vec<MessageQueue>>;
async fn offset_for_timestamp(
&self,
message_queue: &MessageQueue,
timestamp: u64,
) -> RocketMQResult<i64>;
async fn commit_sync(&self);
async fn commit_sync_with_map(
&self,
offset_map: HashMap<MessageQueue, i64>,
persist: bool,
);
async fn commit(&self);
async fn commit_with_map(
&self,
offset_map: HashMap<MessageQueue, i64>,
persist: bool,
);
async fn commit_with_set(
&self,
message_queues: HashSet<MessageQueue>,
persist: bool,
);
async fn committed(
&self,
message_queue: &MessageQueue,
) -> RocketMQResult<i64>;
async fn register_topic_message_queue_change_listener<TL>(
&self,
topic: &str,
listener: TL,
) -> RocketMQResult<()>
where TL: TopicMessageQueueChangeListener;
async fn update_name_server_address(&self, name_server_address: &str);
async fn seek_to_begin(
&self,
message_queue: &MessageQueue,
) -> RocketMQResult<()>;
async fn seek_to_end(
&self,
message_queue: &MessageQueue,
) -> RocketMQResult<()>;
}
Required Methods§
Sourceasync fn start(&self) -> RocketMQResult<()>
async fn start(&self) -> RocketMQResult<()>
Starts the LitePullConsumer.
§Returns
rocketmq_error::RocketMQResult<()>
- An empty result indicating success or failure.
Sourceasync fn is_running(&self) -> bool
async fn is_running(&self) -> bool
Checks if the LitePullConsumer is running.
§Returns
bool
-true
if the consumer is running,false
otherwise.
Sourceasync fn subscribe(&self, topic: &str) -> RocketMQResult<()>
async fn subscribe(&self, topic: &str) -> RocketMQResult<()>
Sourceasync fn subscribe_with_expression(
&self,
topic: &str,
sub_expression: &str,
) -> RocketMQResult<()>
async fn subscribe_with_expression( &self, topic: &str, sub_expression: &str, ) -> RocketMQResult<()>
Sourceasync fn subscribe_with_listener<MQL>(
&self,
topic: &str,
sub_expression: &str,
listener: MQL,
) -> RocketMQResult<()>where
MQL: MessageQueueListener,
async fn subscribe_with_listener<MQL>(
&self,
topic: &str,
sub_expression: &str,
listener: MQL,
) -> RocketMQResult<()>where
MQL: MessageQueueListener,
Subscribes to a topic with a subscription expression and a message queue listener.
§Arguments
topic
- The name of the topic to subscribe to.sub_expression
- The subscription expression.listener
- The message queue listener.
§Returns
rocketmq_error::RocketMQResult<()>
- An empty result indicating success or failure.
Sourceasync fn subscribe_with_selector(
&self,
topic: &str,
selector: Option<MessageSelector>,
) -> RocketMQResult<()>
async fn subscribe_with_selector( &self, topic: &str, selector: Option<MessageSelector>, ) -> RocketMQResult<()>
Sourceasync fn unsubscribe(&self, topic: &str)
async fn unsubscribe(&self, topic: &str)
Sourceasync fn assignment(&self) -> RocketMQResult<HashSet<MessageQueue>>
async fn assignment(&self) -> RocketMQResult<HashSet<MessageQueue>>
Retrieves the current assignment of message queues.
§Returns
rocketmq_error::RocketMQResult<HashSet<MessageQueue>>
- A set of assigned message queues or an error.
Sourceasync fn assign(&self, message_queues: Vec<MessageQueue>)
async fn assign(&self, message_queues: Vec<MessageQueue>)
Assigns a list of message queues to the consumer.
§Arguments
message_queues
- A vector ofMessageQueue
instances to assign.
Sourceasync fn set_sub_expression_for_assign(&self, topic: &str, sub_expression: &str)
async fn set_sub_expression_for_assign(&self, topic: &str, sub_expression: &str)
Sets the subscription expression for an assigned topic.
§Arguments
topic
- The name of the topic.sub_expression
- The subscription expression.
Sourceasync fn poll(&self) -> Vec<MessageExt>
async fn poll(&self) -> Vec<MessageExt>
Sourceasync fn poll_with_timeout(&self, timeout: u64) -> Vec<MessageExt>
async fn poll_with_timeout(&self, timeout: u64) -> Vec<MessageExt>
Sourceasync fn seek(
&self,
message_queue: &MessageQueue,
offset: i64,
) -> RocketMQResult<()>
async fn seek( &self, message_queue: &MessageQueue, offset: i64, ) -> RocketMQResult<()>
Sourceasync fn pause(&self, message_queues: Vec<MessageQueue>)
async fn pause(&self, message_queues: Vec<MessageQueue>)
Pauses message consumption for the specified message queues.
§Arguments
message_queues
- A vector ofMessageQueue
instances to pause.
Sourceasync fn resume(&self, message_queues: Vec<MessageQueue>)
async fn resume(&self, message_queues: Vec<MessageQueue>)
Resumes message consumption for the specified message queues.
§Arguments
message_queues
- A vector ofMessageQueue
instances to resume.
Sourceasync fn is_auto_commit(&self) -> bool
async fn is_auto_commit(&self) -> bool
Sourceasync fn set_auto_commit(&self, auto_commit: bool)
async fn set_auto_commit(&self, auto_commit: bool)
Sets the auto-commit mode.
§Arguments
auto_commit
-true
to enable auto-commit,false
to disable it.
Sourceasync fn fetch_message_queues(
&self,
topic: &str,
) -> RocketMQResult<Vec<MessageQueue>>
async fn fetch_message_queues( &self, topic: &str, ) -> RocketMQResult<Vec<MessageQueue>>
Sourceasync fn offset_for_timestamp(
&self,
message_queue: &MessageQueue,
timestamp: u64,
) -> RocketMQResult<i64>
async fn offset_for_timestamp( &self, message_queue: &MessageQueue, timestamp: u64, ) -> RocketMQResult<i64>
Sourceasync fn commit_sync(&self)
async fn commit_sync(&self)
Commits the current offsets synchronously.
Sourceasync fn commit_sync_with_map(
&self,
offset_map: HashMap<MessageQueue, i64>,
persist: bool,
)
async fn commit_sync_with_map( &self, offset_map: HashMap<MessageQueue, i64>, persist: bool, )
Commits the provided offsets synchronously.
§Arguments
offset_map
- A map of message queues to offsets.persist
- Whether to persist the offsets.
Sourceasync fn commit_with_map(
&self,
offset_map: HashMap<MessageQueue, i64>,
persist: bool,
)
async fn commit_with_map( &self, offset_map: HashMap<MessageQueue, i64>, persist: bool, )
Commits the provided offsets.
§Arguments
offset_map
- A map of message queues to offsets.persist
- Whether to persist the offsets.
Sourceasync fn commit_with_set(
&self,
message_queues: HashSet<MessageQueue>,
persist: bool,
)
async fn commit_with_set( &self, message_queues: HashSet<MessageQueue>, persist: bool, )
Commits the offsets for the provided message queues.
§Arguments
message_queues
- A set of message queues to commit offsets for.persist
- Whether to persist the offsets.
Sourceasync fn committed(&self, message_queue: &MessageQueue) -> RocketMQResult<i64>
async fn committed(&self, message_queue: &MessageQueue) -> RocketMQResult<i64>
Sourceasync fn register_topic_message_queue_change_listener<TL>(
&self,
topic: &str,
listener: TL,
) -> RocketMQResult<()>where
TL: TopicMessageQueueChangeListener,
async fn register_topic_message_queue_change_listener<TL>(
&self,
topic: &str,
listener: TL,
) -> RocketMQResult<()>where
TL: TopicMessageQueueChangeListener,
Sourceasync fn update_name_server_address(&self, name_server_address: &str)
async fn update_name_server_address(&self, name_server_address: &str)
Sourceasync fn seek_to_begin(
&self,
message_queue: &MessageQueue,
) -> RocketMQResult<()>
async fn seek_to_begin( &self, message_queue: &MessageQueue, ) -> RocketMQResult<()>
Sourceasync fn seek_to_end(&self, message_queue: &MessageQueue) -> RocketMQResult<()>
async fn seek_to_end(&self, message_queue: &MessageQueue) -> RocketMQResult<()>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.