Skip to content

Commit d5f6ab4

Browse files
committed
With the BigQuery paginator updates
1 parent 99c1b75 commit d5f6ab4

File tree

4 files changed

+213
-7
lines changed

4 files changed

+213
-7
lines changed

.github/workflows/generator_dart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ jobs:
5757
# the inputs should be pinned, including the generator version and the
5858
# googleapis SHA.
5959
- name: Regenerate existing clients
60-
run: go run github.com/googleapis/librarian/cmd/[email protected].20250918140618-f7a7c8e2b04e refreshall -project-root dart
60+
run: go run github.com/googleapis/librarian/cmd/[email protected].20250918151329-de628ecd7aa3 refreshall -project-root dart
6161
- run: git diff --exit-code
6262

6363
validate-packages:

.github/workflows/sdk.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -504,7 +504,7 @@ jobs:
504504
sudo unzip -x /tmp/protoc.zip
505505
protoc --version
506506
- name: Regenerate all the code
507-
run: go run github.com/googleapis/librarian/cmd/[email protected].20250918140618-f7a7c8e2b04e refreshall
507+
run: go run github.com/googleapis/librarian/cmd/[email protected].20250918151329-de628ecd7aa3 refreshall
508508
- run: cargo fmt
509509
# If there is any difference between the generated code and the
510510
# committed code that is an error. All the inputs should be pinned,

src/generated/cloud/bigquery/v2/src/builder.rs

