AllJoyn is designed as a backwards-compatible extension of DBus, a standard protocol for inter-application communication in the Linux desktop environment. It offers the following features:
This document describes the Java language binding for the AllJoyn API. It covers the following topics:
The following table summarizes the AllJoyn types.
| Conventional Name | Code | ASCII | Description |
|---|---|---|---|
| INVALID | 0 | NUL | Not a valid type code, used to terminate signatures |
| BYTE | 121 | 'y' | 8-bit unsigned integer |
| BOOLEAN | 98 | 'b' | Boolean value, 0 is FALSE and 1 is TRUE. Everything else is invalid. |
| INT16 | 110 | 'n' | 16-bit signed integer |
| UINT16 | 113 | 'q' | 16-bit unsigned integer |
| INT32 | 105 | 'i' | 32-bit signed integer |
| UINT32 | 117 | 'u' | 32-bit unsigned integer |
| INT64 | 120 | 'x' | 64-bit signed integer |
| UINT64 | 116 | 't' | 64-bit unsigned integer |
| DOUBLE | 100 | 'd' | IEEE 754 double |
| STRING | 115 | 's' | UTF-8 string (must be valid UTF-8). Must be nul terminated and contain no other nul bytes. |
| OBJECT_PATH | 111 | 'o' | Name of an object instance |
| SIGNATURE | 103 | 'g' | A type signature |
| ARRAY | 97 | 'a' | Array |
| STRUCT | 114, 40, 41 | 'r','(',')' | Struct |
| VARIANT | 118 | 'v' | Variant type (the type of the value is part of the value itself) |
| DICT_ENTRY | 101, 123, 125 | 'e','{','}' | Entry in a dict or map (array of key-value pairs) |
Four of the types are container types: STRUCT, ARRAY, VARIANT, and DICT_ENTRY. All other types are a common basic data types.
When specifying a STRUCT or DICT_ENTRY, 'r' and 'e' should not be used. Instead use ASCII characters '(', ')', '{', and '}' to mark the beginning and ending of a container.