@@ -107,6 +107,103 @@ func (r *ServicesPageAutoPager[T]) Index() int {
107
107
return r .run
108
108
}
109
109
110
+ type TasksPage [T any ] struct {
111
+ Tasks []T `json:"tasks"`
112
+ NextToken string `json:"nextToken"`
113
+ JSON tasksPageJSON `json:"-"`
114
+ cfg * requestconfig.RequestConfig
115
+ res * http.Response
116
+ }
117
+
118
+ // tasksPageJSON contains the JSON metadata for the struct [TasksPage[T]]
119
+ type tasksPageJSON struct {
120
+ Tasks apijson.Field
121
+ NextToken apijson.Field
122
+ raw string
123
+ ExtraFields map [string ]apijson.Field
124
+ }
125
+
126
+ func (r * TasksPage [T ]) UnmarshalJSON (data []byte ) (err error ) {
127
+ return apijson .UnmarshalRoot (data , r )
128
+ }
129
+
130
+ func (r tasksPageJSON ) RawJSON () string {
131
+ return r .raw
132
+ }
133
+
134
+ // GetNextPage returns the next page as defined by this pagination style. When
135
+ // there is no next page, this function will return a 'nil' for the page value, but
136
+ // will not return an error
137
+ func (r * TasksPage [T ]) GetNextPage () (res * TasksPage [T ], err error ) {
138
+ next := r .NextToken
139
+ if len (next ) == 0 {
140
+ return nil , nil
141
+ }
142
+ cfg := r .cfg .Clone (r .cfg .Context )
143
+ cfg .Apply (option .WithQuery ("token" , next ))
144
+ var raw * http.Response
145
+ cfg .ResponseInto = & raw
146
+ cfg .ResponseBodyInto = & res
147
+ err = cfg .Execute ()
148
+ if err != nil {
149
+ return nil , err
150
+ }
151
+ res .SetPageConfig (cfg , raw )
152
+ return res , nil
153
+ }
154
+
155
+ func (r * TasksPage [T ]) SetPageConfig (cfg * requestconfig.RequestConfig , res * http.Response ) {
156
+ if r == nil {
157
+ r = & TasksPage [T ]{}
158
+ }
159
+ r .cfg = cfg
160
+ r .res = res
161
+ }
162
+
163
+ type TasksPageAutoPager [T any ] struct {
164
+ page * TasksPage [T ]
165
+ cur T
166
+ idx int
167
+ run int
168
+ err error
169
+ }
170
+
171
+ func NewTasksPageAutoPager [T any ](page * TasksPage [T ], err error ) * TasksPageAutoPager [T ] {
172
+ return & TasksPageAutoPager [T ]{
173
+ page : page ,
174
+ err : err ,
175
+ }
176
+ }
177
+
178
+ func (r * TasksPageAutoPager [T ]) Next () bool {
179
+ if r .page == nil || len (r .page .Tasks ) == 0 {
180
+ return false
181
+ }
182
+ if r .idx >= len (r .page .Tasks ) {
183
+ r .idx = 0
184
+ r .page , r .err = r .page .GetNextPage ()
185
+ if r .err != nil || r .page == nil || len (r .page .Tasks ) == 0 {
186
+ return false
187
+ }
188
+ }
189
+ r .cur = r .page .Tasks [r .idx ]
190
+ r .run += 1
191
+ r .idx += 1
192
+ return true
193
+ }
194
+
195
+ func (r * TasksPageAutoPager [T ]) Current () T {
196
+ return r .cur
197
+ }
198
+
199
+ func (r * TasksPageAutoPager [T ]) Err () error {
200
+ return r .err
201
+ }
202
+
203
+ func (r * TasksPageAutoPager [T ]) Index () int {
204
+ return r .run
205
+ }
206
+
110
207
type TaskExecutionsPage [T any ] struct {
111
208
TaskExecutions []T `json:"taskExecutions"`
112
209
NextToken string `json:"nextToken"`
@@ -204,3 +301,101 @@ func (r *TaskExecutionsPageAutoPager[T]) Err() error {
204
301
func (r * TaskExecutionsPageAutoPager [T ]) Index () int {
205
302
return r .run
206
303
}
304
+
305
+ type EnvironnmentClassesPage [T any ] struct {
306
+ EnvironmentClasses []T `json:"environmentClasses"`
307
+ NextToken string `json:"nextToken"`
308
+ JSON environnmentClassesPageJSON `json:"-"`
309
+ cfg * requestconfig.RequestConfig
310
+ res * http.Response
311
+ }
312
+
313
+ // environnmentClassesPageJSON contains the JSON metadata for the struct
314
+ // [EnvironnmentClassesPage[T]]
315
+ type environnmentClassesPageJSON struct {
316
+ EnvironmentClasses apijson.Field
317
+ NextToken apijson.Field
318
+ raw string
319
+ ExtraFields map [string ]apijson.Field
320
+ }
321
+
322
+ func (r * EnvironnmentClassesPage [T ]) UnmarshalJSON (data []byte ) (err error ) {
323
+ return apijson .UnmarshalRoot (data , r )
324
+ }
325
+
326
+ func (r environnmentClassesPageJSON ) RawJSON () string {
327
+ return r .raw
328
+ }
329
+
330
+ // GetNextPage returns the next page as defined by this pagination style. When
331
+ // there is no next page, this function will return a 'nil' for the page value, but
332
+ // will not return an error
333
+ func (r * EnvironnmentClassesPage [T ]) GetNextPage () (res * EnvironnmentClassesPage [T ], err error ) {
334
+ next := r .NextToken
335
+ if len (next ) == 0 {
336
+ return nil , nil
337
+ }
338
+ cfg := r .cfg .Clone (r .cfg .Context )
339
+ cfg .Apply (option .WithQuery ("token" , next ))
340
+ var raw * http.Response
341
+ cfg .ResponseInto = & raw
342
+ cfg .ResponseBodyInto = & res
343
+ err = cfg .Execute ()
344
+ if err != nil {
345
+ return nil , err
346
+ }
347
+ res .SetPageConfig (cfg , raw )
348
+ return res , nil
349
+ }
350
+
351
+ func (r * EnvironnmentClassesPage [T ]) SetPageConfig (cfg * requestconfig.RequestConfig , res * http.Response ) {
352
+ if r == nil {
353
+ r = & EnvironnmentClassesPage [T ]{}
354
+ }
355
+ r .cfg = cfg
356
+ r .res = res
357
+ }
358
+
359
+ type EnvironnmentClassesPageAutoPager [T any ] struct {
360
+ page * EnvironnmentClassesPage [T ]
361
+ cur T
362
+ idx int
363
+ run int
364
+ err error
365
+ }
366
+
367
+ func NewEnvironnmentClassesPageAutoPager [T any ](page * EnvironnmentClassesPage [T ], err error ) * EnvironnmentClassesPageAutoPager [T ] {
368
+ return & EnvironnmentClassesPageAutoPager [T ]{
369
+ page : page ,
370
+ err : err ,
371
+ }
372
+ }
373
+
374
+ func (r * EnvironnmentClassesPageAutoPager [T ]) Next () bool {
375
+ if r .page == nil || len (r .page .EnvironmentClasses ) == 0 {
376
+ return false
377
+ }
378
+ if r .idx >= len (r .page .EnvironmentClasses ) {
379
+ r .idx = 0
380
+ r .page , r .err = r .page .GetNextPage ()
381
+ if r .err != nil || r .page == nil || len (r .page .EnvironmentClasses ) == 0 {
382
+ return false
383
+ }
384
+ }
385
+ r .cur = r .page .EnvironmentClasses [r .idx ]
386
+ r .run += 1
387
+ r .idx += 1
388
+ return true
389
+ }
390
+
391
+ func (r * EnvironnmentClassesPageAutoPager [T ]) Current () T {
392
+ return r .cur
393
+ }
394
+
395
+ func (r * EnvironnmentClassesPageAutoPager [T ]) Err () error {
396
+ return r .err
397
+ }
398
+
399
+ func (r * EnvironnmentClassesPageAutoPager [T ]) Index () int {
400
+ return r .run
401
+ }
0 commit comments