1#![allow(rustdoc::redundant_explicit_links)]
18#![allow(rustdoc::broken_intra_doc_links)]
19#![no_implicit_prelude]
20extern crate async_trait;
21extern crate bytes;
22extern crate gax;
23extern crate lazy_static;
24extern crate location;
25extern crate longrunning;
26extern crate lro;
27extern crate reqwest;
28extern crate serde;
29extern crate serde_json;
30extern crate serde_with;
31extern crate std;
32extern crate tracing;
33extern crate wkt;
34
35#[serde_with::serde_as]
37#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
38#[serde(default, rename_all = "camelCase")]
39#[non_exhaustive]
40pub struct Connection {
41 #[serde(skip_serializing_if = "std::string::String::is_empty")]
44 pub name: std::string::String,
45
46 #[serde(skip_serializing_if = "std::option::Option::is_none")]
48 pub create_time: std::option::Option<wkt::Timestamp>,
49
50 #[serde(skip_serializing_if = "std::option::Option::is_none")]
52 pub update_time: std::option::Option<wkt::Timestamp>,
53
54 #[serde(skip_serializing_if = "std::option::Option::is_none")]
56 pub delete_time: std::option::Option<wkt::Timestamp>,
57
58 #[serde(skip_serializing_if = "std::collections::HashMap::is_empty")]
60 pub labels: std::collections::HashMap<std::string::String, std::string::String>,
61
62 #[serde(skip_serializing_if = "std::option::Option::is_none")]
64 pub installation_state: std::option::Option<crate::model::InstallationState>,
65
66 pub disabled: bool,
70
71 pub reconciling: bool,
74
75 #[serde(skip_serializing_if = "std::collections::HashMap::is_empty")]
77 pub annotations: std::collections::HashMap<std::string::String, std::string::String>,
78
79 #[serde(skip_serializing_if = "std::string::String::is_empty")]
83 pub etag: std::string::String,
84
85 #[serde(skip_serializing_if = "std::string::String::is_empty")]
88 pub uid: std::string::String,
89
90 #[serde(skip_serializing_if = "std::option::Option::is_none")]
93 pub crypto_key_config: std::option::Option<crate::model::CryptoKeyConfig>,
94
95 #[serde(flatten, skip_serializing_if = "std::option::Option::is_none")]
97 pub connection_config: std::option::Option<crate::model::connection::ConnectionConfig>,
98}
99
100impl Connection {
101 pub fn new() -> Self {
102 std::default::Default::default()
103 }
104
105 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
107 self.name = v.into();
108 self
109 }
110
111 pub fn set_create_time<T: std::convert::Into<std::option::Option<wkt::Timestamp>>>(
113 mut self,
114 v: T,
115 ) -> Self {
116 self.create_time = v.into();
117 self
118 }
119
120 pub fn set_update_time<T: std::convert::Into<std::option::Option<wkt::Timestamp>>>(
122 mut self,
123 v: T,
124 ) -> Self {
125 self.update_time = v.into();
126 self
127 }
128
129 pub fn set_delete_time<T: std::convert::Into<std::option::Option<wkt::Timestamp>>>(
131 mut self,
132 v: T,
133 ) -> Self {
134 self.delete_time = v.into();
135 self
136 }
137
138 pub fn set_installation_state<
140 T: std::convert::Into<std::option::Option<crate::model::InstallationState>>,
141 >(
142 mut self,
143 v: T,
144 ) -> Self {
145 self.installation_state = v.into();
146 self
147 }
148
149 pub fn set_disabled<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
151 self.disabled = v.into();
152 self
153 }
154
155 pub fn set_reconciling<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
157 self.reconciling = v.into();
158 self
159 }
160
161 pub fn set_etag<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
163 self.etag = v.into();
164 self
165 }
166
167 pub fn set_uid<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
169 self.uid = v.into();
170 self
171 }
172
173 pub fn set_crypto_key_config<
175 T: std::convert::Into<std::option::Option<crate::model::CryptoKeyConfig>>,
176 >(
177 mut self,
178 v: T,
179 ) -> Self {
180 self.crypto_key_config = v.into();
181 self
182 }
183
184 pub fn set_labels<T, K, V>(mut self, v: T) -> Self
186 where
187 T: std::iter::IntoIterator<Item = (K, V)>,
188 K: std::convert::Into<std::string::String>,
189 V: std::convert::Into<std::string::String>,
190 {
191 use std::iter::Iterator;
192 self.labels = v.into_iter().map(|(k, v)| (k.into(), v.into())).collect();
193 self
194 }
195
196 pub fn set_annotations<T, K, V>(mut self, v: T) -> Self
198 where
199 T: std::iter::IntoIterator<Item = (K, V)>,
200 K: std::convert::Into<std::string::String>,
201 V: std::convert::Into<std::string::String>,
202 {
203 use std::iter::Iterator;
204 self.annotations = v.into_iter().map(|(k, v)| (k.into(), v.into())).collect();
205 self
206 }
207
208 pub fn set_connection_config<
210 T: std::convert::Into<std::option::Option<crate::model::connection::ConnectionConfig>>,
211 >(
212 mut self,
213 v: T,
214 ) -> Self {
215 self.connection_config = v.into();
216 self
217 }
218
219 pub fn get_github_config(
223 &self,
224 ) -> std::option::Option<&std::boxed::Box<crate::model::GitHubConfig>> {
225 #[allow(unreachable_patterns)]
226 self.connection_config.as_ref().and_then(|v| match v {
227 crate::model::connection::ConnectionConfig::GithubConfig(v) => {
228 std::option::Option::Some(v)
229 }
230 _ => std::option::Option::None,
231 })
232 }
233
234 pub fn get_github_enterprise_config(
238 &self,
239 ) -> std::option::Option<&std::boxed::Box<crate::model::GitHubEnterpriseConfig>> {
240 #[allow(unreachable_patterns)]
241 self.connection_config.as_ref().and_then(|v| match v {
242 crate::model::connection::ConnectionConfig::GithubEnterpriseConfig(v) => {
243 std::option::Option::Some(v)
244 }
245 _ => std::option::Option::None,
246 })
247 }
248
249 pub fn get_gitlab_config(
253 &self,
254 ) -> std::option::Option<&std::boxed::Box<crate::model::GitLabConfig>> {
255 #[allow(unreachable_patterns)]
256 self.connection_config.as_ref().and_then(|v| match v {
257 crate::model::connection::ConnectionConfig::GitlabConfig(v) => {
258 std::option::Option::Some(v)
259 }
260 _ => std::option::Option::None,
261 })
262 }
263
264 pub fn get_gitlab_enterprise_config(
268 &self,
269 ) -> std::option::Option<&std::boxed::Box<crate::model::GitLabEnterpriseConfig>> {
270 #[allow(unreachable_patterns)]
271 self.connection_config.as_ref().and_then(|v| match v {
272 crate::model::connection::ConnectionConfig::GitlabEnterpriseConfig(v) => {
273 std::option::Option::Some(v)
274 }
275 _ => std::option::Option::None,
276 })
277 }
278
279 pub fn set_github_config<T: std::convert::Into<std::boxed::Box<crate::model::GitHubConfig>>>(
285 mut self,
286 v: T,
287 ) -> Self {
288 self.connection_config = std::option::Option::Some(
289 crate::model::connection::ConnectionConfig::GithubConfig(v.into()),
290 );
291 self
292 }
293
294 pub fn set_github_enterprise_config<
300 T: std::convert::Into<std::boxed::Box<crate::model::GitHubEnterpriseConfig>>,
301 >(
302 mut self,
303 v: T,
304 ) -> Self {
305 self.connection_config = std::option::Option::Some(
306 crate::model::connection::ConnectionConfig::GithubEnterpriseConfig(v.into()),
307 );
308 self
309 }
310
311 pub fn set_gitlab_config<T: std::convert::Into<std::boxed::Box<crate::model::GitLabConfig>>>(
317 mut self,
318 v: T,
319 ) -> Self {
320 self.connection_config = std::option::Option::Some(
321 crate::model::connection::ConnectionConfig::GitlabConfig(v.into()),
322 );
323 self
324 }
325
326 pub fn set_gitlab_enterprise_config<
332 T: std::convert::Into<std::boxed::Box<crate::model::GitLabEnterpriseConfig>>,
333 >(
334 mut self,
335 v: T,
336 ) -> Self {
337 self.connection_config = std::option::Option::Some(
338 crate::model::connection::ConnectionConfig::GitlabEnterpriseConfig(v.into()),
339 );
340 self
341 }
342}
343
344impl wkt::message::Message for Connection {
345 fn typename() -> &'static str {
346 "type.googleapis.com/google.cloud.developerconnect.v1.Connection"
347 }
348}
349
350pub mod connection {
352 #[allow(unused_imports)]
353 use super::*;
354
355 #[derive(Clone, Debug, PartialEq, serde::Deserialize, serde::Serialize)]
357 #[serde(rename_all = "camelCase")]
358 #[non_exhaustive]
359 pub enum ConnectionConfig {
360 GithubConfig(std::boxed::Box<crate::model::GitHubConfig>),
362 GithubEnterpriseConfig(std::boxed::Box<crate::model::GitHubEnterpriseConfig>),
364 GitlabConfig(std::boxed::Box<crate::model::GitLabConfig>),
366 GitlabEnterpriseConfig(std::boxed::Box<crate::model::GitLabEnterpriseConfig>),
368 }
369}
370
371#[serde_with::serde_as]
374#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
375#[serde(default, rename_all = "camelCase")]
376#[non_exhaustive]
377pub struct CryptoKeyConfig {
378 #[serde(skip_serializing_if = "std::string::String::is_empty")]
382 pub key_reference: std::string::String,
383}
384
385impl CryptoKeyConfig {
386 pub fn new() -> Self {
387 std::default::Default::default()
388 }
389
390 pub fn set_key_reference<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
392 self.key_reference = v.into();
393 self
394 }
395}
396
397impl wkt::message::Message for CryptoKeyConfig {
398 fn typename() -> &'static str {
399 "type.googleapis.com/google.cloud.developerconnect.v1.CryptoKeyConfig"
400 }
401}
402
403#[serde_with::serde_as]
407#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
408#[serde(default, rename_all = "camelCase")]
409#[non_exhaustive]
410pub struct InstallationState {
411 pub stage: crate::model::installation_state::Stage,
413
414 #[serde(skip_serializing_if = "std::string::String::is_empty")]
417 pub message: std::string::String,
418
419 #[serde(skip_serializing_if = "std::string::String::is_empty")]
422 pub action_uri: std::string::String,
423}
424
425impl InstallationState {
426 pub fn new() -> Self {
427 std::default::Default::default()
428 }
429
430 pub fn set_stage<T: std::convert::Into<crate::model::installation_state::Stage>>(
432 mut self,
433 v: T,
434 ) -> Self {
435 self.stage = v.into();
436 self
437 }
438
439 pub fn set_message<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
441 self.message = v.into();
442 self
443 }
444
445 pub fn set_action_uri<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
447 self.action_uri = v.into();
448 self
449 }
450}
451
452impl wkt::message::Message for InstallationState {
453 fn typename() -> &'static str {
454 "type.googleapis.com/google.cloud.developerconnect.v1.InstallationState"
455 }
456}
457
458pub mod installation_state {
460 #[allow(unused_imports)]
461 use super::*;
462
463 #[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
465 pub struct Stage(std::borrow::Cow<'static, str>);
466
467 impl Stage {
468 pub const fn new(v: &'static str) -> Self {
470 Self(std::borrow::Cow::Borrowed(v))
471 }
472
473 pub fn value(&self) -> &str {
475 &self.0
476 }
477 }
478
479 pub mod stage {
481 use super::Stage;
482
483 pub const STAGE_UNSPECIFIED: Stage = Stage::new("STAGE_UNSPECIFIED");
485
486 pub const PENDING_CREATE_APP: Stage = Stage::new("PENDING_CREATE_APP");
489
490 pub const PENDING_USER_OAUTH: Stage = Stage::new("PENDING_USER_OAUTH");
492
493 pub const PENDING_INSTALL_APP: Stage = Stage::new("PENDING_INSTALL_APP");
495
496 pub const COMPLETE: Stage = Stage::new("COMPLETE");
498 }
499
500 impl std::convert::From<std::string::String> for Stage {
501 fn from(value: std::string::String) -> Self {
502 Self(std::borrow::Cow::Owned(value))
503 }
504 }
505}
506
507#[serde_with::serde_as]
509#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
510#[serde(default, rename_all = "camelCase")]
511#[non_exhaustive]
512pub struct GitHubConfig {
513 pub github_app: crate::model::git_hub_config::GitHubApp,
516
517 #[serde(skip_serializing_if = "std::option::Option::is_none")]
521 pub authorizer_credential: std::option::Option<crate::model::OAuthCredential>,
522
523 #[serde_as(as = "serde_with::DisplayFromStr")]
525 pub app_installation_id: i64,
526
527 #[serde(skip_serializing_if = "std::string::String::is_empty")]
530 pub installation_uri: std::string::String,
531}
532
533impl GitHubConfig {
534 pub fn new() -> Self {
535 std::default::Default::default()
536 }
537
538 pub fn set_github_app<T: std::convert::Into<crate::model::git_hub_config::GitHubApp>>(
540 mut self,
541 v: T,
542 ) -> Self {
543 self.github_app = v.into();
544 self
545 }
546
547 pub fn set_authorizer_credential<
549 T: std::convert::Into<std::option::Option<crate::model::OAuthCredential>>,
550 >(
551 mut self,
552 v: T,
553 ) -> Self {
554 self.authorizer_credential = v.into();
555 self
556 }
557
558 pub fn set_app_installation_id<T: std::convert::Into<i64>>(mut self, v: T) -> Self {
560 self.app_installation_id = v.into();
561 self
562 }
563
564 pub fn set_installation_uri<T: std::convert::Into<std::string::String>>(
566 mut self,
567 v: T,
568 ) -> Self {
569 self.installation_uri = v.into();
570 self
571 }
572}
573
574impl wkt::message::Message for GitHubConfig {
575 fn typename() -> &'static str {
576 "type.googleapis.com/google.cloud.developerconnect.v1.GitHubConfig"
577 }
578}
579
580pub mod git_hub_config {
582 #[allow(unused_imports)]
583 use super::*;
584
585 #[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
588 pub struct GitHubApp(std::borrow::Cow<'static, str>);
589
590 impl GitHubApp {
591 pub const fn new(v: &'static str) -> Self {
593 Self(std::borrow::Cow::Borrowed(v))
594 }
595
596 pub fn value(&self) -> &str {
598 &self.0
599 }
600 }
601
602 pub mod git_hub_app {
604 use super::GitHubApp;
605
606 pub const GIT_HUB_APP_UNSPECIFIED: GitHubApp = GitHubApp::new("GIT_HUB_APP_UNSPECIFIED");
608
609 pub const DEVELOPER_CONNECT: GitHubApp = GitHubApp::new("DEVELOPER_CONNECT");
611
612 pub const FIREBASE: GitHubApp = GitHubApp::new("FIREBASE");
614 }
615
616 impl std::convert::From<std::string::String> for GitHubApp {
617 fn from(value: std::string::String) -> Self {
618 Self(std::borrow::Cow::Owned(value))
619 }
620 }
621}
622
623#[serde_with::serde_as]
625#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
626#[serde(default, rename_all = "camelCase")]
627#[non_exhaustive]
628pub struct GitHubEnterpriseConfig {
629 #[serde(skip_serializing_if = "std::string::String::is_empty")]
631 pub host_uri: std::string::String,
632
633 #[serde_as(as = "serde_with::DisplayFromStr")]
635 pub app_id: i64,
636
637 #[serde(skip_serializing_if = "std::string::String::is_empty")]
639 pub app_slug: std::string::String,
640
641 #[serde(skip_serializing_if = "std::string::String::is_empty")]
644 pub private_key_secret_version: std::string::String,
645
646 #[serde(skip_serializing_if = "std::string::String::is_empty")]
649 pub webhook_secret_secret_version: std::string::String,
650
651 #[serde_as(as = "serde_with::DisplayFromStr")]
653 pub app_installation_id: i64,
654
655 #[serde(skip_serializing_if = "std::string::String::is_empty")]
658 pub installation_uri: std::string::String,
659
660 #[serde(skip_serializing_if = "std::option::Option::is_none")]
666 pub service_directory_config: std::option::Option<crate::model::ServiceDirectoryConfig>,
667
668 #[serde(skip_serializing_if = "std::string::String::is_empty")]
670 pub server_version: std::string::String,
671
672 #[serde(skip_serializing_if = "std::string::String::is_empty")]
674 pub ssl_ca_certificate: std::string::String,
675}
676
677impl GitHubEnterpriseConfig {
678 pub fn new() -> Self {
679 std::default::Default::default()
680 }
681
682 pub fn set_host_uri<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
684 self.host_uri = v.into();
685 self
686 }
687
688 pub fn set_app_id<T: std::convert::Into<i64>>(mut self, v: T) -> Self {
690 self.app_id = v.into();
691 self
692 }
693
694 pub fn set_app_slug<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
696 self.app_slug = v.into();
697 self
698 }
699
700 pub fn set_private_key_secret_version<T: std::convert::Into<std::string::String>>(
702 mut self,
703 v: T,
704 ) -> Self {
705 self.private_key_secret_version = v.into();
706 self
707 }
708
709 pub fn set_webhook_secret_secret_version<T: std::convert::Into<std::string::String>>(
711 mut self,
712 v: T,
713 ) -> Self {
714 self.webhook_secret_secret_version = v.into();
715 self
716 }
717
718 pub fn set_app_installation_id<T: std::convert::Into<i64>>(mut self, v: T) -> Self {
720 self.app_installation_id = v.into();
721 self
722 }
723
724 pub fn set_installation_uri<T: std::convert::Into<std::string::String>>(
726 mut self,
727 v: T,
728 ) -> Self {
729 self.installation_uri = v.into();
730 self
731 }
732
733 pub fn set_service_directory_config<
735 T: std::convert::Into<std::option::Option<crate::model::ServiceDirectoryConfig>>,
736 >(
737 mut self,
738 v: T,
739 ) -> Self {
740 self.service_directory_config = v.into();
741 self
742 }
743
744 pub fn set_server_version<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
746 self.server_version = v.into();
747 self
748 }
749
750 pub fn set_ssl_ca_certificate<T: std::convert::Into<std::string::String>>(
752 mut self,
753 v: T,
754 ) -> Self {
755 self.ssl_ca_certificate = v.into();
756 self
757 }
758}
759
760impl wkt::message::Message for GitHubEnterpriseConfig {
761 fn typename() -> &'static str {
762 "type.googleapis.com/google.cloud.developerconnect.v1.GitHubEnterpriseConfig"
763 }
764}
765
766#[serde_with::serde_as]
769#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
770#[serde(default, rename_all = "camelCase")]
771#[non_exhaustive]
772pub struct ServiceDirectoryConfig {
773 #[serde(skip_serializing_if = "std::string::String::is_empty")]
777 pub service: std::string::String,
778}
779
780impl ServiceDirectoryConfig {
781 pub fn new() -> Self {
782 std::default::Default::default()
783 }
784
785 pub fn set_service<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
787 self.service = v.into();
788 self
789 }
790}
791
792impl wkt::message::Message for ServiceDirectoryConfig {
793 fn typename() -> &'static str {
794 "type.googleapis.com/google.cloud.developerconnect.v1.ServiceDirectoryConfig"
795 }
796}
797
798#[serde_with::serde_as]
801#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
802#[serde(default, rename_all = "camelCase")]
803#[non_exhaustive]
804pub struct OAuthCredential {
805 #[serde(skip_serializing_if = "std::string::String::is_empty")]
808 pub oauth_token_secret_version: std::string::String,
809
810 #[serde(skip_serializing_if = "std::string::String::is_empty")]
812 pub username: std::string::String,
813}
814
815impl OAuthCredential {
816 pub fn new() -> Self {
817 std::default::Default::default()
818 }
819
820 pub fn set_oauth_token_secret_version<T: std::convert::Into<std::string::String>>(
822 mut self,
823 v: T,
824 ) -> Self {
825 self.oauth_token_secret_version = v.into();
826 self
827 }
828
829 pub fn set_username<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
831 self.username = v.into();
832 self
833 }
834}
835
836impl wkt::message::Message for OAuthCredential {
837 fn typename() -> &'static str {
838 "type.googleapis.com/google.cloud.developerconnect.v1.OAuthCredential"
839 }
840}
841
842#[serde_with::serde_as]
844#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
845#[serde(default, rename_all = "camelCase")]
846#[non_exhaustive]
847pub struct GitLabConfig {
848 #[serde(skip_serializing_if = "std::string::String::is_empty")]
852 pub webhook_secret_secret_version: std::string::String,
853
854 #[serde(skip_serializing_if = "std::option::Option::is_none")]
859 pub read_authorizer_credential: std::option::Option<crate::model::UserCredential>,
860
861 #[serde(skip_serializing_if = "std::option::Option::is_none")]
866 pub authorizer_credential: std::option::Option<crate::model::UserCredential>,
867}
868
869impl GitLabConfig {
870 pub fn new() -> Self {
871 std::default::Default::default()
872 }
873
874 pub fn set_webhook_secret_secret_version<T: std::convert::Into<std::string::String>>(
876 mut self,
877 v: T,
878 ) -> Self {
879 self.webhook_secret_secret_version = v.into();
880 self
881 }
882
883 pub fn set_read_authorizer_credential<
885 T: std::convert::Into<std::option::Option<crate::model::UserCredential>>,
886 >(
887 mut self,
888 v: T,
889 ) -> Self {
890 self.read_authorizer_credential = v.into();
891 self
892 }
893
894 pub fn set_authorizer_credential<
896 T: std::convert::Into<std::option::Option<crate::model::UserCredential>>,
897 >(
898 mut self,
899 v: T,
900 ) -> Self {
901 self.authorizer_credential = v.into();
902 self
903 }
904}
905
906impl wkt::message::Message for GitLabConfig {
907 fn typename() -> &'static str {
908 "type.googleapis.com/google.cloud.developerconnect.v1.GitLabConfig"
909 }
910}
911
912#[serde_with::serde_as]
915#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
916#[serde(default, rename_all = "camelCase")]
917#[non_exhaustive]
918pub struct UserCredential {
919 #[serde(skip_serializing_if = "std::string::String::is_empty")]
923 pub user_token_secret_version: std::string::String,
924
925 #[serde(skip_serializing_if = "std::string::String::is_empty")]
927 pub username: std::string::String,
928}
929
930impl UserCredential {
931 pub fn new() -> Self {
932 std::default::Default::default()
933 }
934
935 pub fn set_user_token_secret_version<T: std::convert::Into<std::string::String>>(
937 mut self,
938 v: T,
939 ) -> Self {
940 self.user_token_secret_version = v.into();
941 self
942 }
943
944 pub fn set_username<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
946 self.username = v.into();
947 self
948 }
949}
950
951impl wkt::message::Message for UserCredential {
952 fn typename() -> &'static str {
953 "type.googleapis.com/google.cloud.developerconnect.v1.UserCredential"
954 }
955}
956
957#[serde_with::serde_as]
959#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
960#[serde(default, rename_all = "camelCase")]
961#[non_exhaustive]
962pub struct GitLabEnterpriseConfig {
963 #[serde(skip_serializing_if = "std::string::String::is_empty")]
965 pub host_uri: std::string::String,
966
967 #[serde(skip_serializing_if = "std::string::String::is_empty")]
971 pub webhook_secret_secret_version: std::string::String,
972
973 #[serde(skip_serializing_if = "std::option::Option::is_none")]
978 pub read_authorizer_credential: std::option::Option<crate::model::UserCredential>,
979
980 #[serde(skip_serializing_if = "std::option::Option::is_none")]
985 pub authorizer_credential: std::option::Option<crate::model::UserCredential>,
986
987 #[serde(skip_serializing_if = "std::option::Option::is_none")]
993 pub service_directory_config: std::option::Option<crate::model::ServiceDirectoryConfig>,
994
995 #[serde(skip_serializing_if = "std::string::String::is_empty")]
998 pub ssl_ca_certificate: std::string::String,
999
1000 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1003 pub server_version: std::string::String,
1004}
1005
1006impl GitLabEnterpriseConfig {
1007 pub fn new() -> Self {
1008 std::default::Default::default()
1009 }
1010
1011 pub fn set_host_uri<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1013 self.host_uri = v.into();
1014 self
1015 }
1016
1017 pub fn set_webhook_secret_secret_version<T: std::convert::Into<std::string::String>>(
1019 mut self,
1020 v: T,
1021 ) -> Self {
1022 self.webhook_secret_secret_version = v.into();
1023 self
1024 }
1025
1026 pub fn set_read_authorizer_credential<
1028 T: std::convert::Into<std::option::Option<crate::model::UserCredential>>,
1029 >(
1030 mut self,
1031 v: T,
1032 ) -> Self {
1033 self.read_authorizer_credential = v.into();
1034 self
1035 }
1036
1037 pub fn set_authorizer_credential<
1039 T: std::convert::Into<std::option::Option<crate::model::UserCredential>>,
1040 >(
1041 mut self,
1042 v: T,
1043 ) -> Self {
1044 self.authorizer_credential = v.into();
1045 self
1046 }
1047
1048 pub fn set_service_directory_config<
1050 T: std::convert::Into<std::option::Option<crate::model::ServiceDirectoryConfig>>,
1051 >(
1052 mut self,
1053 v: T,
1054 ) -> Self {
1055 self.service_directory_config = v.into();
1056 self
1057 }
1058
1059 pub fn set_ssl_ca_certificate<T: std::convert::Into<std::string::String>>(
1061 mut self,
1062 v: T,
1063 ) -> Self {
1064 self.ssl_ca_certificate = v.into();
1065 self
1066 }
1067
1068 pub fn set_server_version<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1070 self.server_version = v.into();
1071 self
1072 }
1073}
1074
1075impl wkt::message::Message for GitLabEnterpriseConfig {
1076 fn typename() -> &'static str {
1077 "type.googleapis.com/google.cloud.developerconnect.v1.GitLabEnterpriseConfig"
1078 }
1079}
1080
1081#[serde_with::serde_as]
1083#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1084#[serde(default, rename_all = "camelCase")]
1085#[non_exhaustive]
1086pub struct ListConnectionsRequest {
1087 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1089 pub parent: std::string::String,
1090
1091 pub page_size: i32,
1094
1095 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1097 pub page_token: std::string::String,
1098
1099 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1101 pub filter: std::string::String,
1102
1103 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1105 pub order_by: std::string::String,
1106}
1107
1108impl ListConnectionsRequest {
1109 pub fn new() -> Self {
1110 std::default::Default::default()
1111 }
1112
1113 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1115 self.parent = v.into();
1116 self
1117 }
1118
1119 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
1121 self.page_size = v.into();
1122 self
1123 }
1124
1125 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1127 self.page_token = v.into();
1128 self
1129 }
1130
1131 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1133 self.filter = v.into();
1134 self
1135 }
1136
1137 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1139 self.order_by = v.into();
1140 self
1141 }
1142}
1143
1144impl wkt::message::Message for ListConnectionsRequest {
1145 fn typename() -> &'static str {
1146 "type.googleapis.com/google.cloud.developerconnect.v1.ListConnectionsRequest"
1147 }
1148}
1149
1150#[serde_with::serde_as]
1152#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1153#[serde(default, rename_all = "camelCase")]
1154#[non_exhaustive]
1155pub struct ListConnectionsResponse {
1156 #[serde(skip_serializing_if = "std::vec::Vec::is_empty")]
1158 pub connections: std::vec::Vec<crate::model::Connection>,
1159
1160 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1162 pub next_page_token: std::string::String,
1163
1164 #[serde(skip_serializing_if = "std::vec::Vec::is_empty")]
1166 pub unreachable: std::vec::Vec<std::string::String>,
1167}
1168
1169impl ListConnectionsResponse {
1170 pub fn new() -> Self {
1171 std::default::Default::default()
1172 }
1173
1174 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1176 self.next_page_token = v.into();
1177 self
1178 }
1179
1180 pub fn set_connections<T, V>(mut self, v: T) -> Self
1182 where
1183 T: std::iter::IntoIterator<Item = V>,
1184 V: std::convert::Into<crate::model::Connection>,
1185 {
1186 use std::iter::Iterator;
1187 self.connections = v.into_iter().map(|i| i.into()).collect();
1188 self
1189 }
1190
1191 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
1193 where
1194 T: std::iter::IntoIterator<Item = V>,
1195 V: std::convert::Into<std::string::String>,
1196 {
1197 use std::iter::Iterator;
1198 self.unreachable = v.into_iter().map(|i| i.into()).collect();
1199 self
1200 }
1201}
1202
1203impl wkt::message::Message for ListConnectionsResponse {
1204 fn typename() -> &'static str {
1205 "type.googleapis.com/google.cloud.developerconnect.v1.ListConnectionsResponse"
1206 }
1207}
1208
1209#[cfg(feature = "unstable-stream")]
1210impl gax::paginator::PageableResponse for ListConnectionsResponse {
1211 type PageItem = crate::model::Connection;
1212
1213 fn items(self) -> std::vec::Vec<Self::PageItem> {
1214 self.connections
1215 }
1216
1217 fn next_page_token(&self) -> std::string::String {
1218 gax::paginator::extract_token(&self.next_page_token)
1219 }
1220}
1221
1222#[serde_with::serde_as]
1224#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1225#[serde(default, rename_all = "camelCase")]
1226#[non_exhaustive]
1227pub struct GetConnectionRequest {
1228 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1230 pub name: std::string::String,
1231}
1232
1233impl GetConnectionRequest {
1234 pub fn new() -> Self {
1235 std::default::Default::default()
1236 }
1237
1238 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1240 self.name = v.into();
1241 self
1242 }
1243}
1244
1245impl wkt::message::Message for GetConnectionRequest {
1246 fn typename() -> &'static str {
1247 "type.googleapis.com/google.cloud.developerconnect.v1.GetConnectionRequest"
1248 }
1249}
1250
1251#[serde_with::serde_as]
1253#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1254#[serde(default, rename_all = "camelCase")]
1255#[non_exhaustive]
1256pub struct CreateConnectionRequest {
1257 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1259 pub parent: std::string::String,
1260
1261 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1265 pub connection_id: std::string::String,
1266
1267 #[serde(skip_serializing_if = "std::option::Option::is_none")]
1269 pub connection: std::option::Option<crate::model::Connection>,
1270
1271 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1285 pub request_id: std::string::String,
1286
1287 pub validate_only: bool,
1289}
1290
1291impl CreateConnectionRequest {
1292 pub fn new() -> Self {
1293 std::default::Default::default()
1294 }
1295
1296 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1298 self.parent = v.into();
1299 self
1300 }
1301
1302 pub fn set_connection_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1304 self.connection_id = v.into();
1305 self
1306 }
1307
1308 pub fn set_connection<T: std::convert::Into<std::option::Option<crate::model::Connection>>>(
1310 mut self,
1311 v: T,
1312 ) -> Self {
1313 self.connection = v.into();
1314 self
1315 }
1316
1317 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1319 self.request_id = v.into();
1320 self
1321 }
1322
1323 pub fn set_validate_only<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
1325 self.validate_only = v.into();
1326 self
1327 }
1328}
1329
1330impl wkt::message::Message for CreateConnectionRequest {
1331 fn typename() -> &'static str {
1332 "type.googleapis.com/google.cloud.developerconnect.v1.CreateConnectionRequest"
1333 }
1334}
1335
1336#[serde_with::serde_as]
1338#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1339#[serde(default, rename_all = "camelCase")]
1340#[non_exhaustive]
1341pub struct UpdateConnectionRequest {
1342 #[serde(skip_serializing_if = "std::option::Option::is_none")]
1348 pub update_mask: std::option::Option<wkt::FieldMask>,
1349
1350 #[serde(skip_serializing_if = "std::option::Option::is_none")]
1352 pub connection: std::option::Option<crate::model::Connection>,
1353
1354 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1368 pub request_id: std::string::String,
1369
1370 pub allow_missing: bool,
1376
1377 pub validate_only: bool,
1379}
1380
1381impl UpdateConnectionRequest {
1382 pub fn new() -> Self {
1383 std::default::Default::default()
1384 }
1385
1386 pub fn set_update_mask<T: std::convert::Into<std::option::Option<wkt::FieldMask>>>(
1388 mut self,
1389 v: T,
1390 ) -> Self {
1391 self.update_mask = v.into();
1392 self
1393 }
1394
1395 pub fn set_connection<T: std::convert::Into<std::option::Option<crate::model::Connection>>>(
1397 mut self,
1398 v: T,
1399 ) -> Self {
1400 self.connection = v.into();
1401 self
1402 }
1403
1404 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1406 self.request_id = v.into();
1407 self
1408 }
1409
1410 pub fn set_allow_missing<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
1412 self.allow_missing = v.into();
1413 self
1414 }
1415
1416 pub fn set_validate_only<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
1418 self.validate_only = v.into();
1419 self
1420 }
1421}
1422
1423impl wkt::message::Message for UpdateConnectionRequest {
1424 fn typename() -> &'static str {
1425 "type.googleapis.com/google.cloud.developerconnect.v1.UpdateConnectionRequest"
1426 }
1427}
1428
1429#[serde_with::serde_as]
1431#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1432#[serde(default, rename_all = "camelCase")]
1433#[non_exhaustive]
1434pub struct DeleteConnectionRequest {
1435 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1437 pub name: std::string::String,
1438
1439 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1453 pub request_id: std::string::String,
1454
1455 pub validate_only: bool,
1457
1458 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1462 pub etag: std::string::String,
1463}
1464
1465impl DeleteConnectionRequest {
1466 pub fn new() -> Self {
1467 std::default::Default::default()
1468 }
1469
1470 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1472 self.name = v.into();
1473 self
1474 }
1475
1476 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1478 self.request_id = v.into();
1479 self
1480 }
1481
1482 pub fn set_validate_only<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
1484 self.validate_only = v.into();
1485 self
1486 }
1487
1488 pub fn set_etag<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1490 self.etag = v.into();
1491 self
1492 }
1493}
1494
1495impl wkt::message::Message for DeleteConnectionRequest {
1496 fn typename() -> &'static str {
1497 "type.googleapis.com/google.cloud.developerconnect.v1.DeleteConnectionRequest"
1498 }
1499}
1500
1501#[serde_with::serde_as]
1503#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1504#[serde(default, rename_all = "camelCase")]
1505#[non_exhaustive]
1506pub struct OperationMetadata {
1507 #[serde(skip_serializing_if = "std::option::Option::is_none")]
1509 pub create_time: std::option::Option<wkt::Timestamp>,
1510
1511 #[serde(skip_serializing_if = "std::option::Option::is_none")]
1513 pub end_time: std::option::Option<wkt::Timestamp>,
1514
1515 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1517 pub target: std::string::String,
1518
1519 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1521 pub verb: std::string::String,
1522
1523 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1525 pub status_message: std::string::String,
1526
1527 pub requested_cancellation: bool,
1537
1538 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1540 pub api_version: std::string::String,
1541}
1542
1543impl OperationMetadata {
1544 pub fn new() -> Self {
1545 std::default::Default::default()
1546 }
1547
1548 pub fn set_create_time<T: std::convert::Into<std::option::Option<wkt::Timestamp>>>(
1550 mut self,
1551 v: T,
1552 ) -> Self {
1553 self.create_time = v.into();
1554 self
1555 }
1556
1557 pub fn set_end_time<T: std::convert::Into<std::option::Option<wkt::Timestamp>>>(
1559 mut self,
1560 v: T,
1561 ) -> Self {
1562 self.end_time = v.into();
1563 self
1564 }
1565
1566 pub fn set_target<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1568 self.target = v.into();
1569 self
1570 }
1571
1572 pub fn set_verb<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1574 self.verb = v.into();
1575 self
1576 }
1577
1578 pub fn set_status_message<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1580 self.status_message = v.into();
1581 self
1582 }
1583
1584 pub fn set_requested_cancellation<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
1586 self.requested_cancellation = v.into();
1587 self
1588 }
1589
1590 pub fn set_api_version<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1592 self.api_version = v.into();
1593 self
1594 }
1595}
1596
1597impl wkt::message::Message for OperationMetadata {
1598 fn typename() -> &'static str {
1599 "type.googleapis.com/google.cloud.developerconnect.v1.OperationMetadata"
1600 }
1601}
1602
1603#[serde_with::serde_as]
1605#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1606#[serde(default, rename_all = "camelCase")]
1607#[non_exhaustive]
1608pub struct GitRepositoryLink {
1609 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1612 pub name: std::string::String,
1613
1614 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1616 pub clone_uri: std::string::String,
1617
1618 #[serde(skip_serializing_if = "std::option::Option::is_none")]
1620 pub create_time: std::option::Option<wkt::Timestamp>,
1621
1622 #[serde(skip_serializing_if = "std::option::Option::is_none")]
1624 pub update_time: std::option::Option<wkt::Timestamp>,
1625
1626 #[serde(skip_serializing_if = "std::option::Option::is_none")]
1628 pub delete_time: std::option::Option<wkt::Timestamp>,
1629
1630 #[serde(skip_serializing_if = "std::collections::HashMap::is_empty")]
1632 pub labels: std::collections::HashMap<std::string::String, std::string::String>,
1633
1634 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1638 pub etag: std::string::String,
1639
1640 pub reconciling: bool,
1643
1644 #[serde(skip_serializing_if = "std::collections::HashMap::is_empty")]
1646 pub annotations: std::collections::HashMap<std::string::String, std::string::String>,
1647
1648 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1651 pub uid: std::string::String,
1652
1653 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1655 pub webhook_id: std::string::String,
1656}
1657
1658impl GitRepositoryLink {
1659 pub fn new() -> Self {
1660 std::default::Default::default()
1661 }
1662
1663 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1665 self.name = v.into();
1666 self
1667 }
1668
1669 pub fn set_clone_uri<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1671 self.clone_uri = v.into();
1672 self
1673 }
1674
1675 pub fn set_create_time<T: std::convert::Into<std::option::Option<wkt::Timestamp>>>(
1677 mut self,
1678 v: T,
1679 ) -> Self {
1680 self.create_time = v.into();
1681 self
1682 }
1683
1684 pub fn set_update_time<T: std::convert::Into<std::option::Option<wkt::Timestamp>>>(
1686 mut self,
1687 v: T,
1688 ) -> Self {
1689 self.update_time = v.into();
1690 self
1691 }
1692
1693 pub fn set_delete_time<T: std::convert::Into<std::option::Option<wkt::Timestamp>>>(
1695 mut self,
1696 v: T,
1697 ) -> Self {
1698 self.delete_time = v.into();
1699 self
1700 }
1701
1702 pub fn set_etag<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1704 self.etag = v.into();
1705 self
1706 }
1707
1708 pub fn set_reconciling<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
1710 self.reconciling = v.into();
1711 self
1712 }
1713
1714 pub fn set_uid<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1716 self.uid = v.into();
1717 self
1718 }
1719
1720 pub fn set_webhook_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1722 self.webhook_id = v.into();
1723 self
1724 }
1725
1726 pub fn set_labels<T, K, V>(mut self, v: T) -> Self
1728 where
1729 T: std::iter::IntoIterator<Item = (K, V)>,
1730 K: std::convert::Into<std::string::String>,
1731 V: std::convert::Into<std::string::String>,
1732 {
1733 use std::iter::Iterator;
1734 self.labels = v.into_iter().map(|(k, v)| (k.into(), v.into())).collect();
1735 self
1736 }
1737
1738 pub fn set_annotations<T, K, V>(mut self, v: T) -> Self
1740 where
1741 T: std::iter::IntoIterator<Item = (K, V)>,
1742 K: std::convert::Into<std::string::String>,
1743 V: std::convert::Into<std::string::String>,
1744 {
1745 use std::iter::Iterator;
1746 self.annotations = v.into_iter().map(|(k, v)| (k.into(), v.into())).collect();
1747 self
1748 }
1749}
1750
1751impl wkt::message::Message for GitRepositoryLink {
1752 fn typename() -> &'static str {
1753 "type.googleapis.com/google.cloud.developerconnect.v1.GitRepositoryLink"
1754 }
1755}
1756
1757#[serde_with::serde_as]
1759#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1760#[serde(default, rename_all = "camelCase")]
1761#[non_exhaustive]
1762pub struct CreateGitRepositoryLinkRequest {
1763 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1765 pub parent: std::string::String,
1766
1767 #[serde(skip_serializing_if = "std::option::Option::is_none")]
1769 pub git_repository_link: std::option::Option<crate::model::GitRepositoryLink>,
1770
1771 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1776 pub git_repository_link_id: std::string::String,
1777
1778 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1792 pub request_id: std::string::String,
1793
1794 pub validate_only: bool,
1796}
1797
1798impl CreateGitRepositoryLinkRequest {
1799 pub fn new() -> Self {
1800 std::default::Default::default()
1801 }
1802
1803 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1805 self.parent = v.into();
1806 self
1807 }
1808
1809 pub fn set_git_repository_link<
1811 T: std::convert::Into<std::option::Option<crate::model::GitRepositoryLink>>,
1812 >(
1813 mut self,
1814 v: T,
1815 ) -> Self {
1816 self.git_repository_link = v.into();
1817 self
1818 }
1819
1820 pub fn set_git_repository_link_id<T: std::convert::Into<std::string::String>>(
1822 mut self,
1823 v: T,
1824 ) -> Self {
1825 self.git_repository_link_id = v.into();
1826 self
1827 }
1828
1829 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1831 self.request_id = v.into();
1832 self
1833 }
1834
1835 pub fn set_validate_only<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
1837 self.validate_only = v.into();
1838 self
1839 }
1840}
1841
1842impl wkt::message::Message for CreateGitRepositoryLinkRequest {
1843 fn typename() -> &'static str {
1844 "type.googleapis.com/google.cloud.developerconnect.v1.CreateGitRepositoryLinkRequest"
1845 }
1846}
1847
1848#[serde_with::serde_as]
1850#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1851#[serde(default, rename_all = "camelCase")]
1852#[non_exhaustive]
1853pub struct DeleteGitRepositoryLinkRequest {
1854 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1856 pub name: std::string::String,
1857
1858 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1872 pub request_id: std::string::String,
1873
1874 pub validate_only: bool,
1876
1877 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1881 pub etag: std::string::String,
1882}
1883
1884impl DeleteGitRepositoryLinkRequest {
1885 pub fn new() -> Self {
1886 std::default::Default::default()
1887 }
1888
1889 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1891 self.name = v.into();
1892 self
1893 }
1894
1895 pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1897 self.request_id = v.into();
1898 self
1899 }
1900
1901 pub fn set_validate_only<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
1903 self.validate_only = v.into();
1904 self
1905 }
1906
1907 pub fn set_etag<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1909 self.etag = v.into();
1910 self
1911 }
1912}
1913
1914impl wkt::message::Message for DeleteGitRepositoryLinkRequest {
1915 fn typename() -> &'static str {
1916 "type.googleapis.com/google.cloud.developerconnect.v1.DeleteGitRepositoryLinkRequest"
1917 }
1918}
1919
1920#[serde_with::serde_as]
1922#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1923#[serde(default, rename_all = "camelCase")]
1924#[non_exhaustive]
1925pub struct ListGitRepositoryLinksRequest {
1926 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1928 pub parent: std::string::String,
1929
1930 pub page_size: i32,
1933
1934 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1936 pub page_token: std::string::String,
1937
1938 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1940 pub filter: std::string::String,
1941
1942 #[serde(skip_serializing_if = "std::string::String::is_empty")]
1944 pub order_by: std::string::String,
1945}
1946
1947impl ListGitRepositoryLinksRequest {
1948 pub fn new() -> Self {
1949 std::default::Default::default()
1950 }
1951
1952 pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1954 self.parent = v.into();
1955 self
1956 }
1957
1958 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
1960 self.page_size = v.into();
1961 self
1962 }
1963
1964 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1966 self.page_token = v.into();
1967 self
1968 }
1969
1970 pub fn set_filter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1972 self.filter = v.into();
1973 self
1974 }
1975
1976 pub fn set_order_by<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
1978 self.order_by = v.into();
1979 self
1980 }
1981}
1982
1983impl wkt::message::Message for ListGitRepositoryLinksRequest {
1984 fn typename() -> &'static str {
1985 "type.googleapis.com/google.cloud.developerconnect.v1.ListGitRepositoryLinksRequest"
1986 }
1987}
1988
1989#[serde_with::serde_as]
1991#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1992#[serde(default, rename_all = "camelCase")]
1993#[non_exhaustive]
1994pub struct ListGitRepositoryLinksResponse {
1995 #[serde(skip_serializing_if = "std::vec::Vec::is_empty")]
1997 pub git_repository_links: std::vec::Vec<crate::model::GitRepositoryLink>,
1998
1999 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2001 pub next_page_token: std::string::String,
2002
2003 #[serde(skip_serializing_if = "std::vec::Vec::is_empty")]
2005 pub unreachable: std::vec::Vec<std::string::String>,
2006}
2007
2008impl ListGitRepositoryLinksResponse {
2009 pub fn new() -> Self {
2010 std::default::Default::default()
2011 }
2012
2013 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2015 self.next_page_token = v.into();
2016 self
2017 }
2018
2019 pub fn set_git_repository_links<T, V>(mut self, v: T) -> Self
2021 where
2022 T: std::iter::IntoIterator<Item = V>,
2023 V: std::convert::Into<crate::model::GitRepositoryLink>,
2024 {
2025 use std::iter::Iterator;
2026 self.git_repository_links = v.into_iter().map(|i| i.into()).collect();
2027 self
2028 }
2029
2030 pub fn set_unreachable<T, V>(mut self, v: T) -> Self
2032 where
2033 T: std::iter::IntoIterator<Item = V>,
2034 V: std::convert::Into<std::string::String>,
2035 {
2036 use std::iter::Iterator;
2037 self.unreachable = v.into_iter().map(|i| i.into()).collect();
2038 self
2039 }
2040}
2041
2042impl wkt::message::Message for ListGitRepositoryLinksResponse {
2043 fn typename() -> &'static str {
2044 "type.googleapis.com/google.cloud.developerconnect.v1.ListGitRepositoryLinksResponse"
2045 }
2046}
2047
2048#[cfg(feature = "unstable-stream")]
2049impl gax::paginator::PageableResponse for ListGitRepositoryLinksResponse {
2050 type PageItem = crate::model::GitRepositoryLink;
2051
2052 fn items(self) -> std::vec::Vec<Self::PageItem> {
2053 self.git_repository_links
2054 }
2055
2056 fn next_page_token(&self) -> std::string::String {
2057 gax::paginator::extract_token(&self.next_page_token)
2058 }
2059}
2060
2061#[serde_with::serde_as]
2063#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2064#[serde(default, rename_all = "camelCase")]
2065#[non_exhaustive]
2066pub struct GetGitRepositoryLinkRequest {
2067 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2069 pub name: std::string::String,
2070}
2071
2072impl GetGitRepositoryLinkRequest {
2073 pub fn new() -> Self {
2074 std::default::Default::default()
2075 }
2076
2077 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2079 self.name = v.into();
2080 self
2081 }
2082}
2083
2084impl wkt::message::Message for GetGitRepositoryLinkRequest {
2085 fn typename() -> &'static str {
2086 "type.googleapis.com/google.cloud.developerconnect.v1.GetGitRepositoryLinkRequest"
2087 }
2088}
2089
2090#[serde_with::serde_as]
2092#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2093#[serde(default, rename_all = "camelCase")]
2094#[non_exhaustive]
2095pub struct FetchReadWriteTokenRequest {
2096 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2099 pub git_repository_link: std::string::String,
2100}
2101
2102impl FetchReadWriteTokenRequest {
2103 pub fn new() -> Self {
2104 std::default::Default::default()
2105 }
2106
2107 pub fn set_git_repository_link<T: std::convert::Into<std::string::String>>(
2109 mut self,
2110 v: T,
2111 ) -> Self {
2112 self.git_repository_link = v.into();
2113 self
2114 }
2115}
2116
2117impl wkt::message::Message for FetchReadWriteTokenRequest {
2118 fn typename() -> &'static str {
2119 "type.googleapis.com/google.cloud.developerconnect.v1.FetchReadWriteTokenRequest"
2120 }
2121}
2122
2123#[serde_with::serde_as]
2125#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2126#[serde(default, rename_all = "camelCase")]
2127#[non_exhaustive]
2128pub struct FetchReadTokenRequest {
2129 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2132 pub git_repository_link: std::string::String,
2133}
2134
2135impl FetchReadTokenRequest {
2136 pub fn new() -> Self {
2137 std::default::Default::default()
2138 }
2139
2140 pub fn set_git_repository_link<T: std::convert::Into<std::string::String>>(
2142 mut self,
2143 v: T,
2144 ) -> Self {
2145 self.git_repository_link = v.into();
2146 self
2147 }
2148}
2149
2150impl wkt::message::Message for FetchReadTokenRequest {
2151 fn typename() -> &'static str {
2152 "type.googleapis.com/google.cloud.developerconnect.v1.FetchReadTokenRequest"
2153 }
2154}
2155
2156#[serde_with::serde_as]
2158#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2159#[serde(default, rename_all = "camelCase")]
2160#[non_exhaustive]
2161pub struct FetchReadTokenResponse {
2162 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2164 pub token: std::string::String,
2165
2166 #[serde(skip_serializing_if = "std::option::Option::is_none")]
2168 pub expiration_time: std::option::Option<wkt::Timestamp>,
2169
2170 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2174 pub git_username: std::string::String,
2175}
2176
2177impl FetchReadTokenResponse {
2178 pub fn new() -> Self {
2179 std::default::Default::default()
2180 }
2181
2182 pub fn set_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2184 self.token = v.into();
2185 self
2186 }
2187
2188 pub fn set_expiration_time<T: std::convert::Into<std::option::Option<wkt::Timestamp>>>(
2190 mut self,
2191 v: T,
2192 ) -> Self {
2193 self.expiration_time = v.into();
2194 self
2195 }
2196
2197 pub fn set_git_username<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2199 self.git_username = v.into();
2200 self
2201 }
2202}
2203
2204impl wkt::message::Message for FetchReadTokenResponse {
2205 fn typename() -> &'static str {
2206 "type.googleapis.com/google.cloud.developerconnect.v1.FetchReadTokenResponse"
2207 }
2208}
2209
2210#[serde_with::serde_as]
2212#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2213#[serde(default, rename_all = "camelCase")]
2214#[non_exhaustive]
2215pub struct FetchReadWriteTokenResponse {
2216 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2218 pub token: std::string::String,
2219
2220 #[serde(skip_serializing_if = "std::option::Option::is_none")]
2222 pub expiration_time: std::option::Option<wkt::Timestamp>,
2223
2224 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2228 pub git_username: std::string::String,
2229}
2230
2231impl FetchReadWriteTokenResponse {
2232 pub fn new() -> Self {
2233 std::default::Default::default()
2234 }
2235
2236 pub fn set_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2238 self.token = v.into();
2239 self
2240 }
2241
2242 pub fn set_expiration_time<T: std::convert::Into<std::option::Option<wkt::Timestamp>>>(
2244 mut self,
2245 v: T,
2246 ) -> Self {
2247 self.expiration_time = v.into();
2248 self
2249 }
2250
2251 pub fn set_git_username<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2253 self.git_username = v.into();
2254 self
2255 }
2256}
2257
2258impl wkt::message::Message for FetchReadWriteTokenResponse {
2259 fn typename() -> &'static str {
2260 "type.googleapis.com/google.cloud.developerconnect.v1.FetchReadWriteTokenResponse"
2261 }
2262}
2263
2264#[serde_with::serde_as]
2266#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2267#[serde(default, rename_all = "camelCase")]
2268#[non_exhaustive]
2269pub struct FetchLinkableGitRepositoriesRequest {
2270 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2273 pub connection: std::string::String,
2274
2275 pub page_size: i32,
2277
2278 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2280 pub page_token: std::string::String,
2281}
2282
2283impl FetchLinkableGitRepositoriesRequest {
2284 pub fn new() -> Self {
2285 std::default::Default::default()
2286 }
2287
2288 pub fn set_connection<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2290 self.connection = v.into();
2291 self
2292 }
2293
2294 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
2296 self.page_size = v.into();
2297 self
2298 }
2299
2300 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2302 self.page_token = v.into();
2303 self
2304 }
2305}
2306
2307impl wkt::message::Message for FetchLinkableGitRepositoriesRequest {
2308 fn typename() -> &'static str {
2309 "type.googleapis.com/google.cloud.developerconnect.v1.FetchLinkableGitRepositoriesRequest"
2310 }
2311}
2312
2313#[serde_with::serde_as]
2315#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2316#[serde(default, rename_all = "camelCase")]
2317#[non_exhaustive]
2318pub struct FetchLinkableGitRepositoriesResponse {
2319 #[serde(skip_serializing_if = "std::vec::Vec::is_empty")]
2321 pub linkable_git_repositories: std::vec::Vec<crate::model::LinkableGitRepository>,
2322
2323 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2325 pub next_page_token: std::string::String,
2326}
2327
2328impl FetchLinkableGitRepositoriesResponse {
2329 pub fn new() -> Self {
2330 std::default::Default::default()
2331 }
2332
2333 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2335 self.next_page_token = v.into();
2336 self
2337 }
2338
2339 pub fn set_linkable_git_repositories<T, V>(mut self, v: T) -> Self
2341 where
2342 T: std::iter::IntoIterator<Item = V>,
2343 V: std::convert::Into<crate::model::LinkableGitRepository>,
2344 {
2345 use std::iter::Iterator;
2346 self.linkable_git_repositories = v.into_iter().map(|i| i.into()).collect();
2347 self
2348 }
2349}
2350
2351impl wkt::message::Message for FetchLinkableGitRepositoriesResponse {
2352 fn typename() -> &'static str {
2353 "type.googleapis.com/google.cloud.developerconnect.v1.FetchLinkableGitRepositoriesResponse"
2354 }
2355}
2356
2357#[cfg(feature = "unstable-stream")]
2358impl gax::paginator::PageableResponse for FetchLinkableGitRepositoriesResponse {
2359 type PageItem = crate::model::LinkableGitRepository;
2360
2361 fn items(self) -> std::vec::Vec<Self::PageItem> {
2362 self.linkable_git_repositories
2363 }
2364
2365 fn next_page_token(&self) -> std::string::String {
2366 gax::paginator::extract_token(&self.next_page_token)
2367 }
2368}
2369
2370#[serde_with::serde_as]
2373#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2374#[serde(default, rename_all = "camelCase")]
2375#[non_exhaustive]
2376pub struct LinkableGitRepository {
2377 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2379 pub clone_uri: std::string::String,
2380}
2381
2382impl LinkableGitRepository {
2383 pub fn new() -> Self {
2384 std::default::Default::default()
2385 }
2386
2387 pub fn set_clone_uri<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2389 self.clone_uri = v.into();
2390 self
2391 }
2392}
2393
2394impl wkt::message::Message for LinkableGitRepository {
2395 fn typename() -> &'static str {
2396 "type.googleapis.com/google.cloud.developerconnect.v1.LinkableGitRepository"
2397 }
2398}
2399
2400#[serde_with::serde_as]
2402#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2403#[serde(default, rename_all = "camelCase")]
2404#[non_exhaustive]
2405pub struct FetchGitHubInstallationsRequest {
2406 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2409 pub connection: std::string::String,
2410}
2411
2412impl FetchGitHubInstallationsRequest {
2413 pub fn new() -> Self {
2414 std::default::Default::default()
2415 }
2416
2417 pub fn set_connection<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2419 self.connection = v.into();
2420 self
2421 }
2422}
2423
2424impl wkt::message::Message for FetchGitHubInstallationsRequest {
2425 fn typename() -> &'static str {
2426 "type.googleapis.com/google.cloud.developerconnect.v1.FetchGitHubInstallationsRequest"
2427 }
2428}
2429
2430#[serde_with::serde_as]
2432#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2433#[serde(default, rename_all = "camelCase")]
2434#[non_exhaustive]
2435pub struct FetchGitHubInstallationsResponse {
2436 #[serde(skip_serializing_if = "std::vec::Vec::is_empty")]
2439 pub installations:
2440 std::vec::Vec<crate::model::fetch_git_hub_installations_response::Installation>,
2441}
2442
2443impl FetchGitHubInstallationsResponse {
2444 pub fn new() -> Self {
2445 std::default::Default::default()
2446 }
2447
2448 pub fn set_installations<T, V>(mut self, v: T) -> Self
2450 where
2451 T: std::iter::IntoIterator<Item = V>,
2452 V: std::convert::Into<crate::model::fetch_git_hub_installations_response::Installation>,
2453 {
2454 use std::iter::Iterator;
2455 self.installations = v.into_iter().map(|i| i.into()).collect();
2456 self
2457 }
2458}
2459
2460impl wkt::message::Message for FetchGitHubInstallationsResponse {
2461 fn typename() -> &'static str {
2462 "type.googleapis.com/google.cloud.developerconnect.v1.FetchGitHubInstallationsResponse"
2463 }
2464}
2465
2466pub mod fetch_git_hub_installations_response {
2468 #[allow(unused_imports)]
2469 use super::*;
2470
2471 #[serde_with::serde_as]
2473 #[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2474 #[serde(default, rename_all = "camelCase")]
2475 #[non_exhaustive]
2476 pub struct Installation {
2477 #[serde_as(as = "serde_with::DisplayFromStr")]
2479 pub id: i64,
2480
2481 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2483 pub name: std::string::String,
2484
2485 #[serde(rename = "type")]
2487 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2488 pub r#type: std::string::String,
2489 }
2490
2491 impl Installation {
2492 pub fn new() -> Self {
2493 std::default::Default::default()
2494 }
2495
2496 pub fn set_id<T: std::convert::Into<i64>>(mut self, v: T) -> Self {
2498 self.id = v.into();
2499 self
2500 }
2501
2502 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2504 self.name = v.into();
2505 self
2506 }
2507
2508 pub fn set_type<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2510 self.r#type = v.into();
2511 self
2512 }
2513 }
2514
2515 impl wkt::message::Message for Installation {
2516 fn typename() -> &'static str {
2517 "type.googleapis.com/google.cloud.developerconnect.v1.FetchGitHubInstallationsResponse.Installation"
2518 }
2519 }
2520}
2521
2522#[serde_with::serde_as]
2524#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2525#[serde(default, rename_all = "camelCase")]
2526#[non_exhaustive]
2527pub struct FetchGitRefsRequest {
2528 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2531 pub git_repository_link: std::string::String,
2532
2533 pub ref_type: crate::model::fetch_git_refs_request::RefType,
2535
2536 pub page_size: i32,
2538
2539 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2541 pub page_token: std::string::String,
2542}
2543
2544impl FetchGitRefsRequest {
2545 pub fn new() -> Self {
2546 std::default::Default::default()
2547 }
2548
2549 pub fn set_git_repository_link<T: std::convert::Into<std::string::String>>(
2551 mut self,
2552 v: T,
2553 ) -> Self {
2554 self.git_repository_link = v.into();
2555 self
2556 }
2557
2558 pub fn set_ref_type<T: std::convert::Into<crate::model::fetch_git_refs_request::RefType>>(
2560 mut self,
2561 v: T,
2562 ) -> Self {
2563 self.ref_type = v.into();
2564 self
2565 }
2566
2567 pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
2569 self.page_size = v.into();
2570 self
2571 }
2572
2573 pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2575 self.page_token = v.into();
2576 self
2577 }
2578}
2579
2580impl wkt::message::Message for FetchGitRefsRequest {
2581 fn typename() -> &'static str {
2582 "type.googleapis.com/google.cloud.developerconnect.v1.FetchGitRefsRequest"
2583 }
2584}
2585
2586pub mod fetch_git_refs_request {
2588 #[allow(unused_imports)]
2589 use super::*;
2590
2591 #[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2593 pub struct RefType(std::borrow::Cow<'static, str>);
2594
2595 impl RefType {
2596 pub const fn new(v: &'static str) -> Self {
2598 Self(std::borrow::Cow::Borrowed(v))
2599 }
2600
2601 pub fn value(&self) -> &str {
2603 &self.0
2604 }
2605 }
2606
2607 pub mod ref_type {
2609 use super::RefType;
2610
2611 pub const REF_TYPE_UNSPECIFIED: RefType = RefType::new("REF_TYPE_UNSPECIFIED");
2613
2614 pub const TAG: RefType = RefType::new("TAG");
2616
2617 pub const BRANCH: RefType = RefType::new("BRANCH");
2619 }
2620
2621 impl std::convert::From<std::string::String> for RefType {
2622 fn from(value: std::string::String) -> Self {
2623 Self(std::borrow::Cow::Owned(value))
2624 }
2625 }
2626}
2627
2628#[serde_with::serde_as]
2630#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
2631#[serde(default, rename_all = "camelCase")]
2632#[non_exhaustive]
2633pub struct FetchGitRefsResponse {
2634 #[serde(skip_serializing_if = "std::vec::Vec::is_empty")]
2636 pub ref_names: std::vec::Vec<std::string::String>,
2637
2638 #[serde(skip_serializing_if = "std::string::String::is_empty")]
2640 pub next_page_token: std::string::String,
2641}
2642
2643impl FetchGitRefsResponse {
2644 pub fn new() -> Self {
2645 std::default::Default::default()
2646 }
2647
2648 pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
2650 self.next_page_token = v.into();
2651 self
2652 }
2653
2654 pub fn set_ref_names<T, V>(mut self, v: T) -> Self
2656 where
2657 T: std::iter::IntoIterator<Item = V>,
2658 V: std::convert::Into<std::string::String>,
2659 {
2660 use std::iter::Iterator;
2661 self.ref_names = v.into_iter().map(|i| i.into()).collect();
2662 self
2663 }
2664}
2665
2666impl wkt::message::Message for FetchGitRefsResponse {
2667 fn typename() -> &'static str {
2668 "type.googleapis.com/google.cloud.developerconnect.v1.FetchGitRefsResponse"
2669 }
2670}