Annotation Type DBusProperty


@Target(TYPE) @Retention(RUNTIME) @Repeatable(DBusProperties.class) public @interface DBusProperty
Appends information about properties in the interface. The annotated properties are added to the introspection data. In case of complex type of the property please use TypeRef.

Usage:

@DBusInterfaceName("com.example.Bar")
@DBusProperty(name = "Name", type = String.class)
@DBusProperty(name = "ListOfVariables", type = List.class, access = Access.READ)
@DBusProperty(name = "MapOfStringList", type = ComplexTypeWithMapAndList.class, access = Access.READ)
public interface Bar extends DBusInterface {

  // TypeRef allows to provide detailed information about type
  interface ComplexTypeWithMapAndList extends TypeRef<Map<String, List<String>>> {
  }
}
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
     
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    Property name
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    Property access type
    type of the property, in case of complex types please create custom interface that extends TypeRef
  • Element Details

    • name

      String name
      Property name
      Returns:
      name
    • type

      Class<?> type
      type of the property, in case of complex types please create custom interface that extends TypeRef
      Returns:
      type
      Default:
      org.freedesktop.dbus.types.Variant.class
    • access

      Property access type
      Returns:
      access
      Default:
      READ_WRITE