1pub mod claim_check;
62pub mod component_metadata_catalog;
63pub mod context;
64mod context_builder;
65pub mod datasource;
66pub mod health_registry;
67pub(crate) mod hot_reload;
68pub mod idempotent;
69pub mod language_registry;
70pub mod lifecycle;
71mod registry;
72pub(crate) use registry::{
76 ClaimCheckRegistry, IdempotentRegistry, SharedClaimCheckRegistry, SharedIdempotentRegistry,
77};
78pub(crate) mod shared;
79pub mod startup_validation;
80pub mod step;
81pub mod template;
82
83#[cfg(feature = "internal-adapters")]
84pub mod route {
85 pub use crate::lifecycle::adapters::route_compiler::{
86 PipelineRuntimeCtx, RouteChannelService, compose_pipeline, compose_pipeline_with_contracts,
87 compose_pipeline_with_handler, compose_traced_pipeline,
88 };
89 pub use crate::lifecycle::adapters::route_types::Route;
90 pub use crate::lifecycle::adapters::step_compilers::CompiledStep;
91 pub use crate::lifecycle::application::route_definition::*;
92 pub use crate::lifecycle::domain::route::RouteSpec;
93}
94
95#[cfg(feature = "internal-adapters")]
96pub mod route_controller {
97 pub use crate::lifecycle::adapters::route_controller::*;
98}
99
100pub mod supervising_route_controller {
101 pub use crate::lifecycle::adapters::controller_actor::spawn_supervision_task;
102}
103
104pub mod reload_watcher {
105 pub use crate::hot_reload::adapters::reload_watcher::*;
106 pub use crate::hot_reload::application::FunctionReloadContext;
107 pub use crate::hot_reload::application::execute_reload_actions;
108 pub use crate::hot_reload::domain::ReloadAction;
109}
110
111pub use crate::hot_reload::adapters::ReloadWatcher;
112pub use crate::hot_reload::application::FunctionReloadContext;
113pub use crate::hot_reload::application::execute_reload_actions;
114pub use crate::hot_reload::domain::ReloadAction;
115pub use crate::lifecycle::adapters::controller_actor::RouteControllerHandle;
116pub use crate::lifecycle::adapters::controller_actor::spawn_controller_actor;
117pub use crate::lifecycle::adapters::controller_actor::spawn_supervision_task;
118#[cfg(feature = "internal-adapters")]
119pub use crate::lifecycle::adapters::exchange_uow::ExchangeUoWLayer;
120#[cfg(feature = "internal-adapters")]
121pub use crate::lifecycle::adapters::redb_journal::{
122 JournalDurability, JournalEntry, JournalInspectFilter, RedbJournalOptions,
123 RedbRuntimeEventJournal,
124};
125#[cfg(feature = "internal-adapters")]
126pub use crate::lifecycle::adapters::route_controller::DefaultRouteController;
127#[cfg(feature = "internal-adapters")]
128pub use crate::lifecycle::adapters::route_types::Route;
129#[cfg(feature = "internal-adapters")]
130pub use crate::lifecycle::adapters::{
131 InMemoryCommandDedup, InMemoryEventPublisher, InMemoryProjectionStore, InMemoryRouteRepository,
132 InMemoryRuntimeStore, RuntimeExecutionAdapter,
133};
134pub use crate::lifecycle::application::runtime_bus::RuntimeBus;
135pub use crate::lifecycle::application::{BuilderStep, RouteDefinition};
136pub use crate::lifecycle::domain::{
137 LanguageRegistryError, RouteLifecycleCommand, RouteRuntimeAggregate, RouteRuntimeState,
138 RuntimeEvent,
139};
140pub use crate::lifecycle::ports::{
141 CommandDedupPort, EventPublisherPort, InFlightCountResult, ProjectionStorePort,
142 RouteRepositoryPort, RouteStatusProjection, RuntimeEventJournalPort, RuntimeExecutionPort,
143 RuntimeUnitOfWorkPort,
144};
145pub use crate::shared::components::domain::Registry;
146pub use crate::shared::observability::adapters::TracingProcessor;
147pub use crate::shared::observability::domain::{
148 DetailLevel, FileOutput, OutputFormat, StdoutOutput, TracerConfig, TracerOutputs,
149};
150pub use context::CamelContext;
151pub use language_registry::from_config as languages_from_config;
152pub use template::TemplateRegistry;
153
154pub use camel_api::CamelError;
156pub use camel_api::{RouteAction, RouteController, RouteStatus};
157
158impl From<lifecycle::domain::DomainError> for CamelError {
159 fn from(e: lifecycle::domain::DomainError) -> Self {
160 CamelError::RouteError(e.to_string())
161 }
162}
163
164impl From<lifecycle::domain::LanguageRegistryError> for CamelError {
165 fn from(e: lifecycle::domain::LanguageRegistryError) -> Self {
166 CamelError::Config(e.to_string())
167 }
168}