#![doc = include_str!("../README.md")]
#![forbid(unsafe_code)]
#![warn(missing_docs)]
pub mod admin;
pub mod client;
pub mod config;
pub mod consumer;
pub mod error;
pub mod group;
pub mod metrics;
pub mod producer;
mod scram;
pub use admin::{
AclBinding, AclFilter, AclOperation, AclPatternType, AclPermissionType, AclResourceType,
AdminClient, AlterClientQuotaEntryResult, AlterClientQuotasResult, AlterConfigResourceResult,
AlterConfigsOptions, AlterConfigsResult, AlterPartitionReassignmentResult,
AlterPartitionReassignmentTopicResult, AlterPartitionReassignmentsResult,
AlterScramCredentialResult, AlterUserScramCredentialsResult, BrokerDescription,
ClientQuotaAlteration, ClientQuotaEntity, ClientQuotaEntityComponent, ClientQuotaFilter,
ClientQuotaFilterComponent, ClientQuotaMatchType, ClientQuotaOperation, ClientQuotaValue,
ClusterDescription, ConfigAlterOperation, ConfigAlterOperationKind, ConfigEntry,
ConfigResourceResult, ConfigSource, ConfigSynonym, ConsumerGroupDescription,
ConsumerGroupMember, ConsumerGroupOffsetDelete, CreateAclsEntryResult, CreateAclsResult,
CreatePartitionsOptions, CreatePartitionsResult, CreatePartitionsTopicResult,
CreateTopicResult, CreateTopicsOptions, CreateTopicsResult, DeleteAclsFilterResult,
DeleteAclsResult, DeleteConsumerGroupOffsetsPartitionResult, DeleteConsumerGroupOffsetsResult,
DeleteConsumerGroupOffsetsTopicResult, DeleteConsumerGroupResult, DeleteTopicResult,
DeleteTopicsOptions, DeleteTopicsResult, DeletedAclResult, DescribeAclsResult,
DescribeClientQuotasResult, DescribeConfigsOptions, DescribeConfigsResult,
DescribeUserScramCredentialsResult, GroupListing, ListPartitionReassignmentsResult,
NewPartitions, NewTopic, OngoingPartitionReassignment, OngoingPartitionReassignmentTopic,
PartitionReassignment, PartitionReassignmentOptions, PartitionReassignmentPartition,
PartitionReassignmentQuery, ScramCredentialDeletion, ScramCredentialInfo,
ScramCredentialMechanism, ScramCredentialUpsertion, ScramUserCredentials,
TopicConfigAlteration, TopicConfigResource, TopicListing,
};
pub use client::Client;
pub use config::{
ClientConfig, OAuthBearerTokenFuture, OAuthBearerTokenProvider, SaslCredentials, SaslMechanism,
SecurityProtocol,
};
pub use consumer::{
Consumer, ConsumerAssignment, ConsumerConfig, ConsumerRecord, IsolationLevel,
PartitionWatermarks,
};
pub use error::{BrokerErrorKind, Error, Result};
pub use group::{
ConsumerGroup, ConsumerGroupAssignmentStrategy, ConsumerGroupConfig, ConsumerGroupHeartbeat,
ConsumerGroupMetadata, ConsumerGroupProtocol, OffsetResetPolicy,
};
pub use kafrust_protocol as protocol;
pub use metrics::{ClientMetrics, ClientMetricsSnapshot};
pub use producer::{
Acks, BufferedProducer, Compression, Header, ProducerBatchFailure, ProducerBatchRecordOutcome,
ProducerBatchReport, ProducerConfig, ProducerDelivery, ProducerRecord, RecordMetadata,
};
pub fn version() -> &'static str {
env!("CARGO_PKG_VERSION")
}
#[cfg(test)]
mod tests {
#[test]
fn exposes_crate_version() {
assert_eq!(crate::version(), env!("CARGO_PKG_VERSION"));
}
}