1// Code generated by protoc-gen-go. DO NOT EDIT.
2// source: google/cloud/tasks/v2beta2/queue.proto
3
4package tasks
5
6import (
7	fmt "fmt"
8	math "math"
9
10	proto "github.com/golang/protobuf/proto"
11	duration "github.com/golang/protobuf/ptypes/duration"
12	timestamp "github.com/golang/protobuf/ptypes/timestamp"
13	_ "google.golang.org/genproto/googleapis/api/annotations"
14)
15
16// Reference imports to suppress errors if they are not otherwise used.
17var _ = proto.Marshal
18var _ = fmt.Errorf
19var _ = math.Inf
20
21// This is a compile-time assertion to ensure that this generated file
22// is compatible with the proto package it is being compiled against.
23// A compilation error at this line likely means your copy of the
24// proto package needs to be updated.
25const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
26
27// State of the queue.
28type Queue_State int32
29
30const (
31	// Unspecified state.
32	Queue_STATE_UNSPECIFIED Queue_State = 0
33	// The queue is running. Tasks can be dispatched.
34	//
35	// If the queue was created using Cloud Tasks and the queue has
36	// had no activity (method calls or task dispatches) for 30 days,
37	// the queue may take a few minutes to re-activate. Some method
38	// calls may return [NOT_FOUND][google.rpc.Code.NOT_FOUND] and
39	// tasks may not be dispatched for a few minutes until the queue
40	// has been re-activated.
41	Queue_RUNNING Queue_State = 1
42	// Tasks are paused by the user. If the queue is paused then Cloud
43	// Tasks will stop delivering tasks from it, but more tasks can
44	// still be added to it by the user. When a pull queue is paused,
45	// all [LeaseTasks][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks] calls will return a
46	// [FAILED_PRECONDITION][google.rpc.Code.FAILED_PRECONDITION].
47	Queue_PAUSED Queue_State = 2
48	// The queue is disabled.
49	//
50	// A queue becomes `DISABLED` when
51	// [queue.yaml](https://cloud.google.com/appengine/docs/python/config/queueref)
52	// or
53	// [queue.xml](https://cloud.google.com/appengine/docs/standard/java/config/queueref)
54	// is uploaded which does not contain the queue. You cannot directly disable
55	// a queue.
56	//
57	// When a queue is disabled, tasks can still be added to a queue
58	// but the tasks are not dispatched and
59	// [LeaseTasks][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks] calls return a
60	// `FAILED_PRECONDITION` error.
61	//
62	// To permanently delete this queue and all of its tasks, call
63	// [DeleteQueue][google.cloud.tasks.v2beta2.CloudTasks.DeleteQueue].
64	Queue_DISABLED Queue_State = 3
65)
66
67var Queue_State_name = map[int32]string{
68	0: "STATE_UNSPECIFIED",
69	1: "RUNNING",
70	2: "PAUSED",
71	3: "DISABLED",
72}
73
74var Queue_State_value = map[string]int32{
75	"STATE_UNSPECIFIED": 0,
76	"RUNNING":           1,
77	"PAUSED":            2,
78	"DISABLED":          3,
79}
80
81func (x Queue_State) String() string {
82	return proto.EnumName(Queue_State_name, int32(x))
83}
84
85func (Queue_State) EnumDescriptor() ([]byte, []int) {
86	return fileDescriptor_b86070a8ff200176, []int{0, 0}
87}
88
89// A queue is a container of related tasks. Queues are configured to manage
90// how those tasks are dispatched. Configurable properties include rate limits,
91// retry options, target types, and others.
92type Queue struct {
93	// Caller-specified and required in [CreateQueue][google.cloud.tasks.v2beta2.CloudTasks.CreateQueue],
94	// after which it becomes output only.
95	//
96	// The queue name.
97	//
98	// The queue name must have the following format:
99	// `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`
100	//
101	// * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),
102	//    hyphens (-), colons (:), or periods (.).
103	//    For more information, see
104	//    [Identifying
105	//    projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)
106	// * `LOCATION_ID` is the canonical ID for the queue's location.
107	//    The list of available locations can be obtained by calling
108	//    [ListLocations][google.cloud.location.Locations.ListLocations].
109	//    For more information, see https://cloud.google.com/about/locations/.
110	// * `QUEUE_ID` can contain letters ([A-Za-z]), numbers ([0-9]), or
111	//   hyphens (-). The maximum length is 100 characters.
112	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
113	// Caller-specified and required in [CreateQueue][google.cloud.tasks.v2beta2.CloudTasks.CreateQueue][],
114	// after which the queue config type becomes output only, though fields within
115	// the config are mutable.
116	//
117	// The queue's target.
118	//
119	// The target applies to all tasks in the queue.
120	//
121	// Types that are valid to be assigned to TargetType:
122	//	*Queue_AppEngineHttpTarget
123	//	*Queue_PullTarget
124	TargetType isQueue_TargetType `protobuf_oneof:"target_type"`
125	// Rate limits for task dispatches.
126	//
127	// [rate_limits][google.cloud.tasks.v2beta2.Queue.rate_limits] and
128	// [retry_config][google.cloud.tasks.v2beta2.Queue.retry_config] are related because they both
129	// control task attempts however they control how tasks are
130	// attempted in different ways:
131	//
132	// * [rate_limits][google.cloud.tasks.v2beta2.Queue.rate_limits] controls the total rate of
133	//   dispatches from a queue (i.e. all traffic dispatched from the
134	//   queue, regardless of whether the dispatch is from a first
135	//   attempt or a retry).
136	// * [retry_config][google.cloud.tasks.v2beta2.Queue.retry_config] controls what happens to
137	//   particular a task after its first attempt fails. That is,
138	//   [retry_config][google.cloud.tasks.v2beta2.Queue.retry_config] controls task retries (the
139	//   second attempt, third attempt, etc).
140	RateLimits *RateLimits `protobuf:"bytes,5,opt,name=rate_limits,json=rateLimits,proto3" json:"rate_limits,omitempty"`
141	// Settings that determine the retry behavior.
142	//
143	// * For tasks created using Cloud Tasks: the queue-level retry settings
144	//   apply to all tasks in the queue that were created using Cloud Tasks.
145	//   Retry settings cannot be set on individual tasks.
146	// * For tasks created using the App Engine SDK: the queue-level retry
147	//   settings apply to all tasks in the queue which do not have retry settings
148	//   explicitly set on the task and were created by the App Engine SDK. See
149	//   [App Engine
150	//   documentation](https://cloud.google.com/appengine/docs/standard/python/taskqueue/push/retrying-tasks).
151	RetryConfig *RetryConfig `protobuf:"bytes,6,opt,name=retry_config,json=retryConfig,proto3" json:"retry_config,omitempty"`
152	// Output only. The state of the queue.
153	//
154	// `state` can only be changed by called
155	// [PauseQueue][google.cloud.tasks.v2beta2.CloudTasks.PauseQueue],
156	// [ResumeQueue][google.cloud.tasks.v2beta2.CloudTasks.ResumeQueue], or uploading
157	// [queue.yaml/xml](https://cloud.google.com/appengine/docs/python/config/queueref).
158	// [UpdateQueue][google.cloud.tasks.v2beta2.CloudTasks.UpdateQueue] cannot be used to change `state`.
159	State Queue_State `protobuf:"varint,7,opt,name=state,proto3,enum=google.cloud.tasks.v2beta2.Queue_State" json:"state,omitempty"`
160	// Output only. The last time this queue was purged.
161	//
162	// All tasks that were [created][google.cloud.tasks.v2beta2.Task.create_time] before this time
163	// were purged.
164	//
165	// A queue can be purged using [PurgeQueue][google.cloud.tasks.v2beta2.CloudTasks.PurgeQueue], the
166	// [App Engine Task Queue SDK, or the Cloud
167	// Console](https://cloud.google.com/appengine/docs/standard/python/taskqueue/push/deleting-tasks-and-queues#purging_all_tasks_from_a_queue).
168	//
169	// Purge time will be truncated to the nearest microsecond. Purge
170	// time will be unset if the queue has never been purged.
171	PurgeTime            *timestamp.Timestamp `protobuf:"bytes,8,opt,name=purge_time,json=purgeTime,proto3" json:"purge_time,omitempty"`
172	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
173	XXX_unrecognized     []byte               `json:"-"`
174	XXX_sizecache        int32                `json:"-"`
175}
176
177func (m *Queue) Reset()         { *m = Queue{} }
178func (m *Queue) String() string { return proto.CompactTextString(m) }
179func (*Queue) ProtoMessage()    {}
180func (*Queue) Descriptor() ([]byte, []int) {
181	return fileDescriptor_b86070a8ff200176, []int{0}
182}
183
184func (m *Queue) XXX_Unmarshal(b []byte) error {
185	return xxx_messageInfo_Queue.Unmarshal(m, b)
186}
187func (m *Queue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
188	return xxx_messageInfo_Queue.Marshal(b, m, deterministic)
189}
190func (m *Queue) XXX_Merge(src proto.Message) {
191	xxx_messageInfo_Queue.Merge(m, src)
192}
193func (m *Queue) XXX_Size() int {
194	return xxx_messageInfo_Queue.Size(m)
195}
196func (m *Queue) XXX_DiscardUnknown() {
197	xxx_messageInfo_Queue.DiscardUnknown(m)
198}
199
200var xxx_messageInfo_Queue proto.InternalMessageInfo
201
202func (m *Queue) GetName() string {
203	if m != nil {
204		return m.Name
205	}
206	return ""
207}
208
209type isQueue_TargetType interface {
210	isQueue_TargetType()
211}
212
213type Queue_AppEngineHttpTarget struct {
214	AppEngineHttpTarget *AppEngineHttpTarget `protobuf:"bytes,3,opt,name=app_engine_http_target,json=appEngineHttpTarget,proto3,oneof"`
215}
216
217type Queue_PullTarget struct {
218	PullTarget *PullTarget `protobuf:"bytes,4,opt,name=pull_target,json=pullTarget,proto3,oneof"`
219}
220
221func (*Queue_AppEngineHttpTarget) isQueue_TargetType() {}
222
223func (*Queue_PullTarget) isQueue_TargetType() {}
224
225func (m *Queue) GetTargetType() isQueue_TargetType {
226	if m != nil {
227		return m.TargetType
228	}
229	return nil
230}
231
232func (m *Queue) GetAppEngineHttpTarget() *AppEngineHttpTarget {
233	if x, ok := m.GetTargetType().(*Queue_AppEngineHttpTarget); ok {
234		return x.AppEngineHttpTarget
235	}
236	return nil
237}
238
239func (m *Queue) GetPullTarget() *PullTarget {
240	if x, ok := m.GetTargetType().(*Queue_PullTarget); ok {
241		return x.PullTarget
242	}
243	return nil
244}
245
246func (m *Queue) GetRateLimits() *RateLimits {
247	if m != nil {
248		return m.RateLimits
249	}
250	return nil
251}
252
253func (m *Queue) GetRetryConfig() *RetryConfig {
254	if m != nil {
255		return m.RetryConfig
256	}
257	return nil
258}
259
260func (m *Queue) GetState() Queue_State {
261	if m != nil {
262		return m.State
263	}
264	return Queue_STATE_UNSPECIFIED
265}
266
267func (m *Queue) GetPurgeTime() *timestamp.Timestamp {
268	if m != nil {
269		return m.PurgeTime
270	}
271	return nil
272}
273
274// XXX_OneofWrappers is for the internal use of the proto package.
275func (*Queue) XXX_OneofWrappers() []interface{} {
276	return []interface{}{
277		(*Queue_AppEngineHttpTarget)(nil),
278		(*Queue_PullTarget)(nil),
279	}
280}
281
282// Rate limits.
283//
284// This message determines the maximum rate that tasks can be dispatched by a
285// queue, regardless of whether the dispatch is a first task attempt or a retry.
286//
287// Note: The debugging command, [RunTask][google.cloud.tasks.v2beta2.CloudTasks.RunTask], will run a task
288// even if the queue has reached its [RateLimits][google.cloud.tasks.v2beta2.RateLimits].
289type RateLimits struct {
290	// The maximum rate at which tasks are dispatched from this queue.
291	//
292	// If unspecified when the queue is created, Cloud Tasks will pick the
293	// default.
294	//
295	// * For [App Engine queues][google.cloud.tasks.v2beta2.AppEngineHttpTarget], the maximum allowed value
296	//   is 500.
297	// * This field is output only   for [pull queues][google.cloud.tasks.v2beta2.PullTarget]. In addition to the
298	//   `max_tasks_dispatched_per_second` limit, a maximum of 10 QPS of
299	//   [LeaseTasks][google.cloud.tasks.v2beta2.CloudTasks.LeaseTasks] requests are allowed per pull queue.
300	//
301	//
302	// This field has the same meaning as
303	// [rate in
304	// queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#rate).
305	MaxTasksDispatchedPerSecond float64 `protobuf:"fixed64,1,opt,name=max_tasks_dispatched_per_second,json=maxTasksDispatchedPerSecond,proto3" json:"max_tasks_dispatched_per_second,omitempty"`
306	// Output only. The max burst size.
307	//
308	// Max burst size limits how fast tasks in queue are processed when
309	// many tasks are in the queue and the rate is high. This field
310	// allows the queue to have a high rate so processing starts shortly
311	// after a task is enqueued, but still limits resource usage when
312	// many tasks are enqueued in a short period of time.
313	//
314	// The [token bucket](https://wikipedia.org/wiki/Token_Bucket)
315	// algorithm is used to control the rate of task dispatches. Each
316	// queue has a token bucket that holds tokens, up to the maximum
317	// specified by `max_burst_size`. Each time a task is dispatched, a
318	// token is removed from the bucket. Tasks will be dispatched until
319	// the queue's bucket runs out of tokens. The bucket will be
320	// continuously refilled with new tokens based on
321	// [max_tasks_dispatched_per_second][google.cloud.tasks.v2beta2.RateLimits.max_tasks_dispatched_per_second].
322	//
323	// Cloud Tasks will pick the value of `max_burst_size` based on the
324	// value of
325	// [max_tasks_dispatched_per_second][google.cloud.tasks.v2beta2.RateLimits.max_tasks_dispatched_per_second].
326	//
327	// For App Engine queues that were created or updated using
328	// `queue.yaml/xml`, `max_burst_size` is equal to
329	// [bucket_size](https://cloud.google.com/appengine/docs/standard/python/config/queueref#bucket_size).
330	// Since `max_burst_size` is output only, if
331	// [UpdateQueue][google.cloud.tasks.v2beta2.CloudTasks.UpdateQueue] is called on a queue
332	// created by `queue.yaml/xml`, `max_burst_size` will be reset based
333	// on the value of
334	// [max_tasks_dispatched_per_second][google.cloud.tasks.v2beta2.RateLimits.max_tasks_dispatched_per_second],
335	// regardless of whether
336	// [max_tasks_dispatched_per_second][google.cloud.tasks.v2beta2.RateLimits.max_tasks_dispatched_per_second]
337	// is updated.
338	//
339	MaxBurstSize int32 `protobuf:"varint,2,opt,name=max_burst_size,json=maxBurstSize,proto3" json:"max_burst_size,omitempty"`
340	// The maximum number of concurrent tasks that Cloud Tasks allows
341	// to be dispatched for this queue. After this threshold has been
342	// reached, Cloud Tasks stops dispatching tasks until the number of
343	// concurrent requests decreases.
344	//
345	// If unspecified when the queue is created, Cloud Tasks will pick the
346	// default.
347	//
348	//
349	// The maximum allowed value is 5,000.
350	//
351	// This field is output only for
352	// [pull queues][google.cloud.tasks.v2beta2.PullTarget] and always -1, which indicates no limit. No other
353	// queue types can have `max_concurrent_tasks` set to -1.
354	//
355	//
356	// This field has the same meaning as
357	// [max_concurrent_requests in
358	// queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#max_concurrent_requests).
359	MaxConcurrentTasks   int32    `protobuf:"varint,3,opt,name=max_concurrent_tasks,json=maxConcurrentTasks,proto3" json:"max_concurrent_tasks,omitempty"`
360	XXX_NoUnkeyedLiteral struct{} `json:"-"`
361	XXX_unrecognized     []byte   `json:"-"`
362	XXX_sizecache        int32    `json:"-"`
363}
364
365func (m *RateLimits) Reset()         { *m = RateLimits{} }
366func (m *RateLimits) String() string { return proto.CompactTextString(m) }
367func (*RateLimits) ProtoMessage()    {}
368func (*RateLimits) Descriptor() ([]byte, []int) {
369	return fileDescriptor_b86070a8ff200176, []int{1}
370}
371
372func (m *RateLimits) XXX_Unmarshal(b []byte) error {
373	return xxx_messageInfo_RateLimits.Unmarshal(m, b)
374}
375func (m *RateLimits) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
376	return xxx_messageInfo_RateLimits.Marshal(b, m, deterministic)
377}
378func (m *RateLimits) XXX_Merge(src proto.Message) {
379	xxx_messageInfo_RateLimits.Merge(m, src)
380}
381func (m *RateLimits) XXX_Size() int {
382	return xxx_messageInfo_RateLimits.Size(m)
383}
384func (m *RateLimits) XXX_DiscardUnknown() {
385	xxx_messageInfo_RateLimits.DiscardUnknown(m)
386}
387
388var xxx_messageInfo_RateLimits proto.InternalMessageInfo
389
390func (m *RateLimits) GetMaxTasksDispatchedPerSecond() float64 {
391	if m != nil {
392		return m.MaxTasksDispatchedPerSecond
393	}
394	return 0
395}
396
397func (m *RateLimits) GetMaxBurstSize() int32 {
398	if m != nil {
399		return m.MaxBurstSize
400	}
401	return 0
402}
403
404func (m *RateLimits) GetMaxConcurrentTasks() int32 {
405	if m != nil {
406		return m.MaxConcurrentTasks
407	}
408	return 0
409}
410
411// Retry config.
412//
413// These settings determine how a failed task attempt is retried.
414type RetryConfig struct {
415	// Number of attempts per task.
416	//
417	// If unspecified when the queue is created, Cloud Tasks will pick the
418	// default.
419	//
420	//
421	//
422	// This field has the same meaning as
423	// [task_retry_limit in
424	// queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
425	//
426	// Types that are valid to be assigned to NumAttempts:
427	//	*RetryConfig_MaxAttempts
428	//	*RetryConfig_UnlimitedAttempts
429	NumAttempts isRetryConfig_NumAttempts `protobuf_oneof:"num_attempts"`
430	// If positive, `max_retry_duration` specifies the time limit for
431	// retrying a failed task, measured from when the task was first
432	// attempted. Once `max_retry_duration` time has passed *and* the
433	// task has been attempted [max_attempts][google.cloud.tasks.v2beta2.RetryConfig.max_attempts]
434	// times, no further attempts will be made and the task will be
435	// deleted.
436	//
437	// If zero, then the task age is unlimited.
438	//
439	// If unspecified when the queue is created, Cloud Tasks will pick the
440	// default.
441	//
442	// This field is output only for [pull queues][google.cloud.tasks.v2beta2.PullTarget].
443	//
444	//
445	// `max_retry_duration` will be truncated to the nearest second.
446	//
447	// This field has the same meaning as
448	// [task_age_limit in
449	// queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
450	MaxRetryDuration *duration.Duration `protobuf:"bytes,3,opt,name=max_retry_duration,json=maxRetryDuration,proto3" json:"max_retry_duration,omitempty"`
451	// A task will be [scheduled][google.cloud.tasks.v2beta2.Task.schedule_time] for retry between
452	// [min_backoff][google.cloud.tasks.v2beta2.RetryConfig.min_backoff] and
453	// [max_backoff][google.cloud.tasks.v2beta2.RetryConfig.max_backoff] duration after it fails,
454	// if the queue's [RetryConfig][google.cloud.tasks.v2beta2.RetryConfig] specifies that the task should be
455	// retried.
456	//
457	// If unspecified when the queue is created, Cloud Tasks will pick the
458	// default.
459	//
460	// This field is output only for [pull queues][google.cloud.tasks.v2beta2.PullTarget].
461	//
462	//
463	// `min_backoff` will be truncated to the nearest second.
464	//
465	// This field has the same meaning as
466	// [min_backoff_seconds in
467	// queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
468	MinBackoff *duration.Duration `protobuf:"bytes,4,opt,name=min_backoff,json=minBackoff,proto3" json:"min_backoff,omitempty"`
469	// A task will be [scheduled][google.cloud.tasks.v2beta2.Task.schedule_time] for retry between
470	// [min_backoff][google.cloud.tasks.v2beta2.RetryConfig.min_backoff] and
471	// [max_backoff][google.cloud.tasks.v2beta2.RetryConfig.max_backoff] duration after it fails,
472	// if the queue's [RetryConfig][google.cloud.tasks.v2beta2.RetryConfig] specifies that the task should be
473	// retried.
474	//
475	// If unspecified when the queue is created, Cloud Tasks will pick the
476	// default.
477	//
478	// This field is output only for [pull queues][google.cloud.tasks.v2beta2.PullTarget].
479	//
480	//
481	// `max_backoff` will be truncated to the nearest second.
482	//
483	// This field has the same meaning as
484	// [max_backoff_seconds in
485	// queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
486	MaxBackoff *duration.Duration `protobuf:"bytes,5,opt,name=max_backoff,json=maxBackoff,proto3" json:"max_backoff,omitempty"`
487	// The time between retries will double `max_doublings` times.
488	//
489	// A task's retry interval starts at
490	// [min_backoff][google.cloud.tasks.v2beta2.RetryConfig.min_backoff], then doubles
491	// `max_doublings` times, then increases linearly, and finally
492	// retries retries at intervals of
493	// [max_backoff][google.cloud.tasks.v2beta2.RetryConfig.max_backoff] up to
494	// [max_attempts][google.cloud.tasks.v2beta2.RetryConfig.max_attempts] times.
495	//
496	// For example, if [min_backoff][google.cloud.tasks.v2beta2.RetryConfig.min_backoff] is 10s,
497	// [max_backoff][google.cloud.tasks.v2beta2.RetryConfig.max_backoff] is 300s, and
498	// `max_doublings` is 3, then the a task will first be retried in
499	// 10s. The retry interval will double three times, and then
500	// increase linearly by 2^3 * 10s.  Finally, the task will retry at
501	// intervals of [max_backoff][google.cloud.tasks.v2beta2.RetryConfig.max_backoff] until the
502	// task has been attempted [max_attempts][google.cloud.tasks.v2beta2.RetryConfig.max_attempts]
503	// times. Thus, the requests will retry at 10s, 20s, 40s, 80s, 160s,
504	// 240s, 300s, 300s, ....
505	//
506	// If unspecified when the queue is created, Cloud Tasks will pick the
507	// default.
508	//
509	// This field is output only for [pull queues][google.cloud.tasks.v2beta2.PullTarget].
510	//
511	//
512	// This field has the same meaning as
513	// [max_doublings in
514	// queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
515	MaxDoublings         int32    `protobuf:"varint,6,opt,name=max_doublings,json=maxDoublings,proto3" json:"max_doublings,omitempty"`
516	XXX_NoUnkeyedLiteral struct{} `json:"-"`
517	XXX_unrecognized     []byte   `json:"-"`
518	XXX_sizecache        int32    `json:"-"`
519}
520
521func (m *RetryConfig) Reset()         { *m = RetryConfig{} }
522func (m *RetryConfig) String() string { return proto.CompactTextString(m) }
523func (*RetryConfig) ProtoMessage()    {}
524func (*RetryConfig) Descriptor() ([]byte, []int) {
525	return fileDescriptor_b86070a8ff200176, []int{2}
526}
527
528func (m *RetryConfig) XXX_Unmarshal(b []byte) error {
529	return xxx_messageInfo_RetryConfig.Unmarshal(m, b)
530}
531func (m *RetryConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
532	return xxx_messageInfo_RetryConfig.Marshal(b, m, deterministic)
533}
534func (m *RetryConfig) XXX_Merge(src proto.Message) {
535	xxx_messageInfo_RetryConfig.Merge(m, src)
536}
537func (m *RetryConfig) XXX_Size() int {
538	return xxx_messageInfo_RetryConfig.Size(m)
539}
540func (m *RetryConfig) XXX_DiscardUnknown() {
541	xxx_messageInfo_RetryConfig.DiscardUnknown(m)
542}
543
544var xxx_messageInfo_RetryConfig proto.InternalMessageInfo
545
546type isRetryConfig_NumAttempts interface {
547	isRetryConfig_NumAttempts()
548}
549
550type RetryConfig_MaxAttempts struct {
551	MaxAttempts int32 `protobuf:"varint,1,opt,name=max_attempts,json=maxAttempts,proto3,oneof"`
552}
553
554type RetryConfig_UnlimitedAttempts struct {
555	UnlimitedAttempts bool `protobuf:"varint,2,opt,name=unlimited_attempts,json=unlimitedAttempts,proto3,oneof"`
556}
557
558func (*RetryConfig_MaxAttempts) isRetryConfig_NumAttempts() {}
559
560func (*RetryConfig_UnlimitedAttempts) isRetryConfig_NumAttempts() {}
561
562func (m *RetryConfig) GetNumAttempts() isRetryConfig_NumAttempts {
563	if m != nil {
564		return m.NumAttempts
565	}
566	return nil
567}
568
569func (m *RetryConfig) GetMaxAttempts() int32 {
570	if x, ok := m.GetNumAttempts().(*RetryConfig_MaxAttempts); ok {
571		return x.MaxAttempts
572	}
573	return 0
574}
575
576func (m *RetryConfig) GetUnlimitedAttempts() bool {
577	if x, ok := m.GetNumAttempts().(*RetryConfig_UnlimitedAttempts); ok {
578		return x.UnlimitedAttempts
579	}
580	return false
581}
582
583func (m *RetryConfig) GetMaxRetryDuration() *duration.Duration {
584	if m != nil {
585		return m.MaxRetryDuration
586	}
587	return nil
588}
589
590func (m *RetryConfig) GetMinBackoff() *duration.Duration {
591	if m != nil {
592		return m.MinBackoff
593	}
594	return nil
595}
596
597func (m *RetryConfig) GetMaxBackoff() *duration.Duration {
598	if m != nil {
599		return m.MaxBackoff
600	}
601	return nil
602}
603
604func (m *RetryConfig) GetMaxDoublings() int32 {
605	if m != nil {
606		return m.MaxDoublings
607	}
608	return 0
609}
610
611// XXX_OneofWrappers is for the internal use of the proto package.
612func (*RetryConfig) XXX_OneofWrappers() []interface{} {
613	return []interface{}{
614		(*RetryConfig_MaxAttempts)(nil),
615		(*RetryConfig_UnlimitedAttempts)(nil),
616	}
617}
618
619func init() {
620	proto.RegisterEnum("google.cloud.tasks.v2beta2.Queue_State", Queue_State_name, Queue_State_value)
621	proto.RegisterType((*Queue)(nil), "google.cloud.tasks.v2beta2.Queue")
622	proto.RegisterType((*RateLimits)(nil), "google.cloud.tasks.v2beta2.RateLimits")
623	proto.RegisterType((*RetryConfig)(nil), "google.cloud.tasks.v2beta2.RetryConfig")
624}
625
626func init() {
627	proto.RegisterFile("google/cloud/tasks/v2beta2/queue.proto", fileDescriptor_b86070a8ff200176)
628}
629
630var fileDescriptor_b86070a8ff200176 = []byte{
631	// 768 bytes of a gzipped FileDescriptorProto
632	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x94, 0xeb, 0x8e, 0xdb, 0x44,
633	0x14, 0xc7, 0xe3, 0x6d, 0xbd, 0xdd, 0x1e, 0xa7, 0xab, 0x74, 0xb8, 0x28, 0x0d, 0xa8, 0x1b, 0xa5,
634	0xa8, 0xcd, 0x27, 0x1b, 0x2d, 0x12, 0x12, 0x45, 0x08, 0x25, 0xeb, 0xb0, 0x09, 0xaa, 0xa2, 0xe0,
635	0x64, 0x3f, 0x80, 0x90, 0x46, 0x13, 0x67, 0xe2, 0x9a, 0x7a, 0x2e, 0xcc, 0x8c, 0x51, 0xda, 0xd5,
636	0x3e, 0x04, 0xaf, 0xc1, 0x1b, 0xf1, 0x0a, 0x3c, 0x05, 0xf2, 0xf8, 0x92, 0x8a, 0xa5, 0xd9, 0x4f,
637	0x99, 0xcb, 0xef, 0xff, 0x3f, 0x27, 0x73, 0xce, 0x31, 0x3c, 0x4f, 0x84, 0x48, 0x32, 0x1a, 0xc4,
638	0x99, 0xc8, 0x37, 0x81, 0x21, 0xfa, 0x8d, 0x0e, 0xfe, 0x38, 0x5f, 0x53, 0x43, 0xce, 0x83, 0xdf,
639	0x73, 0x9a, 0x53, 0x5f, 0x2a, 0x61, 0x04, 0xea, 0x95, 0x9c, 0x6f, 0x39, 0xdf, 0x72, 0x7e, 0xc5,
640	0xf5, 0x9e, 0x54, 0x1e, 0x44, 0xa6, 0x81, 0xa2, 0x5a, 0xe4, 0x2a, 0xae, 0x64, 0xbd, 0x17, 0x07,
641	0xec, 0x0d, 0x51, 0x09, 0x35, 0x15, 0xf8, 0xb4, 0x02, 0xed, 0x6e, 0x9d, 0x6f, 0x83, 0x4d, 0xae,
642	0x88, 0x49, 0x05, 0xaf, 0xee, 0xcf, 0xfe, 0x7b, 0x6f, 0x52, 0x46, 0xb5, 0x21, 0x4c, 0x56, 0xc0,
643	0xe7, 0xef, 0x25, 0x41, 0x38, 0x17, 0xc6, 0xaa, 0x75, 0x79, 0x3b, 0xf8, 0xd3, 0x05, 0xf7, 0xa7,
644	0xe2, 0xef, 0x20, 0x04, 0xf7, 0x39, 0x61, 0xb4, 0xeb, 0xf4, 0x9d, 0xe1, 0xc3, 0xc8, 0xae, 0xd1,
645	0x16, 0x3e, 0x25, 0x52, 0x62, 0xca, 0x93, 0x94, 0x53, 0xfc, 0xda, 0x18, 0x89, 0xcb, 0xe4, 0xba,
646	0xf7, 0xfa, 0xce, 0xd0, 0x3b, 0x0f, 0xfc, 0x0f, 0xff, 0x7b, 0x7f, 0x24, 0xe5, 0xc4, 0x0a, 0xa7,
647	0xc6, 0xc8, 0x95, 0x95, 0x4d, 0x5b, 0xd1, 0x47, 0xe4, 0xf6, 0x31, 0x9a, 0x81, 0x27, 0xf3, 0x2c,
648	0xab, 0xcd, 0xef, 0x5b, 0xf3, 0xe7, 0x87, 0xcc, 0x17, 0x79, 0x96, 0x35, 0x9e, 0x20, 0x9b, 0x1d,
649	0xba, 0x04, 0x4f, 0x11, 0x43, 0x71, 0x96, 0xb2, 0xd4, 0xe8, 0xae, 0x7b, 0xb7, 0x55, 0x44, 0x0c,
650	0x7d, 0x65, 0xe9, 0x08, 0x54, 0xb3, 0x46, 0x3f, 0x42, 0x5b, 0x51, 0xa3, 0xde, 0xe2, 0x58, 0xf0,
651	0x6d, 0x9a, 0x74, 0x8f, 0xad, 0xd3, 0x8b, 0x83, 0x4e, 0x05, 0x7f, 0x61, 0xf1, 0xc8, 0x53, 0xfb,
652	0x0d, 0xfa, 0x0e, 0x5c, 0x6d, 0x88, 0xa1, 0xdd, 0x07, 0x7d, 0x67, 0x78, 0x7a, 0xd8, 0xc4, 0x56,
653	0xc3, 0x5f, 0x16, 0x78, 0x54, 0xaa, 0xd0, 0x37, 0x00, 0x32, 0x57, 0x09, 0xc5, 0x45, 0x6d, 0xbb,
654	0x27, 0x36, 0x91, 0x5e, 0xed, 0x51, 0x17, 0xde, 0x5f, 0xd5, 0x85, 0x8f, 0x1e, 0x5a, 0xba, 0xd8,
655	0x0f, 0x26, 0xe0, 0x5a, 0x2b, 0xf4, 0x09, 0x3c, 0x5e, 0xae, 0x46, 0xab, 0x09, 0xbe, 0x9a, 0x2f,
656	0x17, 0x93, 0x8b, 0xd9, 0x0f, 0xb3, 0x49, 0xd8, 0x69, 0x21, 0x0f, 0x1e, 0x44, 0x57, 0xf3, 0xf9,
657	0x6c, 0x7e, 0xd9, 0x71, 0x10, 0xc0, 0xf1, 0x62, 0x74, 0xb5, 0x9c, 0x84, 0x9d, 0x23, 0xd4, 0x86,
658	0x93, 0x70, 0xb6, 0x1c, 0x8d, 0x5f, 0x4d, 0xc2, 0xce, 0xbd, 0x97, 0xbf, 0xfe, 0x33, 0xfa, 0x19,
659	0xce, 0x6c, 0xba, 0x65, 0xb6, 0x65, 0x70, 0x22, 0x53, 0xed, 0xc7, 0x82, 0x05, 0x65, 0x0b, 0x7d,
660	0x2d, 0x95, 0xf8, 0x8d, 0xc6, 0x46, 0x07, 0xd7, 0xd5, 0xea, 0x26, 0xc8, 0x44, 0x5c, 0x36, 0x5c,
661	0x70, 0x5d, 0x2f, 0x6f, 0xca, 0x01, 0xd2, 0xc1, 0xb5, 0xfd, 0xbd, 0x19, 0x3f, 0x02, 0xaf, 0xac,
662	0x3c, 0x36, 0x6f, 0x25, 0x1d, 0xfc, 0xe5, 0x00, 0xec, 0x8b, 0x82, 0x42, 0x38, 0x63, 0x64, 0x87,
663	0x6d, 0x5c, 0xbc, 0x49, 0xb5, 0x24, 0x26, 0x7e, 0x4d, 0x37, 0x58, 0x52, 0x85, 0x35, 0x8d, 0x05,
664	0xdf, 0xd8, 0x9e, 0x75, 0xa2, 0xcf, 0x18, 0xd9, 0xad, 0x0a, 0x2a, 0x6c, 0xa0, 0x05, 0x55, 0x4b,
665	0x8b, 0xa0, 0x2f, 0xe0, 0xb4, 0x70, 0x59, 0xe7, 0x4a, 0x1b, 0xac, 0xd3, 0x77, 0xb4, 0x7b, 0xd4,
666	0x77, 0x86, 0x6e, 0xd4, 0x66, 0x64, 0x37, 0x2e, 0x0e, 0x97, 0xe9, 0x3b, 0x8a, 0xbe, 0x84, 0x8f,
667	0x0b, 0x2a, 0x16, 0x3c, 0xce, 0x95, 0xa2, 0xdc, 0x94, 0x61, 0x6d, 0xbb, 0xbb, 0x11, 0x62, 0x64,
668	0x77, 0xd1, 0x5c, 0xd9, 0x50, 0x83, 0xbf, 0x8f, 0xc0, 0x7b, 0xaf, 0xee, 0xe8, 0x19, 0x14, 0x8e,
669	0x98, 0x18, 0x43, 0x99, 0x34, 0xda, 0xa6, 0xe6, 0x4e, 0x5b, 0x91, 0xc7, 0xc8, 0x6e, 0x54, 0x1d,
670	0xa2, 0x00, 0x50, 0xce, 0x6d, 0x87, 0xd2, 0xcd, 0x1e, 0x2d, 0x12, 0x3a, 0x99, 0xb6, 0xa2, 0xc7,
671	0xcd, 0x5d, 0x23, 0xb8, 0x84, 0x22, 0x36, 0x2e, 0x1b, 0xb2, 0xfe, 0x02, 0x54, 0x43, 0xf8, 0xe4,
672	0x56, 0x27, 0x84, 0x15, 0x10, 0x75, 0x18, 0xd9, 0xd9, 0xe4, 0xea, 0x13, 0xf4, 0x12, 0x3c, 0x96,
673	0x72, 0xbc, 0x26, 0xf1, 0x1b, 0xb1, 0xdd, 0x56, 0x93, 0x76, 0xc0, 0x01, 0x58, 0xca, 0xc7, 0x25,
674	0x6c, 0xb5, 0xc5, 0x13, 0x56, 0x5a, 0xf7, 0x6e, 0x2d, 0xd9, 0xd5, 0xda, 0x67, 0xf0, 0xa8, 0xd0,
675	0x6e, 0x44, 0xbe, 0xce, 0x52, 0x9e, 0x68, 0x3b, 0x4e, 0xe5, 0xeb, 0x87, 0xf5, 0xd9, 0xf8, 0x14,
676	0xda, 0x3c, 0x67, 0xcd, 0x83, 0x8c, 0x05, 0x3c, 0x8d, 0x05, 0x3b, 0x30, 0x2c, 0x63, 0xb0, 0x8d,
677	0xb7, 0x28, 0x42, 0x2f, 0x9c, 0x5f, 0xbe, 0xaf, 0xc8, 0x44, 0x64, 0x84, 0x27, 0xbe, 0x50, 0x49,
678	0x90, 0x50, 0x6e, 0x13, 0x0b, 0xf6, 0x0d, 0xfb, 0x7f, 0xdf, 0xdc, 0x6f, 0xed, 0x6e, 0x7d, 0x6c,
679	0xd9, 0xaf, 0xfe, 0x0d, 0x00, 0x00, 0xff, 0xff, 0x1d, 0x9f, 0x09, 0xc2, 0xfd, 0x05, 0x00, 0x00,
680}
681