1pub mod aggregator;
11pub mod backoff;
12pub mod body;
13pub mod body_converter;
14pub mod circuit_breaker;
15pub mod claim_check;
16pub mod component_metadata;
17pub mod data_format;
18pub mod datasource;
19pub mod declarative;
20pub mod delayer;
21pub mod dynamic_router;
22pub mod endpoint_pipeline;
23pub mod error;
24pub mod error_handler;
25pub mod exchange;
26pub mod exchange_lookup;
27pub mod filter;
28pub mod from_body;
29pub mod function;
30pub mod health;
31pub mod idempotent;
32pub mod lifecycle;
33pub mod load_balancer;
34pub mod loop_eip;
35pub mod message;
36pub mod metrics;
37pub mod multicast;
38pub mod outcome_pipeline;
39pub mod outcome_segment;
40pub mod pipeline_outcome;
41pub mod platform;
42pub mod processor;
43pub mod producer;
44pub mod recipient_list;
45pub mod resequencer;
46pub mod route_controller;
47pub mod routing_slip;
48pub mod runtime;
49pub mod security_policy;
50pub mod splitter;
51pub mod ssrf;
52pub mod step_lifecycle;
53pub mod stream_cache;
54pub mod supervision;
55pub mod template;
56pub mod throttler;
57pub mod unit_of_work;
58pub mod value;
59pub mod xml_convert;
60
61pub use aggregator::{AggregationFn, AggregatorConfig, CompletionCondition};
63pub use backoff::{BackoffConfig, BackoffState};
64pub use body::{Body, BoxAsyncRead, StreamBody, StreamMetadata};
65pub use body_converter::{BodyType, convert as convert_body};
66pub use circuit_breaker::CircuitBreakerConfig;
67pub use data_format::DataFormat;
68pub use datasource::{
69 DatasourceCatalog, DatasourceConfig, DatasourceHandle, PoolFactory, ResourceRef,
70};
71pub use declarative::{LanguageExpressionDef, ValueSourceDef};
72pub use delayer::{DEFAULT_MAX_DELAY_MS, DelayConfig};
73pub use dynamic_router::{DynamicRouterConfig, RouterExpression};
74pub use endpoint_pipeline::{CAMEL_SLIP_ENDPOINT, EndpointPipelineConfig, EndpointResolver};
75pub use error::{CamelError, ConfigValidationError};
76pub use error_handler::{
77 BoundaryKind, ErrorHandlerConfig, ExceptionDisposition, ExceptionPolicy,
78 ExceptionPolicyBuilder, HEADER_REDELIVERED, HEADER_REDELIVERY_COUNTER,
79 HEADER_REDELIVERY_MAX_COUNTER, PolicyId, RedeliveryPolicy, RetryOutcome, RetryableStep,
80 StepDisposition,
81};
82pub use security_policy::{
83 AuthorizationDecision, PRINCIPAL_AUDIENCE_KEY, PRINCIPAL_CLAIMS_KEY, PRINCIPAL_ISSUER_KEY,
84 PRINCIPAL_KEY, PRINCIPAL_ROLES_KEY, PRINCIPAL_SCOPES_KEY, PRINCIPAL_SUBJECT_KEY, Principal,
85 SecurityPolicy, SecurityPolicyConfig, store_principal_properties,
86};
87pub use claim_check::ClaimCheckRepository;
89#[allow(deprecated)]
90pub use error_handler::ExponentialBackoff;
91pub use exchange::{
92 CAMEL_STOP, Exchange, ExchangePattern, ORIGINAL_MESSAGE_EXTENSION, is_camel_stop,
93};
94pub use exchange_lookup::{ExchangeLookupPath, LookupPathError, PathSegment};
95pub use filter::FilterPredicate;
96pub use from_body::FromBody;
97pub use function::{
98 ExchangePatch, FunctionDefinition, FunctionDiff, FunctionId, FunctionInvocationError,
99 FunctionInvoker, FunctionInvokerSync, PatchBody,
100};
101pub use health::{AsyncHealthCheck, CheckResult, HealthReport, HealthSource, ServiceHealth};
102pub use idempotent::IdempotentRepository;
103pub use lifecycle::{HealthStatus, Lifecycle, ServiceStatus};
104pub use load_balancer::{LoadBalanceStrategy, LoadBalancerConfig};
105pub use message::Message;
106pub use metrics::{MetricsCollector, NoOpMetrics};
107pub use multicast::{MulticastAggregationFn, MulticastConfig, MulticastStrategy};
108pub use outcome_pipeline::OutcomePipeline;
109pub use outcome_segment::OutcomeSegment;
110pub use pipeline_outcome::PipelineOutcome;
111pub use platform::{
112 LeadershipEvent, LeadershipHandle, LeadershipService, NoopLeadershipService,
113 NoopPlatformService, NoopReadinessGate, PlatformError, PlatformIdentity, PlatformService,
114 ReadinessGate,
115};
116pub use processor::{
117 BoxProcessor, BoxProcessorExt, IdentityProcessor, OpaqueProcessor, Processor, ProcessorFn,
118 SyncBoxProcessor,
119};
120pub use producer::ProducerContext;
121pub use resequencer::{
122 BatchCompletion, CapacityPolicy, GapPolicy, ResequenceMode, ResequencePolicyConfig,
123};
124pub use route_controller::{RouteAction, RouteController, RouteStatus};
125pub use routing_slip::{RoutingSlipConfig, RoutingSlipExpression};
126pub use runtime::{
127 CANONICAL_CONTRACT_DECLARATIVE_ONLY_STEPS, CANONICAL_CONTRACT_EXCLUDED_DECLARATIVE_STEPS,
128 CANONICAL_CONTRACT_NAME, CANONICAL_CONTRACT_RUST_ONLY_STEPS,
129 CANONICAL_CONTRACT_SUPPORTED_STEPS, CANONICAL_CONTRACT_VERSION, CanonicalConcurrencySpec,
130 CanonicalFieldLoss, CanonicalLossReport, CanonicalRouteSpec, RuntimeCommand, RuntimeCommandBus,
131 RuntimeCommandResult, RuntimeEvent, RuntimeHandle, RuntimeQuery, RuntimeQueryBus,
132 RuntimeQueryResult, canonical_contract_rejection_reason, canonical_contract_supports_step,
133};
134pub use splitter::{
135 AggregationStrategy, SplitExpression, SplitterConfig, StreamSplitConfig, StreamSplitFormat,
136 StreamingSplitExpression, fragment_exchange, split_body, split_body_json_array,
137 split_body_lines,
138};
139pub use ssrf::{SsrfPolicy, is_ssrf_blocked_ip};
140pub use step_lifecycle::{StepLifecycle, StepShutdownReason};
141pub use supervision::SupervisionConfig;
142pub use throttler::{ThrottleStrategy, ThrottlerConfig};
143pub use unit_of_work::UnitOfWorkConfig;
144pub use value::{Headers, Value, cmp_values};
145
146pub use template::{
148 RouteTemplateSpec, TemplateError, TemplateInstanceRecord, TemplateParameterSpec,
149 TemplatedRouteSpec,
150};