Package com.lucimber.dbus.codec.decoder


package com.lucimber.dbus.codec.decoder
D-Bus message decoding infrastructure for converting wire format to Java objects.

This package provides decoders for all D-Bus types, handling the unmarshalling of binary data from the D-Bus wire protocol into strongly-typed Java objects. The decoders support both big-endian and little-endian byte ordering as specified in the D-Bus message header.

Getting Started

For first-time users: This package is primarily used internally by the framework. Most users won't interact with decoders directly. For understanding D-Bus types, start with com.lucimber.dbus.type package instead.

Key components include:

  • Decoder - Base decoder interface
  • DecoderFactory - Factory for creating type-specific decoders
  • Type-specific decoders for all D-Bus basic and container types
  • Proper alignment handling according to D-Bus specification
See Also:
  • Class
    Description
    ArrayDecoder<ValueT extends DBusType>
    A decoder which unmarshals an array from the byte stream format used by D-Bus.
    A decoder which unmarshals a boolean from the byte stream format used by D-Bus.
    A decoder which unmarshals a byte from the byte stream format used by D-Bus.
    Decoder<BufferT,ValueT extends DBusType>
    Decodes marshalled D-Bus data types.
    A RuntimeException that gets thrown by a Decoder, if the decoding of a value isn't possible.
    Factory interface for creating D-Bus decoders.
    DecoderResult<ValueT extends DBusType>
    The DecoderResult class yields the decoded D-Bus data type and the number of decoded bytes.
    DecoderResultImpl<ValueT extends DBusType>
    Default implementation of the decoder result interface.
    Utility methods used by the ByteBuffer-based implementations of the decoders.
    Default implementation of DecoderFactory that provides decoders for all standard D-Bus types.
    Functional interface for creating decoders.
    DictDecoder<KeyT extends DBusBasicType,ValueT extends DBusType>
    A decoder which unmarshals a dictionary from the byte stream format used by D-Bus.
    DictEntryDecoder<KeyT extends DBusBasicType,ValueT extends DBusType>
    A decoder which unmarshals a key-value pair from the byte stream format used by D-Bus.
    A decoder which unmarshals a double from the byte stream format used by D-Bus.
    A decoder which unmarshals a short from the byte stream format used by D-Bus.
    A decoder which unmarshals an integer from the byte stream format used by D-Bus.
    A decoder which unmarshals a long from the byte stream format used by D-Bus.
    A decoder which unmarshals an object path from the byte stream format used by D-Bus.
    A decoder which unmarshals a signature from the byte stream format used by D-Bus.
    A decoder which unmarshals a string from the byte stream format used by D-Bus.
    A decoder which unmarshals a struct from the byte stream format used by D-Bus.
    A decoder which unmarshals an unsigned short from the byte stream format used by D-Bus.
    A decoder which unmarshals an unsigned integer from the byte stream format used by D-Bus.
    A decoder which unmarshals an unsigned long from the byte stream format used by D-Bus.
    A decoder which unmarshals a file descriptor from the byte stream format used by D-Bus.
    A decoder which unmarshals a variant from the byte stream format used by D-Bus.