• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1type: com.google.api.codegen.ConfigProto
2config_schema_version: 2.0.0
3language_settings:
4  java:
5    package_name: com.google.cloud.pubsub.v1
6    interface_names:
7      google.pubsub.v1.Publisher: TopicAdmin
8      google.pubsub.v1.Subscriber: SubscriptionAdmin
9    release_level: GA
10  python:
11    package_name: google.cloud.pubsub_v1.gapic
12    release_level: GA
13  go:
14    package_name: cloud.google.com/go/pubsub/apiv1
15    domain_layer_location: cloud.google.com/go/pubsub
16    release_level: GA
17  csharp:
18    package_name: Google.Cloud.PubSub.V1
19    interface_names:
20      google.pubsub.v1.Publisher: PublisherServiceApi
21      google.pubsub.v1.Subscriber: SubscriberServiceApi
22    release_level: GA
23  ruby:
24    package_name: Google::Cloud::PubSub::V1
25    release_level: BETA
26  php:
27    package_name: Google\Cloud\PubSub\V1
28    release_level: GA
29  nodejs:
30    package_name: pubsub.v1
31    domain_layer_location: google-cloud
32    release_level: GA
33collections:
34# Language overrides are for backward-compatibility in Java.
35- entity_name: snapshot
36  language_overrides:
37  - language: java
38    entity_name: project_snapshot
39# Language overrides are for backward-compatibility in Java.
40- entity_name: subscription
41  language_overrides:
42  - language: java
43    entity_name: project_subscription
44interfaces:
45- name: google.pubsub.v1.Subscriber
46  # Deprecated collections are for backward-compatibility in Ruby, PHP and Python
47  deprecated_collections:
48  - name_pattern: "projects/{project}/topics/{topic}"
49    entity_name: topic
50  lang_doc:
51    java: To retrieve messages from a subscription, see the Subscriber class.
52  retry_codes_def:
53  - name: idempotent
54    retry_codes:
55    - UNKNOWN
56    - ABORTED
57    - UNAVAILABLE
58  - name: non_idempotent
59    retry_codes:
60    - UNAVAILABLE
61  - name: streaming_pull
62    retry_codes:
63    - DEADLINE_EXCEEDED
64    - RESOURCE_EXHAUSTED
65    - ABORTED
66    - INTERNAL
67    - UNAVAILABLE
68  retry_params_def:
69  - name: default
70    initial_retry_delay_millis: 100
71    retry_delay_multiplier: 1.3
72    max_retry_delay_millis: 60000  # 60 seconds
73    initial_rpc_timeout_millis: 60000  # 60 seconds
74    rpc_timeout_multiplier: 1
75    max_rpc_timeout_millis: 60000  # 60 seconds
76    total_timeout_millis: 600000  # 10 minutes
77  - name: messaging
78    initial_retry_delay_millis: 100
79    retry_delay_multiplier: 1.3
80    max_retry_delay_millis: 60000  # 60 seconds
81    initial_rpc_timeout_millis: 25000  # 25 seconds
82    rpc_timeout_multiplier: 1
83    max_rpc_timeout_millis: 25000  # 25 seconds
84    total_timeout_millis: 600000  # 10 minutes
85  - name: streaming_messaging
86    initial_retry_delay_millis: 100
87    retry_delay_multiplier: 1.3
88    max_retry_delay_millis: 60000  # 60 seconds
89    initial_rpc_timeout_millis: 600000  # 10 minutes
90    rpc_timeout_multiplier: 1
91    max_rpc_timeout_millis: 600000  # 10 minutes
92    total_timeout_millis: 600000  # 10 minutes
93  methods:
94  # TODO: remove the per method retry_codes_name field once
95  # https://github.com/googleapis/gapic-generator/issues/3137
96  # is fixed
97  - name: CreateSubscription
98    retry_codes_name: idempotent
99  - name: GetSubscription
100    retry_codes_name: idempotent
101  - name: UpdateSubscription
102    retry_codes_name: non_idempotent
103    sample_code_init_fields:
104    - update_mask.paths[0]="ack_deadline_seconds"
105    - subscription.ack_deadline_seconds=42
106  - name: ListSubscriptions
107    retry_codes_name: idempotent
108  - name: DeleteSubscription
109    retry_codes_name: non_idempotent
110  - name: GetSnapshot
111    surface_treatments:
112    - include_languages:
113      - go
114      - java
115      - csharp
116      - ruby
117      - nodejs
118      - python
119      - php
120      visibility: PACKAGE
121  - name: ModifyAckDeadline
122    retry_codes_name: non_idempotent
123    surface_treatments:
124    - include_languages:
125      - java
126      visibility: PACKAGE
127  - name: Acknowledge
128    retry_codes_name: non_idempotent
129    retry_params_name: messaging
130    surface_treatments:
131    - include_languages:
132      - java
133      visibility: PACKAGE
134  - name: Pull
135    retry_codes_name: idempotent
136    retry_params_name: messaging
137    surface_treatments:
138    - include_languages:
139      - java
140      visibility: PACKAGE
141  - name: StreamingPull
142    retry_codes_name: streaming_pull
143    retry_params_name: streaming_messaging
144    timeout_millis: 900000
145    surface_treatments:
146    - include_languages:
147      - java
148      visibility: PACKAGE
149  - name: ModifyPushConfig
150    retry_codes_name: non_idempotent
151  - name: ListSnapshots
152    retry_codes_name: idempotent
153  - name: CreateSnapshot
154    retry_codes_name: non_idempotent
155  - name: UpdateSnapshot
156    retry_codes_name: non_idempotent
157    sample_code_init_fields:
158    - update_mask.paths[0]="expire_time"
159    - snapshot.expire_time.seconds=123456
160  - name: DeleteSnapshot
161    retry_codes_name: non_idempotent
162  - name: Seek
163    retry_codes_name: idempotent
164  - name: SetIamPolicy
165    retry_codes_name: non_idempotent
166    reroute_to_grpc_interface: google.iam.v1.IAMPolicy
167    surface_treatments:
168    - include_languages:
169      - go
170      visibility: DISABLED
171  - name: GetIamPolicy
172    retry_codes_name: idempotent
173    reroute_to_grpc_interface: google.iam.v1.IAMPolicy
174    surface_treatments:
175    - include_languages:
176      - go
177      visibility: DISABLED
178  - name: TestIamPermissions
179    retry_codes_name: non_idempotent
180    reroute_to_grpc_interface: google.iam.v1.IAMPolicy
181    surface_treatments:
182    - include_languages:
183      - go
184      visibility: DISABLED
185- name: google.pubsub.v1.Publisher
186  lang_doc:
187    java: To publish messages to a topic, see the Publisher class.
188  smoke_test:
189    method: ListTopics
190    init_fields:
191    - project%project=$PROJECT_ID
192  retry_codes_def:
193  - name: idempotent
194    retry_codes:
195    - UNKNOWN
196    - ABORTED
197    - UNAVAILABLE
198  - name: non_idempotent
199    retry_codes:
200    - UNAVAILABLE
201  - name: none
202    retry_codes: []
203  - name: publish
204    retry_codes:
205    - ABORTED
206    - CANCELLED
207    - INTERNAL
208    - RESOURCE_EXHAUSTED
209    - UNKNOWN
210    - UNAVAILABLE
211    - DEADLINE_EXCEEDED
212  retry_params_def:
213  - name: default
214    initial_retry_delay_millis: 100
215    retry_delay_multiplier: 1.3
216    max_retry_delay_millis: 60000  # 60 seconds
217    initial_rpc_timeout_millis: 60000  # 60 seconds
218    rpc_timeout_multiplier: 1
219    max_rpc_timeout_millis: 60000  # 60 seconds
220    total_timeout_millis: 600000  # 10 minutes
221  - name: messaging
222    initial_retry_delay_millis: 100
223    retry_delay_multiplier: 1.3
224    max_retry_delay_millis: 60000  # 60 seconds
225    initial_rpc_timeout_millis: 5000  # 5 seconds
226    rpc_timeout_multiplier: 1.3
227    max_rpc_timeout_millis: 60000  # 60 seconds
228    total_timeout_millis: 60000  # 60 seconds
229  methods:
230  - name: CreateTopic
231    retry_codes_name: non_idempotent
232  - name: UpdateTopic
233    retry_codes_name: non_idempotent
234  - name: Publish
235    retry_codes_name: publish
236    retry_params_name: messaging
237    batching:
238      thresholds:
239        element_count_threshold: 100
240        element_count_limit: 1000     # TO BE REMOVED LATER
241        request_byte_threshold: 1048576  # 1 MiB
242        request_byte_limit: 10485760  # TO BE REMOVED LATER
243        delay_threshold_millis: 10
244      batch_descriptor:
245        batched_field: messages
246        discriminator_fields:
247        - topic
248        subresponse_field: message_ids
249    sample_code_init_fields:
250    - messages[0].data
251    surface_treatments:
252    - include_languages:
253      - java
254      visibility: PACKAGE
255  - name: GetTopic
256    retry_codes_name: idempotent
257  - name: ListTopics
258    retry_codes_name: idempotent
259  - name: ListTopicSubscriptions
260    retry_codes_name: idempotent
261  - name: ListTopicSnapshots
262    surface_treatments:
263    - include_languages:
264      - go
265      - java
266      - csharp
267      - ruby
268      - nodejs
269      - python
270      - php
271      visibility: PACKAGE
272  - name: DeleteTopic
273    retry_codes_name: non_idempotent
274  - name: SetIamPolicy
275    retry_codes_name: non_idempotent
276    reroute_to_grpc_interface: google.iam.v1.IAMPolicy
277    # TODO: surface_treatments are here only to make bazel presubmit pass
278    # they can be removed once presubmit starts using gapic-generator-go
279    surface_treatments:
280    - include_languages:
281      - go
282      visibility: DISABLED
283  - name: GetIamPolicy
284    retry_codes_name: idempotent
285    reroute_to_grpc_interface: google.iam.v1.IAMPolicy
286    surface_treatments:
287    - include_languages:
288      - go
289      visibility: DISABLED
290  - name: TestIamPermissions
291    retry_codes_name: non_idempotent
292    reroute_to_grpc_interface: google.iam.v1.IAMPolicy
293    surface_treatments:
294    - include_languages:
295      - go
296      visibility: DISABLED
297