Skip to main content

cameleer_core/
lib.rs

1//! # Cameleer core
2//!
3//! A Rust implementation of the Apache Camel integration framework: exchanges,
4//! messages, endpoints, components, routes, Enterprise Integration Patterns,
5//! expression languages and a fluent route DSL.
6
7#[cfg(feature = "agent")]
8pub mod ai;
9pub mod alloc;
10pub mod async_delay;
11pub mod builder;
12pub mod clock;
13pub mod component;
14pub mod context;
15pub mod dataformat;
16pub mod dsl;
17pub mod error;
18pub mod executor;
19pub mod extensions;
20pub mod health;
21pub mod history;
22pub mod json;
23pub mod language;
24pub mod log;
25pub mod management;
26pub mod message;
27pub mod model;
28pub mod processor;
29pub mod regex;
30pub mod spi;
31pub mod stack;
32pub mod startup;
33pub mod stripe;
34pub mod supervising;
35pub mod template;
36pub mod template_routes;
37pub mod tracer;
38pub mod transaction;
39pub mod typeconverter;
40pub mod tz;
41pub mod util;
42pub mod util_time;
43pub mod value;
44
45/// Convenient imports for applications and components.
46pub mod prelude {
47    pub use crate::builder::{
48        and, body, constant, exchange_property, expr, header, headers, language, not, or, pred, simple, ExpressionDefinition,
49        IntoExpression, ValueBuilder,
50    };
51    pub use crate::component::mock::MockEndpoint;
52    pub use crate::context::{CamelContext, ServiceStatus};
53    pub use crate::dsl::RouteBuilder;
54    pub use crate::error::{kinds, CamelError, Result};
55    pub use crate::log::Level as LoggingLevel;
56    pub use crate::message::{props, Exchange, ExchangePattern, Headers, Message};
57    pub use crate::model::{ProcessorDefinition, RouteContext, RouteDefinition};
58    pub use crate::spi::{AggregationStrategy, Component, Consumer, Endpoint, Expression, Language, Predicate, Processor, Producer, Service};
59    pub use crate::template::{ConsumerTemplate, ProducerTemplate};
60    pub use crate::util::Parameters;
61    pub use crate::value::{FromValue, Value};
62
63    pub use crate::dataformat::DataFormatDefinition;
64    pub use crate::language::{
65        bean_method, jq, jsonpath, jsonpath_as, method, ref_expression, tokenize, tokenize_pair, tokenize_regex, tokenize_xml, xpath,
66        xpath_as, LanguageOptions,
67    };
68    pub use crate::processor::errors::{
69        caught_exception, dead_letter_channel, default_error_handler, memory_idempotent_repository, no_error_handler, CamelContextErrorExt,
70        RedeliveryPolicy,
71    };
72    pub use crate::processor::routing::strategies;
73    pub use crate::processor::routing::ClaimCheckOperation;
74}
75
76pub use prelude::*;