#![cfg_attr(docsrs, feature(doc_cfg))]
pub use faucet_core::*;
pub use faucet_core::TransformingSource;
pub use faucet_core::observability::Labels;
#[cfg(feature = "auth")]
pub mod auth {
pub use faucet_auth::*;
}
#[cfg(feature = "source-rest")]
pub mod source {
pub mod rest {
pub use faucet_source_rest::*;
}
#[cfg(feature = "source-graphql")]
pub mod graphql {
pub use faucet_source_graphql::*;
}
#[cfg(feature = "source-xml")]
pub mod xml {
pub use faucet_source_xml::*;
}
#[cfg(feature = "source-grpc")]
pub mod grpc {
pub use faucet_source_grpc::*;
}
#[cfg(feature = "source-postgres")]
pub mod postgres {
pub use faucet_source_postgres::*;
}
#[cfg(feature = "source-postgres-cdc")]
pub mod postgres_cdc {
pub use faucet_source_postgres_cdc::*;
}
#[cfg(feature = "source-mysql")]
pub mod mysql {
pub use faucet_source_mysql::*;
}
#[cfg(feature = "source-mssql")]
pub mod mssql {
pub use faucet_source_mssql::*;
}
#[cfg(feature = "source-sqlite")]
pub mod sqlite {
pub use faucet_source_sqlite::*;
}
#[cfg(feature = "source-s3")]
pub mod s3 {
pub use faucet_source_s3::*;
}
#[cfg(feature = "source-mongodb")]
pub mod mongodb {
pub use faucet_source_mongodb::*;
}
#[cfg(feature = "source-redis")]
pub mod redis {
pub use faucet_source_redis::*;
}
#[cfg(feature = "source-webhook")]
pub mod webhook {
pub use faucet_source_webhook::*;
}
#[cfg(feature = "source-websocket")]
pub mod websocket {
pub use faucet_source_websocket::*;
}
#[cfg(feature = "source-csv")]
pub mod csv {
pub use faucet_source_csv::*;
}
#[cfg(feature = "source-elasticsearch")]
pub mod elasticsearch {
pub use faucet_source_elasticsearch::*;
}
#[cfg(feature = "source-kafka")]
pub mod kafka {
pub use faucet_source_kafka::*;
}
#[cfg(feature = "source-parquet")]
pub mod parquet {
pub use faucet_source_parquet::*;
}
#[cfg(feature = "source-gcs")]
pub mod gcs {
pub use faucet_source_gcs::*;
}
}
#[cfg(not(feature = "source-rest"))]
pub mod source {
#[cfg(feature = "source-graphql")]
pub mod graphql {
pub use faucet_source_graphql::*;
}
#[cfg(feature = "source-xml")]
pub mod xml {
pub use faucet_source_xml::*;
}
#[cfg(feature = "source-grpc")]
pub mod grpc {
pub use faucet_source_grpc::*;
}
#[cfg(feature = "source-postgres")]
pub mod postgres {
pub use faucet_source_postgres::*;
}
#[cfg(feature = "source-postgres-cdc")]
pub mod postgres_cdc {
pub use faucet_source_postgres_cdc::*;
}
#[cfg(feature = "source-mysql")]
pub mod mysql {
pub use faucet_source_mysql::*;
}
#[cfg(feature = "source-mssql")]
pub mod mssql {
pub use faucet_source_mssql::*;
}
#[cfg(feature = "source-sqlite")]
pub mod sqlite {
pub use faucet_source_sqlite::*;
}
#[cfg(feature = "source-s3")]
pub mod s3 {
pub use faucet_source_s3::*;
}
#[cfg(feature = "source-mongodb")]
pub mod mongodb {
pub use faucet_source_mongodb::*;
}
#[cfg(feature = "source-redis")]
pub mod redis {
pub use faucet_source_redis::*;
}
#[cfg(feature = "source-webhook")]
pub mod webhook {
pub use faucet_source_webhook::*;
}
#[cfg(feature = "source-websocket")]
pub mod websocket {
pub use faucet_source_websocket::*;
}
#[cfg(feature = "source-csv")]
pub mod csv {
pub use faucet_source_csv::*;
}
#[cfg(feature = "source-elasticsearch")]
pub mod elasticsearch {
pub use faucet_source_elasticsearch::*;
}
#[cfg(feature = "source-kafka")]
pub mod kafka {
pub use faucet_source_kafka::*;
}
#[cfg(feature = "source-parquet")]
pub mod parquet {
pub use faucet_source_parquet::*;
}
#[cfg(feature = "source-gcs")]
pub mod gcs {
pub use faucet_source_gcs::*;
}
}
#[cfg(feature = "source-rest")]
pub use faucet_source_rest::{
Auth, DEFAULT_EXPIRY_RATIO, DEFAULT_TOKEN_ENDPOINT_EXPIRY_RATIO, PaginationStyle,
ResponseValidator, RestStream, RestStreamConfig, fetch_oauth2_token, fetch_token_from_endpoint,
};
pub mod sink {
#[cfg(feature = "sink-bigquery")]
pub mod bigquery {
pub use faucet_sink_bigquery::*;
}
#[cfg(feature = "sink-postgres")]
pub mod postgres {
pub use faucet_sink_postgres::*;
}
#[cfg(feature = "sink-jsonl")]
pub mod jsonl {
pub use faucet_sink_jsonl::*;
}
#[cfg(feature = "sink-snowflake")]
pub mod snowflake {
pub use faucet_sink_snowflake::*;
}
#[cfg(feature = "sink-mysql")]
pub mod mysql {
pub use faucet_sink_mysql::*;
}
#[cfg(feature = "sink-mssql")]
pub mod mssql {
pub use faucet_sink_mssql::*;
}
#[cfg(feature = "sink-sqlite")]
pub mod sqlite {
pub use faucet_sink_sqlite::*;
}
#[cfg(feature = "sink-s3")]
pub mod s3 {
pub use faucet_sink_s3::*;
}
#[cfg(feature = "sink-mongodb")]
pub mod mongodb {
pub use faucet_sink_mongodb::*;
}
#[cfg(feature = "sink-redis")]
pub mod redis {
pub use faucet_sink_redis::*;
}
#[cfg(feature = "sink-csv")]
pub mod csv {
pub use faucet_sink_csv::*;
}
#[cfg(feature = "sink-elasticsearch")]
pub mod elasticsearch {
pub use faucet_sink_elasticsearch::*;
}
#[cfg(feature = "sink-http")]
pub mod http {
pub use faucet_sink_http::*;
}
#[cfg(feature = "sink-stdout")]
pub mod stdout {
pub use faucet_sink_stdout::*;
}
#[cfg(feature = "sink-kafka")]
pub mod kafka {
pub use faucet_sink_kafka::*;
}
#[cfg(feature = "sink-parquet")]
pub mod parquet {
pub use faucet_sink_parquet::*;
}
#[cfg(feature = "sink-gcs")]
pub mod gcs {
pub use faucet_sink_gcs::*;
}
}
#[cfg(any(feature = "source-gcs", feature = "sink-gcs"))]
pub mod common_gcs {
pub use faucet_common_gcs::*;
}
#[cfg(any(feature = "source-kafka", feature = "sink-kafka"))]
pub mod common_kafka {
pub use faucet_common_kafka::*;
}
pub mod state {
#[cfg(feature = "state-redis")]
pub mod redis {
pub use faucet_state_redis::*;
}
#[cfg(feature = "state-postgres")]
pub mod postgres {
pub use faucet_state_postgres::*;
}
}