tree: 9a93204ad41d692dc41b7089fde476c38d658247 [path history] [tgz]
  2. acks.go
  3. acks_test.go
  4. assigner.go
  5. assigner_test.go
  6. committer.go
  7. committer_test.go
  8. errors.go
  9. flow_control.go
  10. flow_control_test.go
  11. main_test.go
  12. message_router.go
  13. message_router_test.go
  14. partition_count.go
  15. partition_count_test.go
  16. periodic_task.go
  17. periodic_task_test.go
  18. publish_batcher.go
  19. publish_batcher_test.go
  20. publisher.go
  21. publisher_test.go
  22. requests_test.go
  23. resources.go
  24. resources_test.go
  25. rpc.go
  26. service.go
  27. service_test.go
  28. service_util_test.go
  29. settings.go
  30. settings_test.go
  31. streams.go
  32. streams_test.go
  33. subscriber.go
  34. subscriber_test.go


This directory contains internal implementation details for Cloud Pub/Sub Lite. Its exported interface can change at any time.


The following are general conventions used in this package:

  • Capitalized methods and fields of a struct denotes its public interface. They are safe to call from outside the struct (e.g. accesses immutable fields or guarded by a mutex). All other methods are considered internal implementation details that should not be called from outside the struct.
  • unsafeFoo() methods indicate that the caller is expected to have already acquired the struct's mutex. Since Go does not support re-entrant locks, they do not acquire the mutex. These are typically common util methods that need to be atomic with other operations.