#![doc = include_str!("../README.md")]
mod api;
mod admin;
mod consumer;
mod core;
mod metadata;
mod network;
mod producer;
mod telemetry;
pub(crate) use self::core::constants;
pub use self::core::{config, error, types};
pub use admin::{
AccessControlEntry, AccessControlEntryFilter, AclBinding, AclBindingFilter, AclOperation,
AclPermissionType, AlterConfigOp, AlterConfigOpType, BrokerDescription, BrokerFeatureLevel,
BrokerLogDirs, ClusterDescription, ConfigEntry, ConfigResource, ConfigResourceConfig,
ConfigResourceType, ConsumerGroupDescription, ConsumerGroupListing,
ConsumerGroupMemberDescription, DeleteAclsResult, FeatureUpdate, FeatureUpgradeType,
GroupDescription, GroupListing, GroupMemberDescription, KafkaAdmin, LogDirDescription,
NewPartitions, NewTopic, PatternType, ReplicaLogDirDescription, ResourcePattern,
ResourcePatternFilter, ResourceType, TopicDescription, TopicListing, TopicPartitionDescription,
};
pub use api::{KafkaClient, KafkaTopic};
pub use config::{
AdminConfig, AutoOffsetReset, ClientConfig, ConsumerConfig, IsolationLevel,
ProducerCompression, ProducerConfig, ProducerPartitioner, SaslConfig, SaslMechanism,
SecurityProtocol, TlsConfig,
};
pub use consumer::{
AcknowledgeType, AcknowledgementCommitCallback, KafkaConsumer, KafkaShareConsumer,
ShareAcknowledgementCommit, ShareAcquireMode, ShareConsumerOptions, ShareRecord, ShareRecords,
};
pub use error::{
AdminError, BrokerError, ConsumerError, ConsumerGroupMetadataError, Error, ErrorClassification,
ProducerError, ProtocolError, Result, TransactionStateError, ValidationError,
};
pub use network::{ConnectedTcpStream, TcpConnector, TokioTcpConnector};
pub use producer::KafkaProducer;
pub use tokio_util::sync::CancellationToken;
pub use types::{
CommitOffset, ConsumerGroupMetadata, ConsumerRebalanceEvent, ConsumerRebalanceListener,
ConsumerRecord, ConsumerRecords, KafkaMessage, OffsetAndTimestamp, ProduceAck, ProduceRecord,
RecordHeader, SubscriptionPattern, TopicPartition, TopicPartitionInfo, TopicPartitionKey,
TopicPartitionOffset, TopicPartitionOffsetAndTimestamp, TopicPartitionTimestamp,
};