Expand description
WebAssembly component for rust-camel — executes WASM modules as route processors via a Wasmtime runtime.
Main types: WasmComponent, WasmBundle, WasmConfig, WasmEndpoint, StateStore.
Main modules: runtime, bindings, state_store, host_functions.
§Limitations
- Only the Wasmtime runtime is supported; other WASM runtimes (Wasmer, WasmEdge, etc.) are not compatible.
- WASM modules must export a specific interface defined by
camel_wasm_bindings; arbitrary WASM binaries cannot be dropped in without meeting this contract. - The WASM sandbox has no access to the host filesystem or network by default;
host functions are limited to what is explicitly exposed via
host_functions. - Epoch-based fuel/interruption requires the
epochfeature; long-running modules without epoch support may block the async executor.
Re-exports§
pub use authorization_policy::WasmAuthorizationPolicyEvaluator;pub use authorization_policy::build_permission_registry;pub use bundle::WasmBundle;pub use config::WasmConfig;pub use endpoint::WasmEndpoint;pub use epoch::EpochTicker;pub use error::TrapReason;pub use error::WasmError;pub use health::WasmHealthCheck;pub use security_policy::WasmSecurityPolicy;pub use security_policy::build_security_policy_registry;pub use state_store::StateStore;
Modules§
- authorization_
policy - bean
- bean_
bindings - bindings
- bundle
- config
- WASM plugin configuration for Processor URI query params and
Camel.tomllimits blocks used by Bean/AuthorizationPolicy/SecurityPolicy. - endpoint
- epoch
- Epoch-based execution timeout enforcement.
- error
- WASM component error types.
- health
- host_
functions - producer
- runtime
- security_
policy - security_
policy_ bindings - serde_
bridge - state_
store - wasm_
plugin_ context