tree: 618d6ed63f521805aaadc2717bdc191692725aaf [search]
  1. BUILD.gn
  2. DEPS
  3. DIR_METADATA
  4. event_trace_logging_platform.cc
  5. event_trace_logging_platform.h
  6. event_trace_logging_platform_unittest.cc
  7. logging.cc
  8. message_port_tls_connection.cc
  9. message_port_tls_connection.h
  10. message_port_tls_connection_unittest.cc
  11. net_udp_socket.cc
  12. net_udp_socket.h
  13. network_util.cc
  14. network_util.h
  15. OWNERS
  16. README.md
  17. socket_factory.cc
  18. socket_factory.h
  19. task_runner.cc
  20. task_runner.h
  21. time.cc
  22. tls_client_connection.cc
  23. tls_client_connection.h
  24. tls_client_connection_unittest.cc
  25. tls_connection_factory.cc
  26. tls_connection_factory.h
  27. tls_connection_factory_unittest.cc
  28. trace_logging_platform.cc
  29. udp_socket.cc
  30. udp_socket.h
components/openscreen_platform/README.md

This directory contains an implementation of the Open Screen platform API along with utility functions, using the //base and //net directories in Chromium.

Any Chromium target that (indirectly) depends on //third_party/openscreen/src/platform:api must also (indirectly) depend on one of two components provided by this component. In nearly all cases, the dependency should be in the same deps as //third_party/openscreen/src/platform:api. Most external targets should depend on //components/openscreen_platform. Targets that cannot use the Network Service should instead depend on //components/openscreen_platform:openscreen_platform_using_net_sockets, which uses a //net-based implementation of UdpSocket. These two targets are incompatible with each other.

A very small set of intermediary targets that are used by both types of targets above depend directly on //components/openscreen_platform:openscreen_platform_without_sockets and push the requirement to depend on one of the two public targets up to the dependency chain.