Cameleer

Data formats

The data formats that marshal and unmarshal message bodies in Cameleer routes, such as JSON, CSV and Avro.

NameWhat it does
ASN.1The asn1 data format encodes values as ASN.1 BER/DER and decodes BER/DER back into values, either as a generic tree or typed by an ASN.1 module compiled at runtime; it can also split a stream of BER records.
AvroThe avro data format encodes the message body as Apache Avro (binary, JSON or Object Container File) using an Avro schema, and decodes Avro data back into a structured body.
BarcodeThe barcode data format turns text into a barcode image (QR Code, Data Matrix, PDF417, Aztec, Code 128, EAN and more) on marshal, and reads the text back from a barcode image on unmarshal.
Base64The base64 data format encodes the message body as Base64 text (marshal) and decodes Base64 text back to bytes (unmarshal).
Bindy data formatsThe Bindy data formats (bindyCsv, bindyFixed, bindyKvp) map delimited, fixed-length and key-value records to typed fields described by a record descriptor, in both directions.
CBORThe cbor data format encodes the message body as CBOR, a compact binary form of JSON (RFC 8949), and decodes CBOR back into a structured body.
CryptoThe crypto data format encrypts a message body with a symmetric key (AES, DES or Triple DES) on marshal and decrypts it on unmarshal, with an optional HMAC to detect tampering.
CSVThe csv data format parses CSV text into rows (lists or maps) and writes rows back as CSV, following RFC 4180.
FHIR data formatsThe fhirJson and fhirXml data formats parse HL7 FHIR resources from JSON or XML into a value and serialize resources back, which also converts between the two FHIR encodings.
ForyThe fory data format serializes values to and from the Apache Fory (formerly Fury) cross-language binary format, so Rust, Java, Python, Go and JavaScript services can share compact payloads.
GZipThe gzipDeflater data format compresses the message body to gzip (marshal) and decompresses gzip data (unmarshal).
HexThe hex data format writes the message body as hexadecimal text (marshal) and reads hexadecimal text back into bytes (unmarshal).
HL7The hl7 data format parses HL7 v2 messages (ER7, the pipe-delimited text) into a structured value with the CamelHL7* headers, and encodes such values back to ER7 text.
iCalThe iCal data format parses iCalendar (RFC 5545, .ics) text into a structured value and writes such values back as iCalendar text.
JAXBThe jaxb data format converts XML to structured values and back, typed and optionally validated by an XML Schema (XSD), without generated Java classes.
JSONThe json data format turns JSON text into a structured message body (unmarshal) and any body back into JSON text (marshal).
MIME multipartThe mimeMultipart data format writes a message body and its attachments as one MIME multipart document, and splits a multipart document back into a body and attachments.
PGPThe pgp data format encrypts and signs message bodies with OpenPGP public keys on marshal, and decrypts and verifies them on unmarshal, compatible with GnuPG.
ProtobufThe protobuf data format encodes the message body as Protocol Buffers bytes (or proto3 JSON) using a .proto file, and decodes protobuf data back into a structured body.
StringThe string data format converts the body to bytes in a chosen charset (marshal) and bytes back to text (unmarshal).
SyslogThe syslog data format parses RFC 5424 and RFC 3164 syslog lines into a structured value with the CamelSyslog* headers, and formats such values back into syslog lines.
Tar fileThe tarFile data format packs a message body into a tar archive and unpacks tar archives back into one body or a list of entries.
ThriftThe thrift data format converts structured values to and from Apache Thrift binary, compact or JSON encodings, using a Thrift IDL file read at runtime instead of generated classes.
uniVocity data formatsThe uniVocity data formats (univocityCsv, univocityTsv, univocityFixed) parse and write CSV, tab-separated and fixed-width files as rows or maps, with uniVocity's option names.
URL-encoded formThe urlencoded data format parses application/x-www-form-urlencoded text into a map (unmarshal) and writes a map as form text (marshal).
XML data format (Jackson XML)The jacksonXml data format converts between XML text and a structured body: object keys become elements, lists repeat the element, and options map keys to attributes, text and namespaces.
YAMLThe yaml data format parses YAML text into a structured body (unmarshal) and writes any body as YAML (marshal), like Camel's SnakeYAML data format.
Zip DeflaterThe zipDeflater data format compresses the message body with zlib/DEFLATE (marshal) and decompresses it (unmarshal), like Java's java.util.zip.Deflater.
Zip FileThe zipFile data format packs the message body into a .zip archive (marshal) and unpacks entries from a .zip archive (unmarshal).