Module: Google::Cloud::PubSub::V1::Publisher::Paths
- Extended by:
- Paths
- Defined in:
- lib/google/cloud/pubsub/v1/publisher/paths.rb
Overview
Path helper methods for the Publisher API.
Instance Method Summary collapse
-
#project_path(project:) ⇒ ::String
Create a fully-qualified Project resource string.
-
#schema_path(project:, schema:) ⇒ ::String
Create a fully-qualified Schema resource string.
-
#subscription_path(project:, subscription:) ⇒ ::String
Create a fully-qualified Subscription resource string.
-
#topic_path(**args) ⇒ ::String
Create a fully-qualified Topic resource string.
Instance Method Details
#project_path(project:) ⇒ ::String
Create a fully-qualified Project resource string.
The resource will be in the following format:
projects/{project}
37 38 39 |
# File 'lib/google/cloud/pubsub/v1/publisher/paths.rb', line 37 def project_path project: "projects/#{project}" end |
#schema_path(project:, schema:) ⇒ ::String
Create a fully-qualified Schema resource string.
The resource will be in the following format:
projects/{project}/schemas/{schema}
52 53 54 55 56 |
# File 'lib/google/cloud/pubsub/v1/publisher/paths.rb', line 52 def schema_path project:, schema: raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/" "projects/#{project}/schemas/#{schema}" end |
#subscription_path(project:, subscription:) ⇒ ::String
Create a fully-qualified Subscription resource string.
The resource will be in the following format:
projects/{project}/subscriptions/{subscription}
69 70 71 72 73 |
# File 'lib/google/cloud/pubsub/v1/publisher/paths.rb', line 69 def subscription_path project:, subscription: raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/" "projects/#{project}/subscriptions/#{subscription}" end |
#topic_path(project: , topic: ) ⇒ ::String #topic_path ⇒ ::String
Create a fully-qualified Topic resource string.
92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 |
# File 'lib/google/cloud/pubsub/v1/publisher/paths.rb', line 92 def topic_path **args resources = { "project:topic" => (proc do |project:, topic:| raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/" "projects/#{project}/topics/#{topic}" end), "" => (proc do "_deleted-topic_" end) } resource = resources[args.keys.sort.join(":")] raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil? resource.call(**args) end |