tree: f658636e0f39806be44aefeb81e1ce2bb3b4ac64 [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. rpc_test.go
  27. service.go
  28. service_test.go
  29. service_util_test.go
  30. settings.go
  31. settings_test.go
  32. streams.go
  33. streams_test.go
  34. subscriber.go
  35. subscriber_test.go
  36. version.go
  37. version_not112.go
  38. version_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.