Lines changed: 141 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -558,9 +558,13 @@ pub mod dataset_service {
558558
/// # use google_cloud_bigquery_v2::builder;
559559
/// use builder::dataset_service::ListDatasets;
560560
/// # tokio_test::block_on(async {
561+
/// use gax::paginator::ItemPaginator;
561562
///
562563
/// let builder = prepare_request_builder();
563-
/// let response = builder.send().await?;
564+
/// let mut items = builder.by_item();
565+
/// while let Some(result) = items.next().await {
566+
/// let item = result?;
567+
/// }
564568
/// # gax::Result::<()>::Ok(()) });
565569
///
566570
/// fn prepare_request_builder() -> ListDatasets {
@@ -598,6 +602,29 @@ pub mod dataset_service {
598602
.map(gax::response::Response::into_body)
599603
}
600604

605+
/// Streams each page in the collection.
606+
pub fn by_page(
607+
self,
608+
) -> impl gax::paginator::Paginator<crate::model::DatasetList, gax::error::Error> {
609+
use std::clone::Clone;
610+
let token = self.0.request.page_token.clone();
611+
let execute = move |token: String| {
612+
let mut builder = self.clone();
613+
builder.0.request = builder.0.request.set_page_token(token);
614+
builder.send()
615+
};
616+
gax::paginator::internal::new_paginator(token, execute)
617+
}
618+
619+
/// Streams each item in the collection.
620+
pub fn by_item(
621+
self,
622+
) -> impl gax::paginator::ItemPaginator<crate::model::DatasetList, gax::error::Error>
623+
{
624+
use gax::paginator::Paginator;
625+
self.by_page().items()
626+
}
627+
601628
/// Sets the value of [project_id][crate::model::ListDatasetsRequest::project_id].
602629
///
603630
/// This is a **required** field for requests.
@@ -1114,9 +1141,13 @@ pub mod job_service {
11141141
/// # use google_cloud_bigquery_v2::builder;
11151142
/// use builder::job_service::ListJobs;
11161143
/// # tokio_test::block_on(async {
1144+
/// use gax::paginator::ItemPaginator;
11171145
///
11181146
/// let builder = prepare_request_builder();
1119-
/// let response = builder.send().await?;
1147+
/// let mut items = builder.by_item();
1148+
/// while let Some(result) = items.next().await {
1149+
/// let item = result?;
1150+
/// }
11201151
/// # gax::Result::<()>::Ok(()) });
11211152
///
11221153
/// fn prepare_request_builder() -> ListJobs {
@@ -1154,6 +1185,28 @@ pub mod job_service {
11541185
.map(gax::response::Response::into_body)
11551186
}
11561187

1188+
/// Streams each page in the collection.
1189+
pub fn by_page(
1190+
self,
1191+
) -> impl gax::paginator::Paginator<crate::model::JobList, gax::error::Error> {
1192+
use std::clone::Clone;
1193+
let token = self.0.request.page_token.clone();
1194+
let execute = move |token: String| {
1195+
let mut builder = self.clone();
1196+
builder.0.request = builder.0.request.set_page_token(token);
1197+
builder.send()
1198+
};
1199+
gax::paginator::internal::new_paginator(token, execute)
1200+
}
1201+
1202+
/// Streams each item in the collection.
1203+
pub fn by_item(
1204+
self,
1205+
) -> impl gax::paginator::ItemPaginator<crate::model::JobList, gax::error::Error> {
1206+
use gax::paginator::Paginator;
1207+
self.by_page().items()
1208+
}
1209+
11571210
/// Sets the value of [project_id][crate::model::ListJobsRequest::project_id].
11581211
pub fn set_project_id<T: Into<std::string::String>>(mut self, v: T) -> Self {
11591212
self.0.request.project_id = v.into();
@@ -1628,9 +1681,13 @@ pub mod model_service {
16281681
/// # use google_cloud_bigquery_v2::builder;
16291682
/// use builder::model_service::ListModels;
16301683
/// # tokio_test::block_on(async {
1684+
/// use gax::paginator::ItemPaginator;
16311685
///
16321686
/// let builder = prepare_request_builder();
1633-
/// let response = builder.send().await?;
1687+
/// let mut items = builder.by_item();
1688+
/// while let Some(result) = items.next().await {
1689+
/// let item = result?;
1690+
/// }
16341691
/// # gax::Result::<()>::Ok(()) });
16351692
///
16361693
/// fn prepare_request_builder() -> ListModels {
@@ -1668,6 +1725,30 @@ pub mod model_service {
16681725
.map(gax::response::Response::into_body)
16691726
}
16701727

1728+
/// Streams each page in the collection.
1729+
pub fn by_page(
1730+
self,
1731+
) -> impl gax::paginator::Paginator<crate::model::ListModelsResponse, gax::error::Error>
1732+
{
1733+
use std::clone::Clone;
1734+
let token = self.0.request.page_token.clone();
1735+
let execute = move |token: String| {
1736+
let mut builder = self.clone();
1737+
builder.0.request = builder.0.request.set_page_token(token);
1738+
builder.send()
1739+
};
1740+
gax::paginator::internal::new_paginator(token, execute)
1741+
}
1742+
1743+
/// Streams each item in the collection.
1744+
pub fn by_item(
1745+
self,
1746+
) -> impl gax::paginator::ItemPaginator<crate::model::ListModelsResponse, gax::error::Error>
1747+
{
1748+
use gax::paginator::Paginator;
1749+
self.by_page().items()
1750+
}
1751+
16711752
/// Sets the value of [project_id][crate::model::ListModelsRequest::project_id].
16721753
///
16731754
/// This is a **required** field for requests.
@@ -2437,9 +2518,13 @@ pub mod routine_service {
24372518
/// # use google_cloud_bigquery_v2::builder;
24382519
/// use builder::routine_service::ListRoutines;
24392520
/// # tokio_test::block_on(async {
2521+
/// use gax::paginator::ItemPaginator;
24402522
///
24412523
/// let builder = prepare_request_builder();
2442-
/// let response = builder.send().await?;
2524+
/// let mut items = builder.by_item();
2525+
/// while let Some(result) = items.next().await {
2526+
/// let item = result?;
2527+
/// }
24432528
/// # gax::Result::<()>::Ok(()) });
24442529
///
24452530
/// fn prepare_request_builder() -> ListRoutines {
@@ -2477,6 +2562,30 @@ pub mod routine_service {
24772562
.map(gax::response::Response::into_body)
24782563
}
24792564

2565+
/// Streams each page in the collection.
2566+
pub fn by_page(
2567+
self,
2568+
) -> impl gax::paginator::Paginator<crate::model::ListRoutinesResponse, gax::error::Error>
2569+
{
2570+
use std::clone::Clone;
2571+
let token = self.0.request.page_token.clone();
2572+
let execute = move |token: String| {
2573+
let mut builder = self.clone();
2574+
builder.0.request = builder.0.request.set_page_token(token);
2575+
builder.send()
2576+
};
2577+
gax::paginator::internal::new_paginator(token, execute)
2578+
}
2579+
2580+
/// Streams each item in the collection.
2581+
pub fn by_item(
2582+
self,
2583+
) -> impl gax::paginator::ItemPaginator<crate::model::ListRoutinesResponse, gax::error::Error>
2584+
{
2585+
use gax::paginator::Paginator;
2586+
self.by_page().items()
2587+
}
2588+
24802589
/// Sets the value of [project_id][crate::model::ListRoutinesRequest::project_id].
24812590
///
24822591
/// This is a **required** field for requests.
@@ -3793,9 +3902,13 @@ pub mod table_service {
37933902
/// # use google_cloud_bigquery_v2::builder;
37943903
/// use builder::table_service::ListTables;
37953904
/// # tokio_test::block_on(async {
3905+
/// use gax::paginator::ItemPaginator;
37963906
///
37973907
/// let builder = prepare_request_builder();
3798-
/// let response = builder.send().await?;
3908+
/// let mut items = builder.by_item();
3909+
/// while let Some(result) = items.next().await {
3910+
/// let item = result?;
3911+
/// }
37993912
/// # gax::Result::<()>::Ok(()) });
38003913
///
38013914
/// fn prepare_request_builder() -> ListTables {
@@ -3833,6 +3946,29 @@ pub mod table_service {
38333946
.map(gax::response::Response::into_body)
38343947
}
38353948

3949+
/// Streams each page in the collection.
3950+
pub fn by_page(
3951+
self,
3952+
) -> impl gax::paginator::Paginator<crate::model::TableList, gax::error::Error> {
3953+
use std::clone::Clone;
3954+
let token = self.0.request.page_token.clone();
3955+
let execute = move |token: String| {
3956+
let mut builder = self.clone();
3957+
builder.0.request = builder.0.request.set_page_token(token);
3958+
builder.send()
3959+
};
3960+
gax::paginator::internal::new_paginator(token, execute)
3961+
}
3962+
3963+
/// Streams each item in the collection.
3964+
pub fn by_item(
3965+
self,
3966+
) -> impl gax::paginator::ItemPaginator<crate::model::TableList, gax::error::Error>
3967+
{
3968+
use gax::paginator::Paginator;
3969+
self.by_page().items()
3970+
}
3971+
38363972
/// Sets the value of [project_id][crate::model::ListTablesRequest::project_id].
38373973
///
38383974
/// This is a **required** field for requests.

src/generated/cloud/bigquery/v2/src/model.rs

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2908,6 +2908,20 @@ impl wkt::message::Message for DatasetList {
29082908
}
29092909
}
29102910

2911+
#[doc(hidden)]
2912+
impl gax::paginator::internal::PageableResponse for DatasetList {
2913+
type PageItem = crate::model::ListFormatDataset;
2914+
2915+
fn items(self) -> std::vec::Vec<Self::PageItem> {
2916+
self.datasets
2917+
}
2918+
2919+
fn next_page_token(&self) -> std::string::String {
2920+
use std::clone::Clone;
2921+
self.next_page_token.clone()
2922+
}
2923+
}
2924+
29112925
/// Request format for undeleting a dataset.
29122926
#[derive(Clone, Default, PartialEq)]
29132927
#[non_exhaustive]
@@ -6331,6 +6345,20 @@ impl wkt::message::Message for JobList {
63316345
}
63326346
}
63336347

6348+
#[doc(hidden)]
6349+
impl gax::paginator::internal::PageableResponse for JobList {
6350+
type PageItem = crate::model::ListFormatJob;
6351+
6352+
fn items(self) -> std::vec::Vec<Self::PageItem> {
6353+
self.jobs
6354+
}
6355+
6356+
fn next_page_token(&self) -> std::string::String {
6357+
use std::clone::Clone;
6358+
self.next_page_token.clone()
6359+
}
6360+
}
6361+
63346362
/// Request object of GetQueryResults.
63356363
#[derive(Clone, Default, PartialEq)]
63366364
#[non_exhaustive]
@@ -28587,6 +28615,20 @@ impl wkt::message::Message for ListModelsResponse {
2858728615
}
2858828616
}
2858928617

28618+
#[doc(hidden)]
28619+
impl gax::paginator::internal::PageableResponse for ListModelsResponse {
28620+
type PageItem = crate::model::Model;
28621+
28622+
fn items(self) -> std::vec::Vec<Self::PageItem> {
28623+
self.models
28624+
}
28625+
28626+
fn next_page_token(&self) -> std::string::String {
28627+
use std::clone::Clone;
28628+
self.next_page_token.clone()
28629+
}
28630+
}
28631+
2859028632
/// Id path of a model.
2859128633
#[derive(Clone, Default, PartialEq)]
2859228634
#[non_exhaustive]
@@ -32380,6 +32422,20 @@ impl wkt::message::Message for ListRoutinesResponse {
3238032422
}
3238132423
}
3238232424

32425+
#[doc(hidden)]
32426+
impl gax::paginator::internal::PageableResponse for ListRoutinesResponse {
32427+
type PageItem = crate::model::Routine;
32428+
32429+
fn items(self) -> std::vec::Vec<Self::PageItem> {
32430+
self.routines
32431+
}
32432+
32433+
fn next_page_token(&self) -> std::string::String {
32434+
use std::clone::Clone;
32435+
self.next_page_token.clone()
32436+
}
32437+
}
32438+
3238332439
/// Id path of a routine.
3238432440
#[derive(Clone, Default, PartialEq)]
3238532441
#[non_exhaustive]
@@ -36405,6 +36461,20 @@ impl wkt::message::Message for TableList {
3640536461
}
3640636462
}
3640736463

36464+
#[doc(hidden)]
36465+
impl gax::paginator::internal::PageableResponse for TableList {
36466+
type PageItem = crate::model::ListFormatTable;
36467+
36468+
fn items(self) -> std::vec::Vec<Self::PageItem> {
36469+
self.tables
36470+
}
36471+
36472+
fn next_page_token(&self) -> std::string::String {
36473+
use std::clone::Clone;
36474+
self.next_page_token.clone()
36475+
}
36476+
}
36477+
3640836478
/// Represents the primary key constraint on a table's columns.
3640936479
#[derive(Clone, Default, PartialEq)]
3641036480
#[non_exhaustive]

0 commit comments

Comments
 (0)