tree: f524614367d9ae9e3b7f7a6219a0cf3b57b6da25 [path history] [tgz]
  1. avahi_client.cc
  2. avahi_client.h
  3. bluez_client.cc
  4. bluez_client.h
  5. curl_http_client.cc
  6. curl_http_client.h
  7. event_deleter.h
  8. event_http_server.cc
  9. event_http_server.h
  10. event_network.cc
  11. event_network.h
  12. event_task_runner.cc
  13. event_task_runner.h
  14. file_config_store.cc
  15. file_config_store.h
  16. README.md
  17. ssl_stream.cc
  18. ssl_stream.h
  19. wifi_manager.cc
  20. wifi_manager.h
examples/provider/README.md

libweave provider examples

This directory contains example implementations of weave system providers.

Providers

  • avahi_client.cc
    • implements: weave::providerDnsServiceDiscovery
    • build-depends: libavahi-client
    • run-depends: avahi-daemon
  • bluez_client.cc
    • not-implemented
  • curl_http_client.cc
    • implements: weave::provider::HttpClient
    • build-depends: libcurl
  • event_http_server.cc
    • implements: weave::provider::HttpServer
    • build-depends: libevhtp
  • event_network.cc
    • implements: weave::provider::Network
    • build-depends: libevent
  • event_task_runner.cc
    • implements: weave::provider::TaskRunner
    • build-depends: libevent
  • file_config_store.cc
    • implements: weave::provider::ConfigStore
  • wifi_manager.cc
    • implements: weave::provider::Wifi
    • build-depends: weave::examples::EventNetworkImpl
    • run-depends: network-manager, dnsmasq, hostapd

Note:

  • The example providers are based on libevent and should be portable between most GNU/Linux distributions.
  • weave::examples::WifiImpl currently shells out to system command tools like nmcli, dnsmasq, ifconfig and hostpad.