Public interface definitions of Google APIs. Topics (grpc依赖)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

302 lines
7.7 KiB

type: com.google.api.codegen.ConfigProto
generate_samples: true
language_settings:
java:
package_name: com.google.cloud.pubsub.spi.v1
python:
package_name: google.pubsub.v1
go:
package_name: google.golang.org/cloud/pubsub
csharp:
package_name: Google.Pubsub.V1
ruby:
package_name: Google::Pubsub::V1
php:
package_name: Google\Cloud\Toolkit\PubSub\V1
interfaces:
- name: google.pubsub.v1.Subscriber
collections:
- name_pattern: projects/{project}
entity_name: project
- name_pattern: projects/{project}/subscriptions/{subscription}
entity_name: subscription
- name_pattern: projects/{project}/topics/{topic}
entity_name: topic
retry_codes_def:
- name: idempotent
retry_codes:
- UNAVAILABLE
- DEADLINE_EXCEEDED
- name: non_idempotent
retry_codes:
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000 # 60 seconds
initial_rpc_timeout_millis: 60000 # 60 seconds
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 60000 # 60 seconds
total_timeout_millis: 600000 # 10 minutes
- name: messaging
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000 # 60 seconds
initial_rpc_timeout_millis: 12000 # 12 seconds
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 12000 # 12 seconds
total_timeout_millis: 600000 # 10 minutes
methods:
- name: CreateSubscription
flattening:
groups:
- parameters:
- name
- topic
- push_config
- ack_deadline_seconds
required_fields:
- name
- topic
retry_codes_name: idempotent
retry_params_name: default
request_object_method: true
field_name_patterns:
name: subscription
topic: topic
- name: GetSubscription
flattening:
groups:
- parameters:
- subscription
required_fields:
- subscription
retry_codes_name: idempotent
retry_params_name: default
request_object_method: false
field_name_patterns:
subscription: subscription
- name: ListSubscriptions
page_streaming:
request:
token_field: page_token
response:
token_field: next_page_token
resources_field: subscriptions
flattening:
groups:
- parameters:
- project
required_fields:
- project
retry_codes_name: idempotent
retry_params_name: default
request_object_method: true
field_name_patterns:
project: project
- name: DeleteSubscription
flattening:
groups:
- parameters:
- subscription
required_fields:
- subscription
retry_codes_name: idempotent
retry_params_name: default
request_object_method: false
field_name_patterns:
subscription: subscription
- name: ModifyAckDeadline
flattening:
groups:
- parameters:
- subscription
- ack_ids
- ack_deadline_seconds
required_fields:
- subscription
- ack_ids
- ack_deadline_seconds
retry_codes_name: non_idempotent
retry_params_name: default
request_object_method: true
field_name_patterns:
subscription: subscription
- name: Acknowledge
flattening:
groups:
- parameters:
- subscription
- ack_ids
required_fields:
- subscription
- ack_ids
retry_codes_name: non_idempotent
retry_params_name: messaging
request_object_method: true
field_name_patterns:
subscription: subscription
- name: Pull
flattening:
groups:
- parameters:
- subscription
- return_immediately
- max_messages
required_fields:
- subscription
- max_messages
retry_codes_name: non_idempotent
retry_params_name: messaging
request_object_method: true
field_name_patterns:
subscription: subscription
- name: ModifyPushConfig
flattening:
groups:
- parameters:
- subscription
- push_config
required_fields:
- subscription
- push_config
retry_codes_name: non_idempotent
retry_params_name: default
request_object_method: true
field_name_patterns:
subscription: subscription
- name: google.pubsub.v1.Publisher
collections:
- name_pattern: projects/{project}
entity_name: project
- name_pattern: projects/{project}/topics/{topic}
entity_name: topic
retry_codes_def:
- name: idempotent
retry_codes:
- UNAVAILABLE
- DEADLINE_EXCEEDED
- name: one_plus_delivery
retry_codes:
- UNAVAILABLE
- DEADLINE_EXCEEDED
- name: non_idempotent
retry_codes:
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000 # 60 seconds
initial_rpc_timeout_millis: 60000 # 60 seconds
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 60000 # 60 seconds
total_timeout_millis: 600000 # 10 minutes
- name: messaging
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000 # 60 seconds
initial_rpc_timeout_millis: 12000 # 12 seconds
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 12000 # 12 seconds
total_timeout_millis: 600000 # 10 minutes
methods:
- name: CreateTopic
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
request_object_method: false
field_name_patterns:
name: topic
- name: Publish
flattening:
groups:
- parameters:
- topic
- messages
required_fields:
- topic
- messages
retry_codes_name: one_plus_delivery
retry_params_name: messaging
request_object_method: true
bundling:
thresholds:
element_count_threshold: 10
element_count_limit: 1000 # TO BE REMOVED LATER
request_byte_threshold: 1024 # 1 Kb
request_byte_limit: 10485760 # TO BE REMOVED LATER
delay_threshold_millis: 10
bundle_descriptor:
bundled_field: messages
discriminator_fields:
- topic
subresponse_field: message_ids
field_name_patterns:
topic: topic
sample_code_init_fields:
- messages[0].data
- name: GetTopic
flattening:
groups:
- parameters:
- topic
required_fields:
- topic
retry_codes_name: idempotent
retry_params_name: default
request_object_method: false
field_name_patterns:
topic: topic
- name: ListTopics
page_streaming:
request:
token_field: page_token
response:
token_field: next_page_token
resources_field: topics
flattening:
groups:
- parameters:
- project
required_fields:
- project
retry_codes_name: idempotent
retry_params_name: default
request_object_method: true
field_name_patterns:
project: project
- name: ListTopicSubscriptions
page_streaming:
request:
token_field: page_token
response:
token_field: next_page_token
resources_field: subscriptions
flattening:
groups:
- parameters:
- topic
required_fields:
- topic
retry_codes_name: idempotent
retry_params_name: default
request_object_method: true
field_name_patterns:
topic: topic
- name: DeleteTopic
flattening:
groups:
- parameters:
- topic
required_fields:
- topic
retry_codes_name: idempotent
retry_params_name: default
request_object_method: false
field_name_patterns:
topic: topic