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