Expand description
§Cameleer core
A Rust implementation of the Apache Camel integration framework: exchanges, messages, endpoints, components, routes, Enterprise Integration Patterns, expression languages and a fluent route DSL.
Re-exports§
pub use prelude::*;
Modules§
- ai
- Provider-neutral tool calling: one model of messages, tool calls and results that every
model component converts on the wire, the
ToolProviderthat runs tools (thecameleer-airegistry registers one), and the agent loop (run_agent) shared by theagentstep and the model components’autoToolExecution. - alloc
- A std-only, thread-caching global allocator for Cameleer applications.
- async_
delay - Asynchronous delays: releasing the consumer thread while an exchange waits.
- builder
- Expression and predicate builders for the Rust DSL:
simple("${body}"),constant(5),header("foo").is_equal_to("bar"),body(), … - clock
- A cheap monotonic tick clock for the per-exchange statistics.
- component
- Built-in components shipped with cameleer-core.
- context
- CamelContext: the runtime holding components, endpoints, routes, registry, languages and property placeholders.
- dataformat
- Data formats (marshal / unmarshal).
- dsl
- The fluent Rust DSL.
- error
- Error type. Camel uses Java exception classes; Cameleer models an exception as
a
kind(the exception “class” name, e.g."IOException"), a message and an optional cause. Exception hierarchy (foronExceptionmatching) is modelled bykind_is_a. - executor
- Thread pools (Camel
ExecutorServiceManagerequivalent, std-only). - extensions
- Registration of built-in extensions (error handling, interceptors, …) that hook into route creation.
- health
- Health checks (Camel
camel-health). - history
- Message history (Camel
MessageHistory). - json
- JSON parsing (serialization lives on
Value::to_json). - language
- Expression languages.
- log
- Minimal logging facility (no external crates). Log records go to stderr by
default; a custom sink can be installed (useful for tests and the CLI).
The level threshold comes from
CAMEL_LOG_LEVEL(TRACE, DEBUG, INFO, WARN, ERROR, OFF). - management
- Management and statistics (Camel’s JMX management /
ManagedCamelContext). - message
- Message, headers and the Exchange.
- model
- Route model: route definitions made of processor definitions. The Rust DSL
(
dslmodule) and the YAML DSL both build this model; the model is turned into runtime processors when a route is created. - prelude
- Convenient imports for applications and components.
- processor
- Runtime processors and their model definitions.
- regex
- Regular expression engine (std-only, backtracking) supporting the commonly used subset of Java regular expression syntax:
- spi
- Core service provider interfaces: Processor, Expression, Predicate, Endpoint, Producer, Consumer, Component, Language, Service.
- stack
- How much stack the current thread has left, for recursive evaluators (scripts, SQL
routines) that must fail cleanly instead of overflowing. The thread’s stack bounds come
from
pthread_getattr_npon Linux andGetCurrentThreadStackLimitson Windows; other platforms assume 1 MiB below the first measurement point. - startup
- Startup step recording (Camel’s
StartupStepRecorder). - stripe
- Striped counters for statistics updated by many threads at once.
- supervising
- Supervising route controller (Camel
SupervisingRouteController). - template
- ProducerTemplate and ConsumerTemplate.
- template_
routes - Route templates in the Rust DSL (Camel
routeTemplate/TemplatedRouteBuilder). - tracer
- Tracer and backlog tracer (Camel
Tracer/BacklogTracer). - transaction
- Transactions (Camel’s
transacted()with a Spring-stylePlatformTransactionManager). - typeconverter
- The pluggable type converter registry (Camel
TypeConverterRegistry). - tz
- Time zones without external crates.
- util
- Utilities: URI parsing, endpoint parameters, durations, pattern matching.
- util_
time - Date/time helpers without external crates.
- value
- Dynamic value type used for message bodies, headers and exchange properties.
Macros§
- camel_
debug - camel_
error - camel_
info - camel_
trace - camel_
warn - impl_
definition_ boilerplate - Implements the boilerplate
as_any/as_any_mut/id methods for a definition struct that has anid: Option<String>field.