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 gaxi;
24extern crate lazy_static;
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]
40#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
41#[serde(default, rename_all = "camelCase")]
42#[non_exhaustive]
43pub struct Environment {
44 #[serde(skip_serializing_if = "std::string::String::is_empty")]
50 pub name: std::string::String,
51
52 #[serde(skip_serializing_if = "std::string::String::is_empty")]
55 pub id: std::string::String,
56
57 #[serde(skip_serializing_if = "std::string::String::is_empty")]
60 pub docker_image: std::string::String,
61
62 pub state: crate::model::environment::State,
64
65 #[serde(skip_serializing_if = "std::string::String::is_empty")]
68 pub web_host: std::string::String,
69
70 #[serde(skip_serializing_if = "std::string::String::is_empty")]
73 pub ssh_username: std::string::String,
74
75 #[serde(skip_serializing_if = "std::string::String::is_empty")]
78 pub ssh_host: std::string::String,
79
80 #[serde(skip_serializing_if = "wkt::internal::is_default")]
83 pub ssh_port: i32,
84
85 #[serde(skip_serializing_if = "std::vec::Vec::is_empty")]
91 pub public_keys: std::vec::Vec<std::string::String>,
92
93 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
94 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
95}
96
97impl Environment {
98 pub fn new() -> Self {
99 std::default::Default::default()
100 }
101
102 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
104 self.name = v.into();
105 self
106 }
107
108 pub fn set_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
110 self.id = v.into();
111 self
112 }
113
114 pub fn set_docker_image<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
116 self.docker_image = v.into();
117 self
118 }
119
120 pub fn set_state<T: std::convert::Into<crate::model::environment::State>>(
122 mut self,
123 v: T,
124 ) -> Self {
125 self.state = v.into();
126 self
127 }
128
129 pub fn set_web_host<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
131 self.web_host = v.into();
132 self
133 }
134
135 pub fn set_ssh_username<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
137 self.ssh_username = v.into();
138 self
139 }
140
141 pub fn set_ssh_host<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
143 self.ssh_host = v.into();
144 self
145 }
146
147 pub fn set_ssh_port<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
149 self.ssh_port = v.into();
150 self
151 }
152
153 pub fn set_public_keys<T, V>(mut self, v: T) -> Self
155 where
156 T: std::iter::IntoIterator<Item = V>,
157 V: std::convert::Into<std::string::String>,
158 {
159 use std::iter::Iterator;
160 self.public_keys = v.into_iter().map(|i| i.into()).collect();
161 self
162 }
163}
164
165impl wkt::message::Message for Environment {
166 fn typename() -> &'static str {
167 "type.googleapis.com/google.cloud.shell.v1.Environment"
168 }
169}
170
171pub mod environment {
173 #[allow(unused_imports)]
174 use super::*;
175
176 #[derive(Clone, Debug, PartialEq)]
192 #[non_exhaustive]
193 pub enum State {
194 Unspecified,
196 Suspended,
199 Pending,
202 Running,
206 Deleting,
208 UnknownValue(state::UnknownValue),
213 }
214
215 #[doc(hidden)]
216 pub mod state {
217 #[allow(unused_imports)]
218 use super::*;
219 #[derive(Clone, Debug, PartialEq)]
220 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
221 }
222
223 impl State {
224 pub fn value(&self) -> std::option::Option<i32> {
229 match self {
230 Self::Unspecified => std::option::Option::Some(0),
231 Self::Suspended => std::option::Option::Some(1),
232 Self::Pending => std::option::Option::Some(2),
233 Self::Running => std::option::Option::Some(3),
234 Self::Deleting => std::option::Option::Some(4),
235 Self::UnknownValue(u) => u.0.value(),
236 }
237 }
238
239 pub fn name(&self) -> std::option::Option<&str> {
244 match self {
245 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
246 Self::Suspended => std::option::Option::Some("SUSPENDED"),
247 Self::Pending => std::option::Option::Some("PENDING"),
248 Self::Running => std::option::Option::Some("RUNNING"),
249 Self::Deleting => std::option::Option::Some("DELETING"),
250 Self::UnknownValue(u) => u.0.name(),
251 }
252 }
253 }
254
255 impl std::default::Default for State {
256 fn default() -> Self {
257 use std::convert::From;
258 Self::from(0)
259 }
260 }
261
262 impl std::fmt::Display for State {
263 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
264 wkt::internal::display_enum(f, self.name(), self.value())
265 }
266 }
267
268 impl std::convert::From<i32> for State {
269 fn from(value: i32) -> Self {
270 match value {
271 0 => Self::Unspecified,
272 1 => Self::Suspended,
273 2 => Self::Pending,
274 3 => Self::Running,
275 4 => Self::Deleting,
276 _ => Self::UnknownValue(state::UnknownValue(
277 wkt::internal::UnknownEnumValue::Integer(value),
278 )),
279 }
280 }
281 }
282
283 impl std::convert::From<&str> for State {
284 fn from(value: &str) -> Self {
285 use std::string::ToString;
286 match value {
287 "STATE_UNSPECIFIED" => Self::Unspecified,
288 "SUSPENDED" => Self::Suspended,
289 "PENDING" => Self::Pending,
290 "RUNNING" => Self::Running,
291 "DELETING" => Self::Deleting,
292 _ => Self::UnknownValue(state::UnknownValue(
293 wkt::internal::UnknownEnumValue::String(value.to_string()),
294 )),
295 }
296 }
297 }
298
299 impl serde::ser::Serialize for State {
300 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
301 where
302 S: serde::Serializer,
303 {
304 match self {
305 Self::Unspecified => serializer.serialize_i32(0),
306 Self::Suspended => serializer.serialize_i32(1),
307 Self::Pending => serializer.serialize_i32(2),
308 Self::Running => serializer.serialize_i32(3),
309 Self::Deleting => serializer.serialize_i32(4),
310 Self::UnknownValue(u) => u.0.serialize(serializer),
311 }
312 }
313 }
314
315 impl<'de> serde::de::Deserialize<'de> for State {
316 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
317 where
318 D: serde::Deserializer<'de>,
319 {
320 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
321 ".google.cloud.shell.v1.Environment.State",
322 ))
323 }
324 }
325}
326
327#[serde_with::serde_as]
332#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
333#[serde(default, rename_all = "camelCase")]
334#[non_exhaustive]
335pub struct GetEnvironmentRequest {
336 #[serde(skip_serializing_if = "std::string::String::is_empty")]
339 pub name: std::string::String,
340
341 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
342 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
343}
344
345impl GetEnvironmentRequest {
346 pub fn new() -> Self {
347 std::default::Default::default()
348 }
349
350 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
352 self.name = v.into();
353 self
354 }
355}
356
357impl wkt::message::Message for GetEnvironmentRequest {
358 fn typename() -> &'static str {
359 "type.googleapis.com/google.cloud.shell.v1.GetEnvironmentRequest"
360 }
361}
362
363#[serde_with::serde_as]
366#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
367#[serde(default, rename_all = "camelCase")]
368#[non_exhaustive]
369pub struct CreateEnvironmentMetadata {
370 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
371 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
372}
373
374impl CreateEnvironmentMetadata {
375 pub fn new() -> Self {
376 std::default::Default::default()
377 }
378}
379
380impl wkt::message::Message for CreateEnvironmentMetadata {
381 fn typename() -> &'static str {
382 "type.googleapis.com/google.cloud.shell.v1.CreateEnvironmentMetadata"
383 }
384}
385
386#[serde_with::serde_as]
389#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
390#[serde(default, rename_all = "camelCase")]
391#[non_exhaustive]
392pub struct DeleteEnvironmentMetadata {
393 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
394 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
395}
396
397impl DeleteEnvironmentMetadata {
398 pub fn new() -> Self {
399 std::default::Default::default()
400 }
401}
402
403impl wkt::message::Message for DeleteEnvironmentMetadata {
404 fn typename() -> &'static str {
405 "type.googleapis.com/google.cloud.shell.v1.DeleteEnvironmentMetadata"
406 }
407}
408
409#[serde_with::serde_as]
414#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
415#[serde(default, rename_all = "camelCase")]
416#[non_exhaustive]
417pub struct StartEnvironmentRequest {
418 #[serde(skip_serializing_if = "std::string::String::is_empty")]
422 pub name: std::string::String,
423
424 #[serde(skip_serializing_if = "std::string::String::is_empty")]
429 pub access_token: std::string::String,
430
431 #[serde(skip_serializing_if = "std::vec::Vec::is_empty")]
433 pub public_keys: std::vec::Vec<std::string::String>,
434
435 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
436 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
437}
438
439impl StartEnvironmentRequest {
440 pub fn new() -> Self {
441 std::default::Default::default()
442 }
443
444 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
446 self.name = v.into();
447 self
448 }
449
450 pub fn set_access_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
452 self.access_token = v.into();
453 self
454 }
455
456 pub fn set_public_keys<T, V>(mut self, v: T) -> Self
458 where
459 T: std::iter::IntoIterator<Item = V>,
460 V: std::convert::Into<std::string::String>,
461 {
462 use std::iter::Iterator;
463 self.public_keys = v.into_iter().map(|i| i.into()).collect();
464 self
465 }
466}
467
468impl wkt::message::Message for StartEnvironmentRequest {
469 fn typename() -> &'static str {
470 "type.googleapis.com/google.cloud.shell.v1.StartEnvironmentRequest"
471 }
472}
473
474#[serde_with::serde_as]
479#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
480#[serde(default, rename_all = "camelCase")]
481#[non_exhaustive]
482pub struct AuthorizeEnvironmentRequest {
483 #[serde(skip_serializing_if = "std::string::String::is_empty")]
487 pub name: std::string::String,
488
489 #[serde(skip_serializing_if = "std::string::String::is_empty")]
491 pub access_token: std::string::String,
492
493 #[serde(skip_serializing_if = "std::string::String::is_empty")]
495 pub id_token: std::string::String,
496
497 #[serde(skip_serializing_if = "std::option::Option::is_none")]
500 pub expire_time: std::option::Option<wkt::Timestamp>,
501
502 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
503 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
504}
505
506impl AuthorizeEnvironmentRequest {
507 pub fn new() -> Self {
508 std::default::Default::default()
509 }
510
511 pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
513 self.name = v.into();
514 self
515 }
516
517 pub fn set_access_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
519 self.access_token = v.into();
520 self
521 }
522
523 pub fn set_id_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
525 self.id_token = v.into();
526 self
527 }
528
529 pub fn set_expire_time<T: std::convert::Into<std::option::Option<wkt::Timestamp>>>(
531 mut self,
532 v: T,
533 ) -> Self {
534 self.expire_time = v.into();
535 self
536 }
537}
538
539impl wkt::message::Message for AuthorizeEnvironmentRequest {
540 fn typename() -> &'static str {
541 "type.googleapis.com/google.cloud.shell.v1.AuthorizeEnvironmentRequest"
542 }
543}
544
545#[serde_with::serde_as]
550#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
551#[serde(default, rename_all = "camelCase")]
552#[non_exhaustive]
553pub struct AuthorizeEnvironmentResponse {
554 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
555 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
556}
557
558impl AuthorizeEnvironmentResponse {
559 pub fn new() -> Self {
560 std::default::Default::default()
561 }
562}
563
564impl wkt::message::Message for AuthorizeEnvironmentResponse {
565 fn typename() -> &'static str {
566 "type.googleapis.com/google.cloud.shell.v1.AuthorizeEnvironmentResponse"
567 }
568}
569
570#[serde_with::serde_as]
575#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
576#[serde(default, rename_all = "camelCase")]
577#[non_exhaustive]
578pub struct AuthorizeEnvironmentMetadata {
579 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
580 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
581}
582
583impl AuthorizeEnvironmentMetadata {
584 pub fn new() -> Self {
585 std::default::Default::default()
586 }
587}
588
589impl wkt::message::Message for AuthorizeEnvironmentMetadata {
590 fn typename() -> &'static str {
591 "type.googleapis.com/google.cloud.shell.v1.AuthorizeEnvironmentMetadata"
592 }
593}
594
595#[serde_with::serde_as]
600#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
601#[serde(default, rename_all = "camelCase")]
602#[non_exhaustive]
603pub struct StartEnvironmentMetadata {
604 pub state: crate::model::start_environment_metadata::State,
606
607 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
608 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
609}
610
611impl StartEnvironmentMetadata {
612 pub fn new() -> Self {
613 std::default::Default::default()
614 }
615
616 pub fn set_state<T: std::convert::Into<crate::model::start_environment_metadata::State>>(
618 mut self,
619 v: T,
620 ) -> Self {
621 self.state = v.into();
622 self
623 }
624}
625
626impl wkt::message::Message for StartEnvironmentMetadata {
627 fn typename() -> &'static str {
628 "type.googleapis.com/google.cloud.shell.v1.StartEnvironmentMetadata"
629 }
630}
631
632pub mod start_environment_metadata {
634 #[allow(unused_imports)]
635 use super::*;
636
637 #[derive(Clone, Debug, PartialEq)]
657 #[non_exhaustive]
658 pub enum State {
659 Unspecified,
661 Starting,
664 UnarchivingDisk,
668 AwaitingComputeResources,
673 Finished,
677 UnknownValue(state::UnknownValue),
682 }
683
684 #[doc(hidden)]
685 pub mod state {
686 #[allow(unused_imports)]
687 use super::*;
688 #[derive(Clone, Debug, PartialEq)]
689 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
690 }
691
692 impl State {
693 pub fn value(&self) -> std::option::Option<i32> {
698 match self {
699 Self::Unspecified => std::option::Option::Some(0),
700 Self::Starting => std::option::Option::Some(1),
701 Self::UnarchivingDisk => std::option::Option::Some(2),
702 Self::AwaitingComputeResources => std::option::Option::Some(4),
703 Self::Finished => std::option::Option::Some(3),
704 Self::UnknownValue(u) => u.0.value(),
705 }
706 }
707
708 pub fn name(&self) -> std::option::Option<&str> {
713 match self {
714 Self::Unspecified => std::option::Option::Some("STATE_UNSPECIFIED"),
715 Self::Starting => std::option::Option::Some("STARTING"),
716 Self::UnarchivingDisk => std::option::Option::Some("UNARCHIVING_DISK"),
717 Self::AwaitingComputeResources => {
718 std::option::Option::Some("AWAITING_COMPUTE_RESOURCES")
719 }
720 Self::Finished => std::option::Option::Some("FINISHED"),
721 Self::UnknownValue(u) => u.0.name(),
722 }
723 }
724 }
725
726 impl std::default::Default for State {
727 fn default() -> Self {
728 use std::convert::From;
729 Self::from(0)
730 }
731 }
732
733 impl std::fmt::Display for State {
734 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
735 wkt::internal::display_enum(f, self.name(), self.value())
736 }
737 }
738
739 impl std::convert::From<i32> for State {
740 fn from(value: i32) -> Self {
741 match value {
742 0 => Self::Unspecified,
743 1 => Self::Starting,
744 2 => Self::UnarchivingDisk,
745 3 => Self::Finished,
746 4 => Self::AwaitingComputeResources,
747 _ => Self::UnknownValue(state::UnknownValue(
748 wkt::internal::UnknownEnumValue::Integer(value),
749 )),
750 }
751 }
752 }
753
754 impl std::convert::From<&str> for State {
755 fn from(value: &str) -> Self {
756 use std::string::ToString;
757 match value {
758 "STATE_UNSPECIFIED" => Self::Unspecified,
759 "STARTING" => Self::Starting,
760 "UNARCHIVING_DISK" => Self::UnarchivingDisk,
761 "AWAITING_COMPUTE_RESOURCES" => Self::AwaitingComputeResources,
762 "FINISHED" => Self::Finished,
763 _ => Self::UnknownValue(state::UnknownValue(
764 wkt::internal::UnknownEnumValue::String(value.to_string()),
765 )),
766 }
767 }
768 }
769
770 impl serde::ser::Serialize for State {
771 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
772 where
773 S: serde::Serializer,
774 {
775 match self {
776 Self::Unspecified => serializer.serialize_i32(0),
777 Self::Starting => serializer.serialize_i32(1),
778 Self::UnarchivingDisk => serializer.serialize_i32(2),
779 Self::AwaitingComputeResources => serializer.serialize_i32(4),
780 Self::Finished => serializer.serialize_i32(3),
781 Self::UnknownValue(u) => u.0.serialize(serializer),
782 }
783 }
784 }
785
786 impl<'de> serde::de::Deserialize<'de> for State {
787 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
788 where
789 D: serde::Deserializer<'de>,
790 {
791 deserializer.deserialize_any(wkt::internal::EnumVisitor::<State>::new(
792 ".google.cloud.shell.v1.StartEnvironmentMetadata.State",
793 ))
794 }
795 }
796}
797
798#[serde_with::serde_as]
804#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
805#[serde(default, rename_all = "camelCase")]
806#[non_exhaustive]
807pub struct StartEnvironmentResponse {
808 #[serde(skip_serializing_if = "std::option::Option::is_none")]
810 pub environment: std::option::Option<crate::model::Environment>,
811
812 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
813 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
814}
815
816impl StartEnvironmentResponse {
817 pub fn new() -> Self {
818 std::default::Default::default()
819 }
820
821 pub fn set_environment<
823 T: std::convert::Into<std::option::Option<crate::model::Environment>>,
824 >(
825 mut self,
826 v: T,
827 ) -> Self {
828 self.environment = v.into();
829 self
830 }
831}
832
833impl wkt::message::Message for StartEnvironmentResponse {
834 fn typename() -> &'static str {
835 "type.googleapis.com/google.cloud.shell.v1.StartEnvironmentResponse"
836 }
837}
838
839#[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 AddPublicKeyRequest {
848 #[serde(skip_serializing_if = "std::string::String::is_empty")]
851 pub environment: std::string::String,
852
853 #[serde(skip_serializing_if = "std::string::String::is_empty")]
860 pub key: std::string::String,
861
862 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
863 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
864}
865
866impl AddPublicKeyRequest {
867 pub fn new() -> Self {
868 std::default::Default::default()
869 }
870
871 pub fn set_environment<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
873 self.environment = v.into();
874 self
875 }
876
877 pub fn set_key<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
879 self.key = v.into();
880 self
881 }
882}
883
884impl wkt::message::Message for AddPublicKeyRequest {
885 fn typename() -> &'static str {
886 "type.googleapis.com/google.cloud.shell.v1.AddPublicKeyRequest"
887 }
888}
889
890#[serde_with::serde_as]
895#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
896#[serde(default, rename_all = "camelCase")]
897#[non_exhaustive]
898pub struct AddPublicKeyResponse {
899 #[serde(skip_serializing_if = "std::string::String::is_empty")]
901 pub key: std::string::String,
902
903 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
904 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
905}
906
907impl AddPublicKeyResponse {
908 pub fn new() -> Self {
909 std::default::Default::default()
910 }
911
912 pub fn set_key<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
914 self.key = v.into();
915 self
916 }
917}
918
919impl wkt::message::Message for AddPublicKeyResponse {
920 fn typename() -> &'static str {
921 "type.googleapis.com/google.cloud.shell.v1.AddPublicKeyResponse"
922 }
923}
924
925#[serde_with::serde_as]
930#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
931#[serde(default, rename_all = "camelCase")]
932#[non_exhaustive]
933pub struct AddPublicKeyMetadata {
934 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
935 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
936}
937
938impl AddPublicKeyMetadata {
939 pub fn new() -> Self {
940 std::default::Default::default()
941 }
942}
943
944impl wkt::message::Message for AddPublicKeyMetadata {
945 fn typename() -> &'static str {
946 "type.googleapis.com/google.cloud.shell.v1.AddPublicKeyMetadata"
947 }
948}
949
950#[serde_with::serde_as]
955#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
956#[serde(default, rename_all = "camelCase")]
957#[non_exhaustive]
958pub struct RemovePublicKeyRequest {
959 #[serde(skip_serializing_if = "std::string::String::is_empty")]
962 pub environment: std::string::String,
963
964 #[serde(skip_serializing_if = "std::string::String::is_empty")]
966 pub key: std::string::String,
967
968 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
969 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
970}
971
972impl RemovePublicKeyRequest {
973 pub fn new() -> Self {
974 std::default::Default::default()
975 }
976
977 pub fn set_environment<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
979 self.environment = v.into();
980 self
981 }
982
983 pub fn set_key<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
985 self.key = v.into();
986 self
987 }
988}
989
990impl wkt::message::Message for RemovePublicKeyRequest {
991 fn typename() -> &'static str {
992 "type.googleapis.com/google.cloud.shell.v1.RemovePublicKeyRequest"
993 }
994}
995
996#[serde_with::serde_as]
1001#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1002#[serde(default, rename_all = "camelCase")]
1003#[non_exhaustive]
1004pub struct RemovePublicKeyResponse {
1005 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
1006 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1007}
1008
1009impl RemovePublicKeyResponse {
1010 pub fn new() -> Self {
1011 std::default::Default::default()
1012 }
1013}
1014
1015impl wkt::message::Message for RemovePublicKeyResponse {
1016 fn typename() -> &'static str {
1017 "type.googleapis.com/google.cloud.shell.v1.RemovePublicKeyResponse"
1018 }
1019}
1020
1021#[serde_with::serde_as]
1026#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1027#[serde(default, rename_all = "camelCase")]
1028#[non_exhaustive]
1029pub struct RemovePublicKeyMetadata {
1030 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
1031 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1032}
1033
1034impl RemovePublicKeyMetadata {
1035 pub fn new() -> Self {
1036 std::default::Default::default()
1037 }
1038}
1039
1040impl wkt::message::Message for RemovePublicKeyMetadata {
1041 fn typename() -> &'static str {
1042 "type.googleapis.com/google.cloud.shell.v1.RemovePublicKeyMetadata"
1043 }
1044}
1045
1046#[serde_with::serde_as]
1049#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
1050#[serde(default, rename_all = "camelCase")]
1051#[non_exhaustive]
1052pub struct CloudShellErrorDetails {
1053 pub code: crate::model::cloud_shell_error_details::CloudShellErrorCode,
1055
1056 #[serde(flatten, skip_serializing_if = "serde_json::Map::is_empty")]
1057 _unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
1058}
1059
1060impl CloudShellErrorDetails {
1061 pub fn new() -> Self {
1062 std::default::Default::default()
1063 }
1064
1065 pub fn set_code<
1067 T: std::convert::Into<crate::model::cloud_shell_error_details::CloudShellErrorCode>,
1068 >(
1069 mut self,
1070 v: T,
1071 ) -> Self {
1072 self.code = v.into();
1073 self
1074 }
1075}
1076
1077impl wkt::message::Message for CloudShellErrorDetails {
1078 fn typename() -> &'static str {
1079 "type.googleapis.com/google.cloud.shell.v1.CloudShellErrorDetails"
1080 }
1081}
1082
1083pub mod cloud_shell_error_details {
1085 #[allow(unused_imports)]
1086 use super::*;
1087
1088 #[derive(Clone, Debug, PartialEq)]
1104 #[non_exhaustive]
1105 pub enum CloudShellErrorCode {
1106 Unspecified,
1108 ImageUnavailable,
1111 CloudShellDisabled,
1114 TosViolation,
1117 QuotaExceeded,
1120 EnvironmentUnavailable,
1123 UnknownValue(cloud_shell_error_code::UnknownValue),
1128 }
1129
1130 #[doc(hidden)]
1131 pub mod cloud_shell_error_code {
1132 #[allow(unused_imports)]
1133 use super::*;
1134 #[derive(Clone, Debug, PartialEq)]
1135 pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
1136 }
1137
1138 impl CloudShellErrorCode {
1139 pub fn value(&self) -> std::option::Option<i32> {
1144 match self {
1145 Self::Unspecified => std::option::Option::Some(0),
1146 Self::ImageUnavailable => std::option::Option::Some(1),
1147 Self::CloudShellDisabled => std::option::Option::Some(2),
1148 Self::TosViolation => std::option::Option::Some(4),
1149 Self::QuotaExceeded => std::option::Option::Some(5),
1150 Self::EnvironmentUnavailable => std::option::Option::Some(6),
1151 Self::UnknownValue(u) => u.0.value(),
1152 }
1153 }
1154
1155 pub fn name(&self) -> std::option::Option<&str> {
1160 match self {
1161 Self::Unspecified => {
1162 std::option::Option::Some("CLOUD_SHELL_ERROR_CODE_UNSPECIFIED")
1163 }
1164 Self::ImageUnavailable => std::option::Option::Some("IMAGE_UNAVAILABLE"),
1165 Self::CloudShellDisabled => std::option::Option::Some("CLOUD_SHELL_DISABLED"),
1166 Self::TosViolation => std::option::Option::Some("TOS_VIOLATION"),
1167 Self::QuotaExceeded => std::option::Option::Some("QUOTA_EXCEEDED"),
1168 Self::EnvironmentUnavailable => {
1169 std::option::Option::Some("ENVIRONMENT_UNAVAILABLE")
1170 }
1171 Self::UnknownValue(u) => u.0.name(),
1172 }
1173 }
1174 }
1175
1176 impl std::default::Default for CloudShellErrorCode {
1177 fn default() -> Self {
1178 use std::convert::From;
1179 Self::from(0)
1180 }
1181 }
1182
1183 impl std::fmt::Display for CloudShellErrorCode {
1184 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
1185 wkt::internal::display_enum(f, self.name(), self.value())
1186 }
1187 }
1188
1189 impl std::convert::From<i32> for CloudShellErrorCode {
1190 fn from(value: i32) -> Self {
1191 match value {
1192 0 => Self::Unspecified,
1193 1 => Self::ImageUnavailable,
1194 2 => Self::CloudShellDisabled,
1195 4 => Self::TosViolation,
1196 5 => Self::QuotaExceeded,
1197 6 => Self::EnvironmentUnavailable,
1198 _ => Self::UnknownValue(cloud_shell_error_code::UnknownValue(
1199 wkt::internal::UnknownEnumValue::Integer(value),
1200 )),
1201 }
1202 }
1203 }
1204
1205 impl std::convert::From<&str> for CloudShellErrorCode {
1206 fn from(value: &str) -> Self {
1207 use std::string::ToString;
1208 match value {
1209 "CLOUD_SHELL_ERROR_CODE_UNSPECIFIED" => Self::Unspecified,
1210 "IMAGE_UNAVAILABLE" => Self::ImageUnavailable,
1211 "CLOUD_SHELL_DISABLED" => Self::CloudShellDisabled,
1212 "TOS_VIOLATION" => Self::TosViolation,
1213 "QUOTA_EXCEEDED" => Self::QuotaExceeded,
1214 "ENVIRONMENT_UNAVAILABLE" => Self::EnvironmentUnavailable,
1215 _ => Self::UnknownValue(cloud_shell_error_code::UnknownValue(
1216 wkt::internal::UnknownEnumValue::String(value.to_string()),
1217 )),
1218 }
1219 }
1220 }
1221
1222 impl serde::ser::Serialize for CloudShellErrorCode {
1223 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
1224 where
1225 S: serde::Serializer,
1226 {
1227 match self {
1228 Self::Unspecified => serializer.serialize_i32(0),
1229 Self::ImageUnavailable => serializer.serialize_i32(1),
1230 Self::CloudShellDisabled => serializer.serialize_i32(2),
1231 Self::TosViolation => serializer.serialize_i32(4),
1232 Self::QuotaExceeded => serializer.serialize_i32(5),
1233 Self::EnvironmentUnavailable => serializer.serialize_i32(6),
1234 Self::UnknownValue(u) => u.0.serialize(serializer),
1235 }
1236 }
1237 }
1238
1239 impl<'de> serde::de::Deserialize<'de> for CloudShellErrorCode {
1240 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
1241 where
1242 D: serde::Deserializer<'de>,
1243 {
1244 deserializer.deserialize_any(wkt::internal::EnumVisitor::<CloudShellErrorCode>::new(
1245 ".google.cloud.shell.v1.CloudShellErrorDetails.CloudShellErrorCode",
1246 ))
1247 }
1248 }
1249}