1#[non_exhaustive]
4#[derive(std::clone::Clone, std::cmp::PartialEq)]
5pub struct WatchResponse {
6 pub index: std::option::Option<std::string::String>,
8}
9impl WatchResponse {
10 pub fn index(&self) -> std::option::Option<&str> {
12 self.index.as_deref()
13 }
14}
15impl std::fmt::Debug for WatchResponse {
16 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
17 let mut formatter = f.debug_struct("WatchResponse");
18 formatter.field("index", &self.index);
19 formatter.finish()
20 }
21}
22pub mod watch_response {
24 #[non_exhaustive]
26 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
27 pub struct Builder {
28 pub(crate) index: std::option::Option<std::string::String>,
29 }
30 impl Builder {
31 pub fn index(mut self, input: impl Into<std::string::String>) -> Self {
33 self.index = Some(input.into());
34 self
35 }
36 pub fn set_index(mut self, input: std::option::Option<std::string::String>) -> Self {
38 self.index = input;
39 self
40 }
41 pub fn build(self) -> crate::model::WatchResponse {
43 crate::model::WatchResponse { index: self.index }
44 }
45 }
46}
47impl WatchResponse {
48 pub fn builder() -> crate::model::watch_response::Builder {
50 crate::model::watch_response::Builder::default()
51 }
52}
53
54#[non_exhaustive]
56#[derive(std::clone::Clone, std::cmp::PartialEq)]
57pub struct IdentityHandle {
58 pub identity_id: std::option::Option<std::string::String>,
60 pub display_name: std::option::Option<std::string::String>,
62 pub account_number: std::option::Option<i32>,
64 pub avatar_url: std::option::Option<std::string::String>,
66 pub presence: std::option::Option<crate::model::IdentityPresence>,
68 pub party: std::option::Option<crate::model::PartyHandle>,
70 pub is_registered: std::option::Option<bool>,
72 pub external: std::option::Option<crate::model::IdentityExternalLinks>,
74}
75impl IdentityHandle {
76 pub fn identity_id(&self) -> std::option::Option<&str> {
78 self.identity_id.as_deref()
79 }
80 pub fn display_name(&self) -> std::option::Option<&str> {
82 self.display_name.as_deref()
83 }
84 pub fn account_number(&self) -> std::option::Option<i32> {
86 self.account_number
87 }
88 pub fn avatar_url(&self) -> std::option::Option<&str> {
90 self.avatar_url.as_deref()
91 }
92 pub fn presence(&self) -> std::option::Option<&crate::model::IdentityPresence> {
94 self.presence.as_ref()
95 }
96 pub fn party(&self) -> std::option::Option<&crate::model::PartyHandle> {
98 self.party.as_ref()
99 }
100 pub fn is_registered(&self) -> std::option::Option<bool> {
102 self.is_registered
103 }
104 pub fn external(&self) -> std::option::Option<&crate::model::IdentityExternalLinks> {
106 self.external.as_ref()
107 }
108}
109impl std::fmt::Debug for IdentityHandle {
110 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
111 let mut formatter = f.debug_struct("IdentityHandle");
112 formatter.field("identity_id", &self.identity_id);
113 formatter.field("display_name", &self.display_name);
114 formatter.field("account_number", &self.account_number);
115 formatter.field("avatar_url", &self.avatar_url);
116 formatter.field("presence", &self.presence);
117 formatter.field("party", &self.party);
118 formatter.field("is_registered", &self.is_registered);
119 formatter.field("external", &self.external);
120 formatter.finish()
121 }
122}
123pub mod identity_handle {
125 #[non_exhaustive]
127 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
128 pub struct Builder {
129 pub(crate) identity_id: std::option::Option<std::string::String>,
130 pub(crate) display_name: std::option::Option<std::string::String>,
131 pub(crate) account_number: std::option::Option<i32>,
132 pub(crate) avatar_url: std::option::Option<std::string::String>,
133 pub(crate) presence: std::option::Option<crate::model::IdentityPresence>,
134 pub(crate) party: std::option::Option<crate::model::PartyHandle>,
135 pub(crate) is_registered: std::option::Option<bool>,
136 pub(crate) external: std::option::Option<crate::model::IdentityExternalLinks>,
137 }
138 impl Builder {
139 pub fn identity_id(mut self, input: impl Into<std::string::String>) -> Self {
141 self.identity_id = Some(input.into());
142 self
143 }
144 pub fn set_identity_id(mut self, input: std::option::Option<std::string::String>) -> Self {
146 self.identity_id = input;
147 self
148 }
149 pub fn display_name(mut self, input: impl Into<std::string::String>) -> Self {
151 self.display_name = Some(input.into());
152 self
153 }
154 pub fn set_display_name(mut self, input: std::option::Option<std::string::String>) -> Self {
156 self.display_name = input;
157 self
158 }
159 pub fn account_number(mut self, input: i32) -> Self {
161 self.account_number = Some(input);
162 self
163 }
164 pub fn set_account_number(mut self, input: std::option::Option<i32>) -> Self {
166 self.account_number = input;
167 self
168 }
169 pub fn avatar_url(mut self, input: impl Into<std::string::String>) -> Self {
171 self.avatar_url = Some(input.into());
172 self
173 }
174 pub fn set_avatar_url(mut self, input: std::option::Option<std::string::String>) -> Self {
176 self.avatar_url = input;
177 self
178 }
179 pub fn presence(mut self, input: crate::model::IdentityPresence) -> Self {
181 self.presence = Some(input);
182 self
183 }
184 pub fn set_presence(
186 mut self,
187 input: std::option::Option<crate::model::IdentityPresence>,
188 ) -> Self {
189 self.presence = input;
190 self
191 }
192 pub fn party(mut self, input: crate::model::PartyHandle) -> Self {
194 self.party = Some(input);
195 self
196 }
197 pub fn set_party(mut self, input: std::option::Option<crate::model::PartyHandle>) -> Self {
199 self.party = input;
200 self
201 }
202 pub fn is_registered(mut self, input: bool) -> Self {
204 self.is_registered = Some(input);
205 self
206 }
207 pub fn set_is_registered(mut self, input: std::option::Option<bool>) -> Self {
209 self.is_registered = input;
210 self
211 }
212 pub fn external(mut self, input: crate::model::IdentityExternalLinks) -> Self {
214 self.external = Some(input);
215 self
216 }
217 pub fn set_external(
219 mut self,
220 input: std::option::Option<crate::model::IdentityExternalLinks>,
221 ) -> Self {
222 self.external = input;
223 self
224 }
225 pub fn build(self) -> crate::model::IdentityHandle {
227 crate::model::IdentityHandle {
228 identity_id: self.identity_id,
229 display_name: self.display_name,
230 account_number: self.account_number,
231 avatar_url: self.avatar_url,
232 presence: self.presence,
233 party: self.party,
234 is_registered: self.is_registered,
235 external: self.external,
236 }
237 }
238 }
239}
240impl IdentityHandle {
241 pub fn builder() -> crate::model::identity_handle::Builder {
243 crate::model::identity_handle::Builder::default()
244 }
245}
246
247#[non_exhaustive]
249#[derive(std::clone::Clone, std::cmp::PartialEq)]
250pub struct IdentityExternalLinks {
251 pub profile: std::option::Option<std::string::String>,
253 pub settings: std::option::Option<std::string::String>,
255 pub chat: std::option::Option<std::string::String>,
257}
258impl IdentityExternalLinks {
259 pub fn profile(&self) -> std::option::Option<&str> {
261 self.profile.as_deref()
262 }
263 pub fn settings(&self) -> std::option::Option<&str> {
265 self.settings.as_deref()
266 }
267 pub fn chat(&self) -> std::option::Option<&str> {
269 self.chat.as_deref()
270 }
271}
272impl std::fmt::Debug for IdentityExternalLinks {
273 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
274 let mut formatter = f.debug_struct("IdentityExternalLinks");
275 formatter.field("profile", &self.profile);
276 formatter.field("settings", &self.settings);
277 formatter.field("chat", &self.chat);
278 formatter.finish()
279 }
280}
281pub mod identity_external_links {
283 #[non_exhaustive]
285 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
286 pub struct Builder {
287 pub(crate) profile: std::option::Option<std::string::String>,
288 pub(crate) settings: std::option::Option<std::string::String>,
289 pub(crate) chat: std::option::Option<std::string::String>,
290 }
291 impl Builder {
292 pub fn profile(mut self, input: impl Into<std::string::String>) -> Self {
294 self.profile = Some(input.into());
295 self
296 }
297 pub fn set_profile(mut self, input: std::option::Option<std::string::String>) -> Self {
299 self.profile = input;
300 self
301 }
302 pub fn settings(mut self, input: impl Into<std::string::String>) -> Self {
304 self.settings = Some(input.into());
305 self
306 }
307 pub fn set_settings(mut self, input: std::option::Option<std::string::String>) -> Self {
309 self.settings = input;
310 self
311 }
312 pub fn chat(mut self, input: impl Into<std::string::String>) -> Self {
314 self.chat = Some(input.into());
315 self
316 }
317 pub fn set_chat(mut self, input: std::option::Option<std::string::String>) -> Self {
319 self.chat = input;
320 self
321 }
322 pub fn build(self) -> crate::model::IdentityExternalLinks {
324 crate::model::IdentityExternalLinks {
325 profile: self.profile,
326 settings: self.settings,
327 chat: self.chat,
328 }
329 }
330 }
331}
332impl IdentityExternalLinks {
333 pub fn builder() -> crate::model::identity_external_links::Builder {
335 crate::model::identity_external_links::Builder::default()
336 }
337}
338
339#[non_exhaustive]
341#[derive(std::clone::Clone, std::cmp::PartialEq)]
342pub struct PartyHandle {
343 pub party_id: std::option::Option<std::string::String>,
345 pub create_ts: std::option::Option<aws_smithy_types::DateTime>,
347 pub activity: std::option::Option<crate::model::PartyActivity>,
349 pub external: std::option::Option<crate::model::PartyExternalLinks>,
351}
352impl PartyHandle {
353 pub fn party_id(&self) -> std::option::Option<&str> {
355 self.party_id.as_deref()
356 }
357 pub fn create_ts(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
359 self.create_ts.as_ref()
360 }
361 pub fn activity(&self) -> std::option::Option<&crate::model::PartyActivity> {
363 self.activity.as_ref()
364 }
365 pub fn external(&self) -> std::option::Option<&crate::model::PartyExternalLinks> {
367 self.external.as_ref()
368 }
369}
370impl std::fmt::Debug for PartyHandle {
371 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
372 let mut formatter = f.debug_struct("PartyHandle");
373 formatter.field("party_id", &self.party_id);
374 formatter.field("create_ts", &self.create_ts);
375 formatter.field("activity", &self.activity);
376 formatter.field("external", &self.external);
377 formatter.finish()
378 }
379}
380pub mod party_handle {
382 #[non_exhaustive]
384 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
385 pub struct Builder {
386 pub(crate) party_id: std::option::Option<std::string::String>,
387 pub(crate) create_ts: std::option::Option<aws_smithy_types::DateTime>,
388 pub(crate) activity: std::option::Option<crate::model::PartyActivity>,
389 pub(crate) external: std::option::Option<crate::model::PartyExternalLinks>,
390 }
391 impl Builder {
392 pub fn party_id(mut self, input: impl Into<std::string::String>) -> Self {
394 self.party_id = Some(input.into());
395 self
396 }
397 pub fn set_party_id(mut self, input: std::option::Option<std::string::String>) -> Self {
399 self.party_id = input;
400 self
401 }
402 pub fn create_ts(mut self, input: aws_smithy_types::DateTime) -> Self {
404 self.create_ts = Some(input);
405 self
406 }
407 pub fn set_create_ts(
409 mut self,
410 input: std::option::Option<aws_smithy_types::DateTime>,
411 ) -> Self {
412 self.create_ts = input;
413 self
414 }
415 pub fn activity(mut self, input: crate::model::PartyActivity) -> Self {
417 self.activity = Some(input);
418 self
419 }
420 pub fn set_activity(
422 mut self,
423 input: std::option::Option<crate::model::PartyActivity>,
424 ) -> Self {
425 self.activity = input;
426 self
427 }
428 pub fn external(mut self, input: crate::model::PartyExternalLinks) -> Self {
430 self.external = Some(input);
431 self
432 }
433 pub fn set_external(
435 mut self,
436 input: std::option::Option<crate::model::PartyExternalLinks>,
437 ) -> Self {
438 self.external = input;
439 self
440 }
441 pub fn build(self) -> crate::model::PartyHandle {
443 crate::model::PartyHandle {
444 party_id: self.party_id,
445 create_ts: self.create_ts,
446 activity: self.activity,
447 external: self.external,
448 }
449 }
450 }
451}
452impl PartyHandle {
453 pub fn builder() -> crate::model::party_handle::Builder {
455 crate::model::party_handle::Builder::default()
456 }
457}
458
459#[non_exhaustive]
461#[derive(std::clone::Clone, std::cmp::PartialEq)]
462pub struct PartyExternalLinks {
463 pub chat: std::option::Option<std::string::String>,
465}
466impl PartyExternalLinks {
467 pub fn chat(&self) -> std::option::Option<&str> {
469 self.chat.as_deref()
470 }
471}
472impl std::fmt::Debug for PartyExternalLinks {
473 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
474 let mut formatter = f.debug_struct("PartyExternalLinks");
475 formatter.field("chat", &self.chat);
476 formatter.finish()
477 }
478}
479pub mod party_external_links {
481 #[non_exhaustive]
483 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
484 pub struct Builder {
485 pub(crate) chat: std::option::Option<std::string::String>,
486 }
487 impl Builder {
488 pub fn chat(mut self, input: impl Into<std::string::String>) -> Self {
490 self.chat = Some(input.into());
491 self
492 }
493 pub fn set_chat(mut self, input: std::option::Option<std::string::String>) -> Self {
495 self.chat = input;
496 self
497 }
498 pub fn build(self) -> crate::model::PartyExternalLinks {
500 crate::model::PartyExternalLinks { chat: self.chat }
501 }
502 }
503}
504impl PartyExternalLinks {
505 pub fn builder() -> crate::model::party_external_links::Builder {
507 crate::model::party_external_links::Builder::default()
508 }
509}
510
511#[non_exhaustive]
513#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
514pub enum PartyActivity {
515 Idle(crate::model::PartyActivityIdle),
517 MatchmakerFindingLobby(crate::model::PartyActivityMatchmakerFindingLobby),
519 MatchmakerLobby(crate::model::PartyActivityMatchmakerLobby),
521 #[non_exhaustive]
529 Unknown,
530}
531impl PartyActivity {
532 pub fn as_idle(&self) -> std::result::Result<&crate::model::PartyActivityIdle, &Self> {
535 if let PartyActivity::Idle(val) = &self {
536 Ok(val)
537 } else {
538 Err(self)
539 }
540 }
541 pub fn is_idle(&self) -> bool {
543 self.as_idle().is_ok()
544 }
545 pub fn as_matchmaker_finding_lobby(
548 &self,
549 ) -> std::result::Result<&crate::model::PartyActivityMatchmakerFindingLobby, &Self> {
550 if let PartyActivity::MatchmakerFindingLobby(val) = &self {
551 Ok(val)
552 } else {
553 Err(self)
554 }
555 }
556 pub fn is_matchmaker_finding_lobby(&self) -> bool {
558 self.as_matchmaker_finding_lobby().is_ok()
559 }
560 pub fn as_matchmaker_lobby(
563 &self,
564 ) -> std::result::Result<&crate::model::PartyActivityMatchmakerLobby, &Self> {
565 if let PartyActivity::MatchmakerLobby(val) = &self {
566 Ok(val)
567 } else {
568 Err(self)
569 }
570 }
571 pub fn is_matchmaker_lobby(&self) -> bool {
573 self.as_matchmaker_lobby().is_ok()
574 }
575 pub fn is_unknown(&self) -> bool {
577 matches!(self, Self::Unknown)
578 }
579}
580
581#[non_exhaustive]
583#[derive(std::clone::Clone, std::cmp::PartialEq)]
584pub struct PartyActivityMatchmakerLobby {
585 pub lobby: std::option::Option<crate::model::PartyMatchmakerLobby>,
587 pub game: std::option::Option<crate::model::GameHandle>,
589}
590impl PartyActivityMatchmakerLobby {
591 pub fn lobby(&self) -> std::option::Option<&crate::model::PartyMatchmakerLobby> {
593 self.lobby.as_ref()
594 }
595 pub fn game(&self) -> std::option::Option<&crate::model::GameHandle> {
597 self.game.as_ref()
598 }
599}
600impl std::fmt::Debug for PartyActivityMatchmakerLobby {
601 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
602 let mut formatter = f.debug_struct("PartyActivityMatchmakerLobby");
603 formatter.field("lobby", &self.lobby);
604 formatter.field("game", &self.game);
605 formatter.finish()
606 }
607}
608pub mod party_activity_matchmaker_lobby {
610 #[non_exhaustive]
612 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
613 pub struct Builder {
614 pub(crate) lobby: std::option::Option<crate::model::PartyMatchmakerLobby>,
615 pub(crate) game: std::option::Option<crate::model::GameHandle>,
616 }
617 impl Builder {
618 pub fn lobby(mut self, input: crate::model::PartyMatchmakerLobby) -> Self {
620 self.lobby = Some(input);
621 self
622 }
623 pub fn set_lobby(
625 mut self,
626 input: std::option::Option<crate::model::PartyMatchmakerLobby>,
627 ) -> Self {
628 self.lobby = input;
629 self
630 }
631 pub fn game(mut self, input: crate::model::GameHandle) -> Self {
633 self.game = Some(input);
634 self
635 }
636 pub fn set_game(mut self, input: std::option::Option<crate::model::GameHandle>) -> Self {
638 self.game = input;
639 self
640 }
641 pub fn build(self) -> crate::model::PartyActivityMatchmakerLobby {
643 crate::model::PartyActivityMatchmakerLobby {
644 lobby: self.lobby,
645 game: self.game,
646 }
647 }
648 }
649}
650impl PartyActivityMatchmakerLobby {
651 pub fn builder() -> crate::model::party_activity_matchmaker_lobby::Builder {
653 crate::model::party_activity_matchmaker_lobby::Builder::default()
654 }
655}
656
657#[non_exhaustive]
659#[derive(std::clone::Clone, std::cmp::PartialEq)]
660pub struct GameHandle {
661 pub game_id: std::option::Option<std::string::String>,
663 pub name_id: std::option::Option<std::string::String>,
665 pub display_name: std::option::Option<std::string::String>,
667 pub logo_url: std::option::Option<std::string::String>,
669 pub banner_url: std::option::Option<std::string::String>,
671}
672impl GameHandle {
673 pub fn game_id(&self) -> std::option::Option<&str> {
675 self.game_id.as_deref()
676 }
677 pub fn name_id(&self) -> std::option::Option<&str> {
679 self.name_id.as_deref()
680 }
681 pub fn display_name(&self) -> std::option::Option<&str> {
683 self.display_name.as_deref()
684 }
685 pub fn logo_url(&self) -> std::option::Option<&str> {
687 self.logo_url.as_deref()
688 }
689 pub fn banner_url(&self) -> std::option::Option<&str> {
691 self.banner_url.as_deref()
692 }
693}
694impl std::fmt::Debug for GameHandle {
695 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
696 let mut formatter = f.debug_struct("GameHandle");
697 formatter.field("game_id", &self.game_id);
698 formatter.field("name_id", &self.name_id);
699 formatter.field("display_name", &self.display_name);
700 formatter.field("logo_url", &self.logo_url);
701 formatter.field("banner_url", &self.banner_url);
702 formatter.finish()
703 }
704}
705pub mod game_handle {
707 #[non_exhaustive]
709 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
710 pub struct Builder {
711 pub(crate) game_id: std::option::Option<std::string::String>,
712 pub(crate) name_id: std::option::Option<std::string::String>,
713 pub(crate) display_name: std::option::Option<std::string::String>,
714 pub(crate) logo_url: std::option::Option<std::string::String>,
715 pub(crate) banner_url: std::option::Option<std::string::String>,
716 }
717 impl Builder {
718 pub fn game_id(mut self, input: impl Into<std::string::String>) -> Self {
720 self.game_id = Some(input.into());
721 self
722 }
723 pub fn set_game_id(mut self, input: std::option::Option<std::string::String>) -> Self {
725 self.game_id = input;
726 self
727 }
728 pub fn name_id(mut self, input: impl Into<std::string::String>) -> Self {
730 self.name_id = Some(input.into());
731 self
732 }
733 pub fn set_name_id(mut self, input: std::option::Option<std::string::String>) -> Self {
735 self.name_id = input;
736 self
737 }
738 pub fn display_name(mut self, input: impl Into<std::string::String>) -> Self {
740 self.display_name = Some(input.into());
741 self
742 }
743 pub fn set_display_name(mut self, input: std::option::Option<std::string::String>) -> Self {
745 self.display_name = input;
746 self
747 }
748 pub fn logo_url(mut self, input: impl Into<std::string::String>) -> Self {
750 self.logo_url = Some(input.into());
751 self
752 }
753 pub fn set_logo_url(mut self, input: std::option::Option<std::string::String>) -> Self {
755 self.logo_url = input;
756 self
757 }
758 pub fn banner_url(mut self, input: impl Into<std::string::String>) -> Self {
760 self.banner_url = Some(input.into());
761 self
762 }
763 pub fn set_banner_url(mut self, input: std::option::Option<std::string::String>) -> Self {
765 self.banner_url = input;
766 self
767 }
768 pub fn build(self) -> crate::model::GameHandle {
770 crate::model::GameHandle {
771 game_id: self.game_id,
772 name_id: self.name_id,
773 display_name: self.display_name,
774 logo_url: self.logo_url,
775 banner_url: self.banner_url,
776 }
777 }
778 }
779}
780impl GameHandle {
781 pub fn builder() -> crate::model::game_handle::Builder {
783 crate::model::game_handle::Builder::default()
784 }
785}
786
787#[non_exhaustive]
789#[derive(std::clone::Clone, std::cmp::PartialEq)]
790pub struct PartyMatchmakerLobby {
791 pub lobby_id: std::option::Option<std::string::String>,
793}
794impl PartyMatchmakerLobby {
795 pub fn lobby_id(&self) -> std::option::Option<&str> {
797 self.lobby_id.as_deref()
798 }
799}
800impl std::fmt::Debug for PartyMatchmakerLobby {
801 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
802 let mut formatter = f.debug_struct("PartyMatchmakerLobby");
803 formatter.field("lobby_id", &self.lobby_id);
804 formatter.finish()
805 }
806}
807pub mod party_matchmaker_lobby {
809 #[non_exhaustive]
811 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
812 pub struct Builder {
813 pub(crate) lobby_id: std::option::Option<std::string::String>,
814 }
815 impl Builder {
816 pub fn lobby_id(mut self, input: impl Into<std::string::String>) -> Self {
818 self.lobby_id = Some(input.into());
819 self
820 }
821 pub fn set_lobby_id(mut self, input: std::option::Option<std::string::String>) -> Self {
823 self.lobby_id = input;
824 self
825 }
826 pub fn build(self) -> crate::model::PartyMatchmakerLobby {
828 crate::model::PartyMatchmakerLobby {
829 lobby_id: self.lobby_id,
830 }
831 }
832 }
833}
834impl PartyMatchmakerLobby {
835 pub fn builder() -> crate::model::party_matchmaker_lobby::Builder {
837 crate::model::party_matchmaker_lobby::Builder::default()
838 }
839}
840
841#[non_exhaustive]
843#[derive(std::clone::Clone, std::cmp::PartialEq)]
844pub struct PartyActivityMatchmakerFindingLobby {
845 pub game: std::option::Option<crate::model::GameHandle>,
847}
848impl PartyActivityMatchmakerFindingLobby {
849 pub fn game(&self) -> std::option::Option<&crate::model::GameHandle> {
851 self.game.as_ref()
852 }
853}
854impl std::fmt::Debug for PartyActivityMatchmakerFindingLobby {
855 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
856 let mut formatter = f.debug_struct("PartyActivityMatchmakerFindingLobby");
857 formatter.field("game", &self.game);
858 formatter.finish()
859 }
860}
861pub mod party_activity_matchmaker_finding_lobby {
863 #[non_exhaustive]
865 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
866 pub struct Builder {
867 pub(crate) game: std::option::Option<crate::model::GameHandle>,
868 }
869 impl Builder {
870 pub fn game(mut self, input: crate::model::GameHandle) -> Self {
872 self.game = Some(input);
873 self
874 }
875 pub fn set_game(mut self, input: std::option::Option<crate::model::GameHandle>) -> Self {
877 self.game = input;
878 self
879 }
880 pub fn build(self) -> crate::model::PartyActivityMatchmakerFindingLobby {
882 crate::model::PartyActivityMatchmakerFindingLobby { game: self.game }
883 }
884 }
885}
886impl PartyActivityMatchmakerFindingLobby {
887 pub fn builder() -> crate::model::party_activity_matchmaker_finding_lobby::Builder {
889 crate::model::party_activity_matchmaker_finding_lobby::Builder::default()
890 }
891}
892
893#[non_exhaustive]
895#[derive(std::clone::Clone, std::cmp::PartialEq)]
896pub struct PartyActivityIdle {}
897impl std::fmt::Debug for PartyActivityIdle {
898 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
899 let mut formatter = f.debug_struct("PartyActivityIdle");
900 formatter.finish()
901 }
902}
903pub mod party_activity_idle {
905 #[non_exhaustive]
907 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
908 pub struct Builder {}
909 impl Builder {
910 pub fn build(self) -> crate::model::PartyActivityIdle {
912 crate::model::PartyActivityIdle {}
913 }
914 }
915}
916impl PartyActivityIdle {
917 pub fn builder() -> crate::model::party_activity_idle::Builder {
919 crate::model::party_activity_idle::Builder::default()
920 }
921}
922
923#[non_exhaustive]
925#[derive(std::clone::Clone, std::cmp::PartialEq)]
926pub struct IdentityPresence {
927 pub update_ts: std::option::Option<aws_smithy_types::DateTime>,
929 pub status: std::option::Option<crate::model::IdentityStatus>,
931 pub game_activity: std::option::Option<crate::model::IdentityGameActivity>,
933}
934impl IdentityPresence {
935 pub fn update_ts(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
937 self.update_ts.as_ref()
938 }
939 pub fn status(&self) -> std::option::Option<&crate::model::IdentityStatus> {
941 self.status.as_ref()
942 }
943 pub fn game_activity(&self) -> std::option::Option<&crate::model::IdentityGameActivity> {
945 self.game_activity.as_ref()
946 }
947}
948impl std::fmt::Debug for IdentityPresence {
949 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
950 let mut formatter = f.debug_struct("IdentityPresence");
951 formatter.field("update_ts", &self.update_ts);
952 formatter.field("status", &self.status);
953 formatter.field("game_activity", &self.game_activity);
954 formatter.finish()
955 }
956}
957pub mod identity_presence {
959 #[non_exhaustive]
961 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
962 pub struct Builder {
963 pub(crate) update_ts: std::option::Option<aws_smithy_types::DateTime>,
964 pub(crate) status: std::option::Option<crate::model::IdentityStatus>,
965 pub(crate) game_activity: std::option::Option<crate::model::IdentityGameActivity>,
966 }
967 impl Builder {
968 pub fn update_ts(mut self, input: aws_smithy_types::DateTime) -> Self {
970 self.update_ts = Some(input);
971 self
972 }
973 pub fn set_update_ts(
975 mut self,
976 input: std::option::Option<aws_smithy_types::DateTime>,
977 ) -> Self {
978 self.update_ts = input;
979 self
980 }
981 pub fn status(mut self, input: crate::model::IdentityStatus) -> Self {
983 self.status = Some(input);
984 self
985 }
986 pub fn set_status(
988 mut self,
989 input: std::option::Option<crate::model::IdentityStatus>,
990 ) -> Self {
991 self.status = input;
992 self
993 }
994 pub fn game_activity(mut self, input: crate::model::IdentityGameActivity) -> Self {
996 self.game_activity = Some(input);
997 self
998 }
999 pub fn set_game_activity(
1001 mut self,
1002 input: std::option::Option<crate::model::IdentityGameActivity>,
1003 ) -> Self {
1004 self.game_activity = input;
1005 self
1006 }
1007 pub fn build(self) -> crate::model::IdentityPresence {
1009 crate::model::IdentityPresence {
1010 update_ts: self.update_ts,
1011 status: self.status,
1012 game_activity: self.game_activity,
1013 }
1014 }
1015 }
1016}
1017impl IdentityPresence {
1018 pub fn builder() -> crate::model::identity_presence::Builder {
1020 crate::model::identity_presence::Builder::default()
1021 }
1022}
1023
1024#[non_exhaustive]
1026#[derive(std::clone::Clone, std::cmp::PartialEq)]
1027pub struct IdentityGameActivity {
1028 pub game: std::option::Option<crate::model::GameHandle>,
1030 pub message: std::option::Option<std::string::String>,
1032 pub public_metadata: std::option::Option<aws_smithy_types::Document>,
1034 pub mutual_metadata: std::option::Option<aws_smithy_types::Document>,
1036}
1037impl IdentityGameActivity {
1038 pub fn game(&self) -> std::option::Option<&crate::model::GameHandle> {
1040 self.game.as_ref()
1041 }
1042 pub fn message(&self) -> std::option::Option<&str> {
1044 self.message.as_deref()
1045 }
1046 pub fn public_metadata(&self) -> std::option::Option<&aws_smithy_types::Document> {
1048 self.public_metadata.as_ref()
1049 }
1050 pub fn mutual_metadata(&self) -> std::option::Option<&aws_smithy_types::Document> {
1052 self.mutual_metadata.as_ref()
1053 }
1054}
1055impl std::fmt::Debug for IdentityGameActivity {
1056 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1057 let mut formatter = f.debug_struct("IdentityGameActivity");
1058 formatter.field("game", &self.game);
1059 formatter.field("message", &self.message);
1060 formatter.field("public_metadata", &self.public_metadata);
1061 formatter.field("mutual_metadata", &self.mutual_metadata);
1062 formatter.finish()
1063 }
1064}
1065pub mod identity_game_activity {
1067 #[non_exhaustive]
1069 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
1070 pub struct Builder {
1071 pub(crate) game: std::option::Option<crate::model::GameHandle>,
1072 pub(crate) message: std::option::Option<std::string::String>,
1073 pub(crate) public_metadata: std::option::Option<aws_smithy_types::Document>,
1074 pub(crate) mutual_metadata: std::option::Option<aws_smithy_types::Document>,
1075 }
1076 impl Builder {
1077 pub fn game(mut self, input: crate::model::GameHandle) -> Self {
1079 self.game = Some(input);
1080 self
1081 }
1082 pub fn set_game(mut self, input: std::option::Option<crate::model::GameHandle>) -> Self {
1084 self.game = input;
1085 self
1086 }
1087 pub fn message(mut self, input: impl Into<std::string::String>) -> Self {
1089 self.message = Some(input.into());
1090 self
1091 }
1092 pub fn set_message(mut self, input: std::option::Option<std::string::String>) -> Self {
1094 self.message = input;
1095 self
1096 }
1097 pub fn public_metadata(mut self, input: aws_smithy_types::Document) -> Self {
1099 self.public_metadata = Some(input);
1100 self
1101 }
1102 pub fn set_public_metadata(
1104 mut self,
1105 input: std::option::Option<aws_smithy_types::Document>,
1106 ) -> Self {
1107 self.public_metadata = input;
1108 self
1109 }
1110 pub fn mutual_metadata(mut self, input: aws_smithy_types::Document) -> Self {
1112 self.mutual_metadata = Some(input);
1113 self
1114 }
1115 pub fn set_mutual_metadata(
1117 mut self,
1118 input: std::option::Option<aws_smithy_types::Document>,
1119 ) -> Self {
1120 self.mutual_metadata = input;
1121 self
1122 }
1123 pub fn build(self) -> crate::model::IdentityGameActivity {
1125 crate::model::IdentityGameActivity {
1126 game: self.game,
1127 message: self.message,
1128 public_metadata: self.public_metadata,
1129 mutual_metadata: self.mutual_metadata,
1130 }
1131 }
1132 }
1133}
1134impl IdentityGameActivity {
1135 pub fn builder() -> crate::model::identity_game_activity::Builder {
1137 crate::model::identity_game_activity::Builder::default()
1138 }
1139}
1140
1141#[non_exhaustive]
1144#[derive(
1145 std::clone::Clone,
1146 std::cmp::Eq,
1147 std::cmp::Ord,
1148 std::cmp::PartialEq,
1149 std::cmp::PartialOrd,
1150 std::fmt::Debug,
1151 std::hash::Hash,
1152)]
1153pub enum IdentityStatus {
1154 #[allow(missing_docs)] Away,
1156 #[allow(missing_docs)] Offline,
1158 #[allow(missing_docs)] Online,
1160 Unknown(String),
1162}
1163impl std::convert::From<&str> for IdentityStatus {
1164 fn from(s: &str) -> Self {
1165 match s {
1166 "away" => IdentityStatus::Away,
1167 "offline" => IdentityStatus::Offline,
1168 "online" => IdentityStatus::Online,
1169 other => IdentityStatus::Unknown(other.to_owned()),
1170 }
1171 }
1172}
1173impl std::str::FromStr for IdentityStatus {
1174 type Err = std::convert::Infallible;
1175
1176 fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
1177 Ok(IdentityStatus::from(s))
1178 }
1179}
1180impl IdentityStatus {
1181 pub fn as_str(&self) -> &str {
1183 match self {
1184 IdentityStatus::Away => "away",
1185 IdentityStatus::Offline => "offline",
1186 IdentityStatus::Online => "online",
1187 IdentityStatus::Unknown(s) => s.as_ref(),
1188 }
1189 }
1190 pub fn values() -> &'static [&'static str] {
1192 &["away", "offline", "online"]
1193 }
1194}
1195impl AsRef<str> for IdentityStatus {
1196 fn as_ref(&self) -> &str {
1197 self.as_str()
1198 }
1199}
1200
1201#[non_exhaustive]
1203#[derive(std::clone::Clone, std::cmp::PartialEq)]
1204pub struct GroupSummary {
1205 pub group_id: std::option::Option<std::string::String>,
1207 pub display_name: std::option::Option<std::string::String>,
1209 pub avatar_url: std::option::Option<std::string::String>,
1211 pub external: std::option::Option<crate::model::GroupExternalLinks>,
1213 pub is_developer: std::option::Option<bool>,
1215 pub bio: std::option::Option<std::string::String>,
1217 pub is_current_identity_member: std::option::Option<bool>,
1219 pub publicity: std::option::Option<crate::model::GroupPublicity>,
1221 pub member_count: std::option::Option<i32>,
1223}
1224impl GroupSummary {
1225 pub fn group_id(&self) -> std::option::Option<&str> {
1227 self.group_id.as_deref()
1228 }
1229 pub fn display_name(&self) -> std::option::Option<&str> {
1231 self.display_name.as_deref()
1232 }
1233 pub fn avatar_url(&self) -> std::option::Option<&str> {
1235 self.avatar_url.as_deref()
1236 }
1237 pub fn external(&self) -> std::option::Option<&crate::model::GroupExternalLinks> {
1239 self.external.as_ref()
1240 }
1241 pub fn is_developer(&self) -> std::option::Option<bool> {
1243 self.is_developer
1244 }
1245 pub fn bio(&self) -> std::option::Option<&str> {
1247 self.bio.as_deref()
1248 }
1249 pub fn is_current_identity_member(&self) -> std::option::Option<bool> {
1251 self.is_current_identity_member
1252 }
1253 pub fn publicity(&self) -> std::option::Option<&crate::model::GroupPublicity> {
1255 self.publicity.as_ref()
1256 }
1257 pub fn member_count(&self) -> std::option::Option<i32> {
1259 self.member_count
1260 }
1261}
1262impl std::fmt::Debug for GroupSummary {
1263 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1264 let mut formatter = f.debug_struct("GroupSummary");
1265 formatter.field("group_id", &self.group_id);
1266 formatter.field("display_name", &self.display_name);
1267 formatter.field("avatar_url", &self.avatar_url);
1268 formatter.field("external", &self.external);
1269 formatter.field("is_developer", &self.is_developer);
1270 formatter.field("bio", &self.bio);
1271 formatter.field(
1272 "is_current_identity_member",
1273 &self.is_current_identity_member,
1274 );
1275 formatter.field("publicity", &self.publicity);
1276 formatter.field("member_count", &self.member_count);
1277 formatter.finish()
1278 }
1279}
1280pub mod group_summary {
1282 #[non_exhaustive]
1284 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
1285 pub struct Builder {
1286 pub(crate) group_id: std::option::Option<std::string::String>,
1287 pub(crate) display_name: std::option::Option<std::string::String>,
1288 pub(crate) avatar_url: std::option::Option<std::string::String>,
1289 pub(crate) external: std::option::Option<crate::model::GroupExternalLinks>,
1290 pub(crate) is_developer: std::option::Option<bool>,
1291 pub(crate) bio: std::option::Option<std::string::String>,
1292 pub(crate) is_current_identity_member: std::option::Option<bool>,
1293 pub(crate) publicity: std::option::Option<crate::model::GroupPublicity>,
1294 pub(crate) member_count: std::option::Option<i32>,
1295 }
1296 impl Builder {
1297 pub fn group_id(mut self, input: impl Into<std::string::String>) -> Self {
1299 self.group_id = Some(input.into());
1300 self
1301 }
1302 pub fn set_group_id(mut self, input: std::option::Option<std::string::String>) -> Self {
1304 self.group_id = input;
1305 self
1306 }
1307 pub fn display_name(mut self, input: impl Into<std::string::String>) -> Self {
1309 self.display_name = Some(input.into());
1310 self
1311 }
1312 pub fn set_display_name(mut self, input: std::option::Option<std::string::String>) -> Self {
1314 self.display_name = input;
1315 self
1316 }
1317 pub fn avatar_url(mut self, input: impl Into<std::string::String>) -> Self {
1319 self.avatar_url = Some(input.into());
1320 self
1321 }
1322 pub fn set_avatar_url(mut self, input: std::option::Option<std::string::String>) -> Self {
1324 self.avatar_url = input;
1325 self
1326 }
1327 pub fn external(mut self, input: crate::model::GroupExternalLinks) -> Self {
1329 self.external = Some(input);
1330 self
1331 }
1332 pub fn set_external(
1334 mut self,
1335 input: std::option::Option<crate::model::GroupExternalLinks>,
1336 ) -> Self {
1337 self.external = input;
1338 self
1339 }
1340 pub fn is_developer(mut self, input: bool) -> Self {
1342 self.is_developer = Some(input);
1343 self
1344 }
1345 pub fn set_is_developer(mut self, input: std::option::Option<bool>) -> Self {
1347 self.is_developer = input;
1348 self
1349 }
1350 pub fn bio(mut self, input: impl Into<std::string::String>) -> Self {
1352 self.bio = Some(input.into());
1353 self
1354 }
1355 pub fn set_bio(mut self, input: std::option::Option<std::string::String>) -> Self {
1357 self.bio = input;
1358 self
1359 }
1360 pub fn is_current_identity_member(mut self, input: bool) -> Self {
1362 self.is_current_identity_member = Some(input);
1363 self
1364 }
1365 pub fn set_is_current_identity_member(mut self, input: std::option::Option<bool>) -> Self {
1367 self.is_current_identity_member = input;
1368 self
1369 }
1370 pub fn publicity(mut self, input: crate::model::GroupPublicity) -> Self {
1372 self.publicity = Some(input);
1373 self
1374 }
1375 pub fn set_publicity(
1377 mut self,
1378 input: std::option::Option<crate::model::GroupPublicity>,
1379 ) -> Self {
1380 self.publicity = input;
1381 self
1382 }
1383 pub fn member_count(mut self, input: i32) -> Self {
1385 self.member_count = Some(input);
1386 self
1387 }
1388 pub fn set_member_count(mut self, input: std::option::Option<i32>) -> Self {
1390 self.member_count = input;
1391 self
1392 }
1393 pub fn build(self) -> crate::model::GroupSummary {
1395 crate::model::GroupSummary {
1396 group_id: self.group_id,
1397 display_name: self.display_name,
1398 avatar_url: self.avatar_url,
1399 external: self.external,
1400 is_developer: self.is_developer,
1401 bio: self.bio,
1402 is_current_identity_member: self.is_current_identity_member,
1403 publicity: self.publicity,
1404 member_count: self.member_count,
1405 }
1406 }
1407 }
1408}
1409impl GroupSummary {
1410 pub fn builder() -> crate::model::group_summary::Builder {
1412 crate::model::group_summary::Builder::default()
1413 }
1414}
1415
1416#[non_exhaustive]
1418#[derive(
1419 std::clone::Clone,
1420 std::cmp::Eq,
1421 std::cmp::Ord,
1422 std::cmp::PartialEq,
1423 std::cmp::PartialOrd,
1424 std::fmt::Debug,
1425 std::hash::Hash,
1426)]
1427pub enum GroupPublicity {
1428 #[allow(missing_docs)] Closed,
1430 #[allow(missing_docs)] Open,
1432 Unknown(String),
1434}
1435impl std::convert::From<&str> for GroupPublicity {
1436 fn from(s: &str) -> Self {
1437 match s {
1438 "closed" => GroupPublicity::Closed,
1439 "open" => GroupPublicity::Open,
1440 other => GroupPublicity::Unknown(other.to_owned()),
1441 }
1442 }
1443}
1444impl std::str::FromStr for GroupPublicity {
1445 type Err = std::convert::Infallible;
1446
1447 fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
1448 Ok(GroupPublicity::from(s))
1449 }
1450}
1451impl GroupPublicity {
1452 pub fn as_str(&self) -> &str {
1454 match self {
1455 GroupPublicity::Closed => "closed",
1456 GroupPublicity::Open => "open",
1457 GroupPublicity::Unknown(s) => s.as_ref(),
1458 }
1459 }
1460 pub fn values() -> &'static [&'static str] {
1462 &["closed", "open"]
1463 }
1464}
1465impl AsRef<str> for GroupPublicity {
1466 fn as_ref(&self) -> &str {
1467 self.as_str()
1468 }
1469}
1470
1471#[non_exhaustive]
1473#[derive(std::clone::Clone, std::cmp::PartialEq)]
1474pub struct GroupExternalLinks {
1475 pub profile: std::option::Option<std::string::String>,
1477 pub chat: std::option::Option<std::string::String>,
1479}
1480impl GroupExternalLinks {
1481 pub fn profile(&self) -> std::option::Option<&str> {
1483 self.profile.as_deref()
1484 }
1485 pub fn chat(&self) -> std::option::Option<&str> {
1487 self.chat.as_deref()
1488 }
1489}
1490impl std::fmt::Debug for GroupExternalLinks {
1491 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1492 let mut formatter = f.debug_struct("GroupExternalLinks");
1493 formatter.field("profile", &self.profile);
1494 formatter.field("chat", &self.chat);
1495 formatter.finish()
1496 }
1497}
1498pub mod group_external_links {
1500 #[non_exhaustive]
1502 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
1503 pub struct Builder {
1504 pub(crate) profile: std::option::Option<std::string::String>,
1505 pub(crate) chat: std::option::Option<std::string::String>,
1506 }
1507 impl Builder {
1508 pub fn profile(mut self, input: impl Into<std::string::String>) -> Self {
1510 self.profile = Some(input.into());
1511 self
1512 }
1513 pub fn set_profile(mut self, input: std::option::Option<std::string::String>) -> Self {
1515 self.profile = input;
1516 self
1517 }
1518 pub fn chat(mut self, input: impl Into<std::string::String>) -> Self {
1520 self.chat = Some(input.into());
1521 self
1522 }
1523 pub fn set_chat(mut self, input: std::option::Option<std::string::String>) -> Self {
1525 self.chat = input;
1526 self
1527 }
1528 pub fn build(self) -> crate::model::GroupExternalLinks {
1530 crate::model::GroupExternalLinks {
1531 profile: self.profile,
1532 chat: self.chat,
1533 }
1534 }
1535 }
1536}
1537impl GroupExternalLinks {
1538 pub fn builder() -> crate::model::group_external_links::Builder {
1540 crate::model::group_external_links::Builder::default()
1541 }
1542}
1543
1544#[non_exhaustive]
1546#[derive(std::clone::Clone, std::cmp::PartialEq)]
1547pub struct PartySummary {
1548 pub party_id: std::option::Option<std::string::String>,
1550 pub create_ts: std::option::Option<aws_smithy_types::DateTime>,
1552 pub activity: std::option::Option<crate::model::PartyActivity>,
1554 pub external: std::option::Option<crate::model::PartyExternalLinks>,
1556 #[allow(missing_docs)] pub publicity: std::option::Option<crate::model::PartyPublicity>,
1558 pub party_size: std::option::Option<i32>,
1560 pub members: std::option::Option<std::vec::Vec<crate::model::PartyMemberSummary>>,
1562 pub thread_id: std::option::Option<std::string::String>,
1564}
1565impl PartySummary {
1566 pub fn party_id(&self) -> std::option::Option<&str> {
1568 self.party_id.as_deref()
1569 }
1570 pub fn create_ts(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
1572 self.create_ts.as_ref()
1573 }
1574 pub fn activity(&self) -> std::option::Option<&crate::model::PartyActivity> {
1576 self.activity.as_ref()
1577 }
1578 pub fn external(&self) -> std::option::Option<&crate::model::PartyExternalLinks> {
1580 self.external.as_ref()
1581 }
1582 #[allow(missing_docs)] pub fn publicity(&self) -> std::option::Option<&crate::model::PartyPublicity> {
1584 self.publicity.as_ref()
1585 }
1586 pub fn party_size(&self) -> std::option::Option<i32> {
1588 self.party_size
1589 }
1590 pub fn members(&self) -> std::option::Option<&[crate::model::PartyMemberSummary]> {
1592 self.members.as_deref()
1593 }
1594 pub fn thread_id(&self) -> std::option::Option<&str> {
1596 self.thread_id.as_deref()
1597 }
1598}
1599impl std::fmt::Debug for PartySummary {
1600 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1601 let mut formatter = f.debug_struct("PartySummary");
1602 formatter.field("party_id", &self.party_id);
1603 formatter.field("create_ts", &self.create_ts);
1604 formatter.field("activity", &self.activity);
1605 formatter.field("external", &self.external);
1606 formatter.field("publicity", &self.publicity);
1607 formatter.field("party_size", &self.party_size);
1608 formatter.field("members", &self.members);
1609 formatter.field("thread_id", &self.thread_id);
1610 formatter.finish()
1611 }
1612}
1613pub mod party_summary {
1615 #[non_exhaustive]
1617 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
1618 pub struct Builder {
1619 pub(crate) party_id: std::option::Option<std::string::String>,
1620 pub(crate) create_ts: std::option::Option<aws_smithy_types::DateTime>,
1621 pub(crate) activity: std::option::Option<crate::model::PartyActivity>,
1622 pub(crate) external: std::option::Option<crate::model::PartyExternalLinks>,
1623 pub(crate) publicity: std::option::Option<crate::model::PartyPublicity>,
1624 pub(crate) party_size: std::option::Option<i32>,
1625 pub(crate) members: std::option::Option<std::vec::Vec<crate::model::PartyMemberSummary>>,
1626 pub(crate) thread_id: std::option::Option<std::string::String>,
1627 }
1628 impl Builder {
1629 pub fn party_id(mut self, input: impl Into<std::string::String>) -> Self {
1631 self.party_id = Some(input.into());
1632 self
1633 }
1634 pub fn set_party_id(mut self, input: std::option::Option<std::string::String>) -> Self {
1636 self.party_id = input;
1637 self
1638 }
1639 pub fn create_ts(mut self, input: aws_smithy_types::DateTime) -> Self {
1641 self.create_ts = Some(input);
1642 self
1643 }
1644 pub fn set_create_ts(
1646 mut self,
1647 input: std::option::Option<aws_smithy_types::DateTime>,
1648 ) -> Self {
1649 self.create_ts = input;
1650 self
1651 }
1652 pub fn activity(mut self, input: crate::model::PartyActivity) -> Self {
1654 self.activity = Some(input);
1655 self
1656 }
1657 pub fn set_activity(
1659 mut self,
1660 input: std::option::Option<crate::model::PartyActivity>,
1661 ) -> Self {
1662 self.activity = input;
1663 self
1664 }
1665 pub fn external(mut self, input: crate::model::PartyExternalLinks) -> Self {
1667 self.external = Some(input);
1668 self
1669 }
1670 pub fn set_external(
1672 mut self,
1673 input: std::option::Option<crate::model::PartyExternalLinks>,
1674 ) -> Self {
1675 self.external = input;
1676 self
1677 }
1678 #[allow(missing_docs)] pub fn publicity(mut self, input: crate::model::PartyPublicity) -> Self {
1680 self.publicity = Some(input);
1681 self
1682 }
1683 #[allow(missing_docs)] pub fn set_publicity(
1685 mut self,
1686 input: std::option::Option<crate::model::PartyPublicity>,
1687 ) -> Self {
1688 self.publicity = input;
1689 self
1690 }
1691 pub fn party_size(mut self, input: i32) -> Self {
1693 self.party_size = Some(input);
1694 self
1695 }
1696 pub fn set_party_size(mut self, input: std::option::Option<i32>) -> Self {
1698 self.party_size = input;
1699 self
1700 }
1701 pub fn members(mut self, input: crate::model::PartyMemberSummary) -> Self {
1707 let mut v = self.members.unwrap_or_default();
1708 v.push(input);
1709 self.members = Some(v);
1710 self
1711 }
1712 pub fn set_members(
1714 mut self,
1715 input: std::option::Option<std::vec::Vec<crate::model::PartyMemberSummary>>,
1716 ) -> Self {
1717 self.members = input;
1718 self
1719 }
1720 pub fn thread_id(mut self, input: impl Into<std::string::String>) -> Self {
1722 self.thread_id = Some(input.into());
1723 self
1724 }
1725 pub fn set_thread_id(mut self, input: std::option::Option<std::string::String>) -> Self {
1727 self.thread_id = input;
1728 self
1729 }
1730 pub fn build(self) -> crate::model::PartySummary {
1732 crate::model::PartySummary {
1733 party_id: self.party_id,
1734 create_ts: self.create_ts,
1735 activity: self.activity,
1736 external: self.external,
1737 publicity: self.publicity,
1738 party_size: self.party_size,
1739 members: self.members,
1740 thread_id: self.thread_id,
1741 }
1742 }
1743 }
1744}
1745impl PartySummary {
1746 pub fn builder() -> crate::model::party_summary::Builder {
1748 crate::model::party_summary::Builder::default()
1749 }
1750}
1751
1752#[non_exhaustive]
1754#[derive(std::clone::Clone, std::cmp::PartialEq)]
1755pub struct PartyMemberSummary {
1756 pub identity: std::option::Option<crate::model::IdentityHandle>,
1758 pub is_leader: std::option::Option<bool>,
1760 pub join_ts: std::option::Option<aws_smithy_types::DateTime>,
1762 pub state: std::option::Option<crate::model::PartyMemberState>,
1764}
1765impl PartyMemberSummary {
1766 pub fn identity(&self) -> std::option::Option<&crate::model::IdentityHandle> {
1768 self.identity.as_ref()
1769 }
1770 pub fn is_leader(&self) -> std::option::Option<bool> {
1772 self.is_leader
1773 }
1774 pub fn join_ts(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
1776 self.join_ts.as_ref()
1777 }
1778 pub fn state(&self) -> std::option::Option<&crate::model::PartyMemberState> {
1780 self.state.as_ref()
1781 }
1782}
1783impl std::fmt::Debug for PartyMemberSummary {
1784 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1785 let mut formatter = f.debug_struct("PartyMemberSummary");
1786 formatter.field("identity", &self.identity);
1787 formatter.field("is_leader", &self.is_leader);
1788 formatter.field("join_ts", &self.join_ts);
1789 formatter.field("state", &self.state);
1790 formatter.finish()
1791 }
1792}
1793pub mod party_member_summary {
1795 #[non_exhaustive]
1797 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
1798 pub struct Builder {
1799 pub(crate) identity: std::option::Option<crate::model::IdentityHandle>,
1800 pub(crate) is_leader: std::option::Option<bool>,
1801 pub(crate) join_ts: std::option::Option<aws_smithy_types::DateTime>,
1802 pub(crate) state: std::option::Option<crate::model::PartyMemberState>,
1803 }
1804 impl Builder {
1805 pub fn identity(mut self, input: crate::model::IdentityHandle) -> Self {
1807 self.identity = Some(input);
1808 self
1809 }
1810 pub fn set_identity(
1812 mut self,
1813 input: std::option::Option<crate::model::IdentityHandle>,
1814 ) -> Self {
1815 self.identity = input;
1816 self
1817 }
1818 pub fn is_leader(mut self, input: bool) -> Self {
1820 self.is_leader = Some(input);
1821 self
1822 }
1823 pub fn set_is_leader(mut self, input: std::option::Option<bool>) -> Self {
1825 self.is_leader = input;
1826 self
1827 }
1828 pub fn join_ts(mut self, input: aws_smithy_types::DateTime) -> Self {
1830 self.join_ts = Some(input);
1831 self
1832 }
1833 pub fn set_join_ts(
1835 mut self,
1836 input: std::option::Option<aws_smithy_types::DateTime>,
1837 ) -> Self {
1838 self.join_ts = input;
1839 self
1840 }
1841 pub fn state(mut self, input: crate::model::PartyMemberState) -> Self {
1843 self.state = Some(input);
1844 self
1845 }
1846 pub fn set_state(
1848 mut self,
1849 input: std::option::Option<crate::model::PartyMemberState>,
1850 ) -> Self {
1851 self.state = input;
1852 self
1853 }
1854 pub fn build(self) -> crate::model::PartyMemberSummary {
1856 crate::model::PartyMemberSummary {
1857 identity: self.identity,
1858 is_leader: self.is_leader,
1859 join_ts: self.join_ts,
1860 state: self.state,
1861 }
1862 }
1863 }
1864}
1865impl PartyMemberSummary {
1866 pub fn builder() -> crate::model::party_member_summary::Builder {
1868 crate::model::party_member_summary::Builder::default()
1869 }
1870}
1871
1872#[non_exhaustive]
1874#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
1875pub enum PartyMemberState {
1876 Idle(crate::model::PartyMemberStateIdle),
1878 MatchmakerFindingLobby(crate::model::PartyMemberStateMatchmakerFindingLobby),
1880 MatchmakerLobby(crate::model::PartyMemberStateMatchmakerLobby),
1882 MatchmakerPending(crate::model::PartyMemberStateMatchmakerPending),
1884 #[non_exhaustive]
1892 Unknown,
1893}
1894impl PartyMemberState {
1895 pub fn as_idle(&self) -> std::result::Result<&crate::model::PartyMemberStateIdle, &Self> {
1898 if let PartyMemberState::Idle(val) = &self {
1899 Ok(val)
1900 } else {
1901 Err(self)
1902 }
1903 }
1904 pub fn is_idle(&self) -> bool {
1906 self.as_idle().is_ok()
1907 }
1908 pub fn as_matchmaker_finding_lobby(
1911 &self,
1912 ) -> std::result::Result<&crate::model::PartyMemberStateMatchmakerFindingLobby, &Self> {
1913 if let PartyMemberState::MatchmakerFindingLobby(val) = &self {
1914 Ok(val)
1915 } else {
1916 Err(self)
1917 }
1918 }
1919 pub fn is_matchmaker_finding_lobby(&self) -> bool {
1921 self.as_matchmaker_finding_lobby().is_ok()
1922 }
1923 pub fn as_matchmaker_lobby(
1926 &self,
1927 ) -> std::result::Result<&crate::model::PartyMemberStateMatchmakerLobby, &Self> {
1928 if let PartyMemberState::MatchmakerLobby(val) = &self {
1929 Ok(val)
1930 } else {
1931 Err(self)
1932 }
1933 }
1934 pub fn is_matchmaker_lobby(&self) -> bool {
1936 self.as_matchmaker_lobby().is_ok()
1937 }
1938 pub fn as_matchmaker_pending(
1941 &self,
1942 ) -> std::result::Result<&crate::model::PartyMemberStateMatchmakerPending, &Self> {
1943 if let PartyMemberState::MatchmakerPending(val) = &self {
1944 Ok(val)
1945 } else {
1946 Err(self)
1947 }
1948 }
1949 pub fn is_matchmaker_pending(&self) -> bool {
1951 self.as_matchmaker_pending().is_ok()
1952 }
1953 pub fn is_unknown(&self) -> bool {
1955 matches!(self, Self::Unknown)
1956 }
1957}
1958
1959#[non_exhaustive]
1961#[derive(std::clone::Clone, std::cmp::PartialEq)]
1962pub struct PartyMemberStateMatchmakerLobby {
1963 pub player_id: std::option::Option<std::string::String>,
1965}
1966impl PartyMemberStateMatchmakerLobby {
1967 pub fn player_id(&self) -> std::option::Option<&str> {
1969 self.player_id.as_deref()
1970 }
1971}
1972impl std::fmt::Debug for PartyMemberStateMatchmakerLobby {
1973 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1974 let mut formatter = f.debug_struct("PartyMemberStateMatchmakerLobby");
1975 formatter.field("player_id", &self.player_id);
1976 formatter.finish()
1977 }
1978}
1979pub mod party_member_state_matchmaker_lobby {
1981 #[non_exhaustive]
1983 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
1984 pub struct Builder {
1985 pub(crate) player_id: std::option::Option<std::string::String>,
1986 }
1987 impl Builder {
1988 pub fn player_id(mut self, input: impl Into<std::string::String>) -> Self {
1990 self.player_id = Some(input.into());
1991 self
1992 }
1993 pub fn set_player_id(mut self, input: std::option::Option<std::string::String>) -> Self {
1995 self.player_id = input;
1996 self
1997 }
1998 pub fn build(self) -> crate::model::PartyMemberStateMatchmakerLobby {
2000 crate::model::PartyMemberStateMatchmakerLobby {
2001 player_id: self.player_id,
2002 }
2003 }
2004 }
2005}
2006impl PartyMemberStateMatchmakerLobby {
2007 pub fn builder() -> crate::model::party_member_state_matchmaker_lobby::Builder {
2009 crate::model::party_member_state_matchmaker_lobby::Builder::default()
2010 }
2011}
2012
2013#[non_exhaustive]
2015#[derive(std::clone::Clone, std::cmp::PartialEq)]
2016pub struct PartyMemberStateMatchmakerFindingLobby {}
2017impl std::fmt::Debug for PartyMemberStateMatchmakerFindingLobby {
2018 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2019 let mut formatter = f.debug_struct("PartyMemberStateMatchmakerFindingLobby");
2020 formatter.finish()
2021 }
2022}
2023pub mod party_member_state_matchmaker_finding_lobby {
2025 #[non_exhaustive]
2027 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
2028 pub struct Builder {}
2029 impl Builder {
2030 pub fn build(self) -> crate::model::PartyMemberStateMatchmakerFindingLobby {
2032 crate::model::PartyMemberStateMatchmakerFindingLobby {}
2033 }
2034 }
2035}
2036impl PartyMemberStateMatchmakerFindingLobby {
2037 pub fn builder() -> crate::model::party_member_state_matchmaker_finding_lobby::Builder {
2039 crate::model::party_member_state_matchmaker_finding_lobby::Builder::default()
2040 }
2041}
2042
2043#[non_exhaustive]
2045#[derive(std::clone::Clone, std::cmp::PartialEq)]
2046pub struct PartyMemberStateMatchmakerPending {}
2047impl std::fmt::Debug for PartyMemberStateMatchmakerPending {
2048 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2049 let mut formatter = f.debug_struct("PartyMemberStateMatchmakerPending");
2050 formatter.finish()
2051 }
2052}
2053pub mod party_member_state_matchmaker_pending {
2055 #[non_exhaustive]
2057 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
2058 pub struct Builder {}
2059 impl Builder {
2060 pub fn build(self) -> crate::model::PartyMemberStateMatchmakerPending {
2062 crate::model::PartyMemberStateMatchmakerPending {}
2063 }
2064 }
2065}
2066impl PartyMemberStateMatchmakerPending {
2067 pub fn builder() -> crate::model::party_member_state_matchmaker_pending::Builder {
2069 crate::model::party_member_state_matchmaker_pending::Builder::default()
2070 }
2071}
2072
2073#[non_exhaustive]
2075#[derive(std::clone::Clone, std::cmp::PartialEq)]
2076pub struct PartyMemberStateIdle {}
2077impl std::fmt::Debug for PartyMemberStateIdle {
2078 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2079 let mut formatter = f.debug_struct("PartyMemberStateIdle");
2080 formatter.finish()
2081 }
2082}
2083pub mod party_member_state_idle {
2085 #[non_exhaustive]
2087 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
2088 pub struct Builder {}
2089 impl Builder {
2090 pub fn build(self) -> crate::model::PartyMemberStateIdle {
2092 crate::model::PartyMemberStateIdle {}
2093 }
2094 }
2095}
2096impl PartyMemberStateIdle {
2097 pub fn builder() -> crate::model::party_member_state_idle::Builder {
2099 crate::model::party_member_state_idle::Builder::default()
2100 }
2101}
2102
2103#[allow(missing_docs)] #[non_exhaustive]
2105#[derive(std::clone::Clone, std::cmp::PartialEq)]
2106pub struct PartyPublicity {
2107 #[allow(missing_docs)] pub public: std::option::Option<crate::model::PartyPublicityLevel>,
2109 #[allow(missing_docs)] pub mutual_followers: std::option::Option<crate::model::PartyPublicityLevel>,
2111 #[allow(missing_docs)] pub groups: std::option::Option<crate::model::PartyPublicityLevel>,
2113}
2114impl PartyPublicity {
2115 #[allow(missing_docs)] pub fn public(&self) -> std::option::Option<&crate::model::PartyPublicityLevel> {
2117 self.public.as_ref()
2118 }
2119 #[allow(missing_docs)] pub fn mutual_followers(&self) -> std::option::Option<&crate::model::PartyPublicityLevel> {
2121 self.mutual_followers.as_ref()
2122 }
2123 #[allow(missing_docs)] pub fn groups(&self) -> std::option::Option<&crate::model::PartyPublicityLevel> {
2125 self.groups.as_ref()
2126 }
2127}
2128impl std::fmt::Debug for PartyPublicity {
2129 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2130 let mut formatter = f.debug_struct("PartyPublicity");
2131 formatter.field("public", &self.public);
2132 formatter.field("mutual_followers", &self.mutual_followers);
2133 formatter.field("groups", &self.groups);
2134 formatter.finish()
2135 }
2136}
2137pub mod party_publicity {
2139 #[non_exhaustive]
2141 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
2142 pub struct Builder {
2143 pub(crate) public: std::option::Option<crate::model::PartyPublicityLevel>,
2144 pub(crate) mutual_followers: std::option::Option<crate::model::PartyPublicityLevel>,
2145 pub(crate) groups: std::option::Option<crate::model::PartyPublicityLevel>,
2146 }
2147 impl Builder {
2148 #[allow(missing_docs)] pub fn public(mut self, input: crate::model::PartyPublicityLevel) -> Self {
2150 self.public = Some(input);
2151 self
2152 }
2153 #[allow(missing_docs)] pub fn set_public(
2155 mut self,
2156 input: std::option::Option<crate::model::PartyPublicityLevel>,
2157 ) -> Self {
2158 self.public = input;
2159 self
2160 }
2161 #[allow(missing_docs)] pub fn mutual_followers(mut self, input: crate::model::PartyPublicityLevel) -> Self {
2163 self.mutual_followers = Some(input);
2164 self
2165 }
2166 #[allow(missing_docs)] pub fn set_mutual_followers(
2168 mut self,
2169 input: std::option::Option<crate::model::PartyPublicityLevel>,
2170 ) -> Self {
2171 self.mutual_followers = input;
2172 self
2173 }
2174 #[allow(missing_docs)] pub fn groups(mut self, input: crate::model::PartyPublicityLevel) -> Self {
2176 self.groups = Some(input);
2177 self
2178 }
2179 #[allow(missing_docs)] pub fn set_groups(
2181 mut self,
2182 input: std::option::Option<crate::model::PartyPublicityLevel>,
2183 ) -> Self {
2184 self.groups = input;
2185 self
2186 }
2187 pub fn build(self) -> crate::model::PartyPublicity {
2189 crate::model::PartyPublicity {
2190 public: self.public,
2191 mutual_followers: self.mutual_followers,
2192 groups: self.groups,
2193 }
2194 }
2195 }
2196}
2197impl PartyPublicity {
2198 pub fn builder() -> crate::model::party_publicity::Builder {
2200 crate::model::party_publicity::Builder::default()
2201 }
2202}
2203
2204#[allow(missing_docs)] #[non_exhaustive]
2206#[derive(
2207 std::clone::Clone,
2208 std::cmp::Eq,
2209 std::cmp::Ord,
2210 std::cmp::PartialEq,
2211 std::cmp::PartialOrd,
2212 std::fmt::Debug,
2213 std::hash::Hash,
2214)]
2215pub enum PartyPublicityLevel {
2216 #[allow(missing_docs)] Join,
2218 #[allow(missing_docs)] None,
2220 #[allow(missing_docs)] View,
2222 Unknown(String),
2224}
2225impl std::convert::From<&str> for PartyPublicityLevel {
2226 fn from(s: &str) -> Self {
2227 match s {
2228 "join" => PartyPublicityLevel::Join,
2229 "none" => PartyPublicityLevel::None,
2230 "view" => PartyPublicityLevel::View,
2231 other => PartyPublicityLevel::Unknown(other.to_owned()),
2232 }
2233 }
2234}
2235impl std::str::FromStr for PartyPublicityLevel {
2236 type Err = std::convert::Infallible;
2237
2238 fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
2239 Ok(PartyPublicityLevel::from(s))
2240 }
2241}
2242impl PartyPublicityLevel {
2243 pub fn as_str(&self) -> &str {
2245 match self {
2246 PartyPublicityLevel::Join => "join",
2247 PartyPublicityLevel::None => "none",
2248 PartyPublicityLevel::View => "view",
2249 PartyPublicityLevel::Unknown(s) => s.as_ref(),
2250 }
2251 }
2252 pub fn values() -> &'static [&'static str] {
2254 &["join", "none", "view"]
2255 }
2256}
2257impl AsRef<str> for PartyPublicityLevel {
2258 fn as_ref(&self) -> &str {
2259 self.as_str()
2260 }
2261}
2262
2263#[allow(missing_docs)] #[non_exhaustive]
2265#[derive(std::clone::Clone, std::cmp::PartialEq)]
2266pub struct GetGameLinkNewIdentity {
2267 pub identity_token: std::option::Option<std::string::String>,
2269 pub identity_token_expire_ts: std::option::Option<aws_smithy_types::DateTime>,
2271 pub identity: std::option::Option<crate::model::IdentityProfile>,
2273}
2274impl GetGameLinkNewIdentity {
2275 pub fn identity_token(&self) -> std::option::Option<&str> {
2277 self.identity_token.as_deref()
2278 }
2279 pub fn identity_token_expire_ts(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
2281 self.identity_token_expire_ts.as_ref()
2282 }
2283 pub fn identity(&self) -> std::option::Option<&crate::model::IdentityProfile> {
2285 self.identity.as_ref()
2286 }
2287}
2288impl std::fmt::Debug for GetGameLinkNewIdentity {
2289 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2290 let mut formatter = f.debug_struct("GetGameLinkNewIdentity");
2291 formatter.field("identity_token", &"*** Sensitive Data Redacted ***");
2292 formatter.field("identity_token_expire_ts", &self.identity_token_expire_ts);
2293 formatter.field("identity", &self.identity);
2294 formatter.finish()
2295 }
2296}
2297pub mod get_game_link_new_identity {
2299 #[non_exhaustive]
2301 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
2302 pub struct Builder {
2303 pub(crate) identity_token: std::option::Option<std::string::String>,
2304 pub(crate) identity_token_expire_ts: std::option::Option<aws_smithy_types::DateTime>,
2305 pub(crate) identity: std::option::Option<crate::model::IdentityProfile>,
2306 }
2307 impl Builder {
2308 pub fn identity_token(mut self, input: impl Into<std::string::String>) -> Self {
2310 self.identity_token = Some(input.into());
2311 self
2312 }
2313 pub fn set_identity_token(
2315 mut self,
2316 input: std::option::Option<std::string::String>,
2317 ) -> Self {
2318 self.identity_token = input;
2319 self
2320 }
2321 pub fn identity_token_expire_ts(mut self, input: aws_smithy_types::DateTime) -> Self {
2323 self.identity_token_expire_ts = Some(input);
2324 self
2325 }
2326 pub fn set_identity_token_expire_ts(
2328 mut self,
2329 input: std::option::Option<aws_smithy_types::DateTime>,
2330 ) -> Self {
2331 self.identity_token_expire_ts = input;
2332 self
2333 }
2334 pub fn identity(mut self, input: crate::model::IdentityProfile) -> Self {
2336 self.identity = Some(input);
2337 self
2338 }
2339 pub fn set_identity(
2341 mut self,
2342 input: std::option::Option<crate::model::IdentityProfile>,
2343 ) -> Self {
2344 self.identity = input;
2345 self
2346 }
2347 pub fn build(self) -> crate::model::GetGameLinkNewIdentity {
2349 crate::model::GetGameLinkNewIdentity {
2350 identity_token: self.identity_token,
2351 identity_token_expire_ts: self.identity_token_expire_ts,
2352 identity: self.identity,
2353 }
2354 }
2355 }
2356}
2357impl GetGameLinkNewIdentity {
2358 pub fn builder() -> crate::model::get_game_link_new_identity::Builder {
2360 crate::model::get_game_link_new_identity::Builder::default()
2361 }
2362}
2363
2364#[non_exhaustive]
2366#[derive(std::clone::Clone, std::cmp::PartialEq)]
2367pub struct IdentityProfile {
2368 pub identity_id: std::option::Option<std::string::String>,
2370 pub display_name: std::option::Option<std::string::String>,
2372 pub account_number: std::option::Option<i32>,
2374 pub avatar_url: std::option::Option<std::string::String>,
2376 pub presence: std::option::Option<crate::model::IdentityPresence>,
2378 pub party: std::option::Option<crate::model::PartySummary>,
2380 pub is_registered: std::option::Option<bool>,
2382 pub external: std::option::Option<crate::model::IdentityExternalLinks>,
2384 pub is_admin: std::option::Option<bool>,
2386 pub is_game_linked: std::option::Option<bool>,
2388 pub dev_state: std::option::Option<crate::model::IdentityDevState>,
2390 pub follower_count: std::option::Option<i32>,
2392 pub following_count: std::option::Option<i32>,
2394 pub following: std::option::Option<bool>,
2396 pub is_following_me: std::option::Option<bool>,
2398 pub is_mutual_following: std::option::Option<bool>,
2400 pub join_ts: std::option::Option<aws_smithy_types::DateTime>,
2402 pub bio: std::option::Option<std::string::String>,
2404 pub linked_accounts: std::option::Option<std::vec::Vec<crate::model::IdentityLinkedAccount>>,
2406 pub groups: std::option::Option<std::vec::Vec<crate::model::IdentityGroup>>,
2408 pub games: std::option::Option<std::vec::Vec<crate::model::GameStatSummary>>,
2410}
2411impl IdentityProfile {
2412 pub fn identity_id(&self) -> std::option::Option<&str> {
2414 self.identity_id.as_deref()
2415 }
2416 pub fn display_name(&self) -> std::option::Option<&str> {
2418 self.display_name.as_deref()
2419 }
2420 pub fn account_number(&self) -> std::option::Option<i32> {
2422 self.account_number
2423 }
2424 pub fn avatar_url(&self) -> std::option::Option<&str> {
2426 self.avatar_url.as_deref()
2427 }
2428 pub fn presence(&self) -> std::option::Option<&crate::model::IdentityPresence> {
2430 self.presence.as_ref()
2431 }
2432 pub fn party(&self) -> std::option::Option<&crate::model::PartySummary> {
2434 self.party.as_ref()
2435 }
2436 pub fn is_registered(&self) -> std::option::Option<bool> {
2438 self.is_registered
2439 }
2440 pub fn external(&self) -> std::option::Option<&crate::model::IdentityExternalLinks> {
2442 self.external.as_ref()
2443 }
2444 pub fn is_admin(&self) -> std::option::Option<bool> {
2446 self.is_admin
2447 }
2448 pub fn is_game_linked(&self) -> std::option::Option<bool> {
2450 self.is_game_linked
2451 }
2452 pub fn dev_state(&self) -> std::option::Option<&crate::model::IdentityDevState> {
2454 self.dev_state.as_ref()
2455 }
2456 pub fn follower_count(&self) -> std::option::Option<i32> {
2458 self.follower_count
2459 }
2460 pub fn following_count(&self) -> std::option::Option<i32> {
2462 self.following_count
2463 }
2464 pub fn following(&self) -> std::option::Option<bool> {
2466 self.following
2467 }
2468 pub fn is_following_me(&self) -> std::option::Option<bool> {
2470 self.is_following_me
2471 }
2472 pub fn is_mutual_following(&self) -> std::option::Option<bool> {
2474 self.is_mutual_following
2475 }
2476 pub fn join_ts(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
2478 self.join_ts.as_ref()
2479 }
2480 pub fn bio(&self) -> std::option::Option<&str> {
2482 self.bio.as_deref()
2483 }
2484 pub fn linked_accounts(&self) -> std::option::Option<&[crate::model::IdentityLinkedAccount]> {
2486 self.linked_accounts.as_deref()
2487 }
2488 pub fn groups(&self) -> std::option::Option<&[crate::model::IdentityGroup]> {
2490 self.groups.as_deref()
2491 }
2492 pub fn games(&self) -> std::option::Option<&[crate::model::GameStatSummary]> {
2494 self.games.as_deref()
2495 }
2496}
2497impl std::fmt::Debug for IdentityProfile {
2498 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2499 let mut formatter = f.debug_struct("IdentityProfile");
2500 formatter.field("identity_id", &self.identity_id);
2501 formatter.field("display_name", &self.display_name);
2502 formatter.field("account_number", &self.account_number);
2503 formatter.field("avatar_url", &self.avatar_url);
2504 formatter.field("presence", &self.presence);
2505 formatter.field("party", &self.party);
2506 formatter.field("is_registered", &self.is_registered);
2507 formatter.field("external", &self.external);
2508 formatter.field("is_admin", &self.is_admin);
2509 formatter.field("is_game_linked", &self.is_game_linked);
2510 formatter.field("dev_state", &self.dev_state);
2511 formatter.field("follower_count", &self.follower_count);
2512 formatter.field("following_count", &self.following_count);
2513 formatter.field("following", &self.following);
2514 formatter.field("is_following_me", &self.is_following_me);
2515 formatter.field("is_mutual_following", &self.is_mutual_following);
2516 formatter.field("join_ts", &self.join_ts);
2517 formatter.field("bio", &self.bio);
2518 formatter.field("linked_accounts", &"*** Sensitive Data Redacted ***");
2519 formatter.field("groups", &self.groups);
2520 formatter.field("games", &self.games);
2521 formatter.finish()
2522 }
2523}
2524pub mod identity_profile {
2526 #[non_exhaustive]
2528 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
2529 pub struct Builder {
2530 pub(crate) identity_id: std::option::Option<std::string::String>,
2531 pub(crate) display_name: std::option::Option<std::string::String>,
2532 pub(crate) account_number: std::option::Option<i32>,
2533 pub(crate) avatar_url: std::option::Option<std::string::String>,
2534 pub(crate) presence: std::option::Option<crate::model::IdentityPresence>,
2535 pub(crate) party: std::option::Option<crate::model::PartySummary>,
2536 pub(crate) is_registered: std::option::Option<bool>,
2537 pub(crate) external: std::option::Option<crate::model::IdentityExternalLinks>,
2538 pub(crate) is_admin: std::option::Option<bool>,
2539 pub(crate) is_game_linked: std::option::Option<bool>,
2540 pub(crate) dev_state: std::option::Option<crate::model::IdentityDevState>,
2541 pub(crate) follower_count: std::option::Option<i32>,
2542 pub(crate) following_count: std::option::Option<i32>,
2543 pub(crate) following: std::option::Option<bool>,
2544 pub(crate) is_following_me: std::option::Option<bool>,
2545 pub(crate) is_mutual_following: std::option::Option<bool>,
2546 pub(crate) join_ts: std::option::Option<aws_smithy_types::DateTime>,
2547 pub(crate) bio: std::option::Option<std::string::String>,
2548 pub(crate) linked_accounts:
2549 std::option::Option<std::vec::Vec<crate::model::IdentityLinkedAccount>>,
2550 pub(crate) groups: std::option::Option<std::vec::Vec<crate::model::IdentityGroup>>,
2551 pub(crate) games: std::option::Option<std::vec::Vec<crate::model::GameStatSummary>>,
2552 }
2553 impl Builder {
2554 pub fn identity_id(mut self, input: impl Into<std::string::String>) -> Self {
2556 self.identity_id = Some(input.into());
2557 self
2558 }
2559 pub fn set_identity_id(mut self, input: std::option::Option<std::string::String>) -> Self {
2561 self.identity_id = input;
2562 self
2563 }
2564 pub fn display_name(mut self, input: impl Into<std::string::String>) -> Self {
2566 self.display_name = Some(input.into());
2567 self
2568 }
2569 pub fn set_display_name(mut self, input: std::option::Option<std::string::String>) -> Self {
2571 self.display_name = input;
2572 self
2573 }
2574 pub fn account_number(mut self, input: i32) -> Self {
2576 self.account_number = Some(input);
2577 self
2578 }
2579 pub fn set_account_number(mut self, input: std::option::Option<i32>) -> Self {
2581 self.account_number = input;
2582 self
2583 }
2584 pub fn avatar_url(mut self, input: impl Into<std::string::String>) -> Self {
2586 self.avatar_url = Some(input.into());
2587 self
2588 }
2589 pub fn set_avatar_url(mut self, input: std::option::Option<std::string::String>) -> Self {
2591 self.avatar_url = input;
2592 self
2593 }
2594 pub fn presence(mut self, input: crate::model::IdentityPresence) -> Self {
2596 self.presence = Some(input);
2597 self
2598 }
2599 pub fn set_presence(
2601 mut self,
2602 input: std::option::Option<crate::model::IdentityPresence>,
2603 ) -> Self {
2604 self.presence = input;
2605 self
2606 }
2607 pub fn party(mut self, input: crate::model::PartySummary) -> Self {
2609 self.party = Some(input);
2610 self
2611 }
2612 pub fn set_party(mut self, input: std::option::Option<crate::model::PartySummary>) -> Self {
2614 self.party = input;
2615 self
2616 }
2617 pub fn is_registered(mut self, input: bool) -> Self {
2619 self.is_registered = Some(input);
2620 self
2621 }
2622 pub fn set_is_registered(mut self, input: std::option::Option<bool>) -> Self {
2624 self.is_registered = input;
2625 self
2626 }
2627 pub fn external(mut self, input: crate::model::IdentityExternalLinks) -> Self {
2629 self.external = Some(input);
2630 self
2631 }
2632 pub fn set_external(
2634 mut self,
2635 input: std::option::Option<crate::model::IdentityExternalLinks>,
2636 ) -> Self {
2637 self.external = input;
2638 self
2639 }
2640 pub fn is_admin(mut self, input: bool) -> Self {
2642 self.is_admin = Some(input);
2643 self
2644 }
2645 pub fn set_is_admin(mut self, input: std::option::Option<bool>) -> Self {
2647 self.is_admin = input;
2648 self
2649 }
2650 pub fn is_game_linked(mut self, input: bool) -> Self {
2652 self.is_game_linked = Some(input);
2653 self
2654 }
2655 pub fn set_is_game_linked(mut self, input: std::option::Option<bool>) -> Self {
2657 self.is_game_linked = input;
2658 self
2659 }
2660 pub fn dev_state(mut self, input: crate::model::IdentityDevState) -> Self {
2662 self.dev_state = Some(input);
2663 self
2664 }
2665 pub fn set_dev_state(
2667 mut self,
2668 input: std::option::Option<crate::model::IdentityDevState>,
2669 ) -> Self {
2670 self.dev_state = input;
2671 self
2672 }
2673 pub fn follower_count(mut self, input: i32) -> Self {
2675 self.follower_count = Some(input);
2676 self
2677 }
2678 pub fn set_follower_count(mut self, input: std::option::Option<i32>) -> Self {
2680 self.follower_count = input;
2681 self
2682 }
2683 pub fn following_count(mut self, input: i32) -> Self {
2685 self.following_count = Some(input);
2686 self
2687 }
2688 pub fn set_following_count(mut self, input: std::option::Option<i32>) -> Self {
2690 self.following_count = input;
2691 self
2692 }
2693 pub fn following(mut self, input: bool) -> Self {
2695 self.following = Some(input);
2696 self
2697 }
2698 pub fn set_following(mut self, input: std::option::Option<bool>) -> Self {
2700 self.following = input;
2701 self
2702 }
2703 pub fn is_following_me(mut self, input: bool) -> Self {
2705 self.is_following_me = Some(input);
2706 self
2707 }
2708 pub fn set_is_following_me(mut self, input: std::option::Option<bool>) -> Self {
2710 self.is_following_me = input;
2711 self
2712 }
2713 pub fn is_mutual_following(mut self, input: bool) -> Self {
2715 self.is_mutual_following = Some(input);
2716 self
2717 }
2718 pub fn set_is_mutual_following(mut self, input: std::option::Option<bool>) -> Self {
2720 self.is_mutual_following = input;
2721 self
2722 }
2723 pub fn join_ts(mut self, input: aws_smithy_types::DateTime) -> Self {
2725 self.join_ts = Some(input);
2726 self
2727 }
2728 pub fn set_join_ts(
2730 mut self,
2731 input: std::option::Option<aws_smithy_types::DateTime>,
2732 ) -> Self {
2733 self.join_ts = input;
2734 self
2735 }
2736 pub fn bio(mut self, input: impl Into<std::string::String>) -> Self {
2738 self.bio = Some(input.into());
2739 self
2740 }
2741 pub fn set_bio(mut self, input: std::option::Option<std::string::String>) -> Self {
2743 self.bio = input;
2744 self
2745 }
2746 pub fn linked_accounts(mut self, input: crate::model::IdentityLinkedAccount) -> Self {
2752 let mut v = self.linked_accounts.unwrap_or_default();
2753 v.push(input);
2754 self.linked_accounts = Some(v);
2755 self
2756 }
2757 pub fn set_linked_accounts(
2759 mut self,
2760 input: std::option::Option<std::vec::Vec<crate::model::IdentityLinkedAccount>>,
2761 ) -> Self {
2762 self.linked_accounts = input;
2763 self
2764 }
2765 pub fn groups(mut self, input: crate::model::IdentityGroup) -> Self {
2771 let mut v = self.groups.unwrap_or_default();
2772 v.push(input);
2773 self.groups = Some(v);
2774 self
2775 }
2776 pub fn set_groups(
2778 mut self,
2779 input: std::option::Option<std::vec::Vec<crate::model::IdentityGroup>>,
2780 ) -> Self {
2781 self.groups = input;
2782 self
2783 }
2784 pub fn games(mut self, input: crate::model::GameStatSummary) -> Self {
2790 let mut v = self.games.unwrap_or_default();
2791 v.push(input);
2792 self.games = Some(v);
2793 self
2794 }
2795 pub fn set_games(
2797 mut self,
2798 input: std::option::Option<std::vec::Vec<crate::model::GameStatSummary>>,
2799 ) -> Self {
2800 self.games = input;
2801 self
2802 }
2803 pub fn build(self) -> crate::model::IdentityProfile {
2805 crate::model::IdentityProfile {
2806 identity_id: self.identity_id,
2807 display_name: self.display_name,
2808 account_number: self.account_number,
2809 avatar_url: self.avatar_url,
2810 presence: self.presence,
2811 party: self.party,
2812 is_registered: self.is_registered,
2813 external: self.external,
2814 is_admin: self.is_admin,
2815 is_game_linked: self.is_game_linked,
2816 dev_state: self.dev_state,
2817 follower_count: self.follower_count,
2818 following_count: self.following_count,
2819 following: self.following,
2820 is_following_me: self.is_following_me,
2821 is_mutual_following: self.is_mutual_following,
2822 join_ts: self.join_ts,
2823 bio: self.bio,
2824 linked_accounts: self.linked_accounts,
2825 groups: self.groups,
2826 games: self.games,
2827 }
2828 }
2829 }
2830}
2831impl IdentityProfile {
2832 pub fn builder() -> crate::model::identity_profile::Builder {
2834 crate::model::identity_profile::Builder::default()
2835 }
2836}
2837
2838#[non_exhaustive]
2840#[derive(std::clone::Clone, std::cmp::PartialEq)]
2841pub struct GameStatSummary {
2842 pub game: std::option::Option<crate::model::GameHandle>,
2844 pub stats: std::option::Option<std::vec::Vec<crate::model::GameStat>>,
2846}
2847impl GameStatSummary {
2848 pub fn game(&self) -> std::option::Option<&crate::model::GameHandle> {
2850 self.game.as_ref()
2851 }
2852 pub fn stats(&self) -> std::option::Option<&[crate::model::GameStat]> {
2854 self.stats.as_deref()
2855 }
2856}
2857impl std::fmt::Debug for GameStatSummary {
2858 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2859 let mut formatter = f.debug_struct("GameStatSummary");
2860 formatter.field("game", &self.game);
2861 formatter.field("stats", &self.stats);
2862 formatter.finish()
2863 }
2864}
2865pub mod game_stat_summary {
2867 #[non_exhaustive]
2869 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
2870 pub struct Builder {
2871 pub(crate) game: std::option::Option<crate::model::GameHandle>,
2872 pub(crate) stats: std::option::Option<std::vec::Vec<crate::model::GameStat>>,
2873 }
2874 impl Builder {
2875 pub fn game(mut self, input: crate::model::GameHandle) -> Self {
2877 self.game = Some(input);
2878 self
2879 }
2880 pub fn set_game(mut self, input: std::option::Option<crate::model::GameHandle>) -> Self {
2882 self.game = input;
2883 self
2884 }
2885 pub fn stats(mut self, input: crate::model::GameStat) -> Self {
2891 let mut v = self.stats.unwrap_or_default();
2892 v.push(input);
2893 self.stats = Some(v);
2894 self
2895 }
2896 pub fn set_stats(
2898 mut self,
2899 input: std::option::Option<std::vec::Vec<crate::model::GameStat>>,
2900 ) -> Self {
2901 self.stats = input;
2902 self
2903 }
2904 pub fn build(self) -> crate::model::GameStatSummary {
2906 crate::model::GameStatSummary {
2907 game: self.game,
2908 stats: self.stats,
2909 }
2910 }
2911 }
2912}
2913impl GameStatSummary {
2914 pub fn builder() -> crate::model::game_stat_summary::Builder {
2916 crate::model::game_stat_summary::Builder::default()
2917 }
2918}
2919
2920#[non_exhaustive]
2922#[derive(std::clone::Clone, std::cmp::PartialEq)]
2923pub struct GameStat {
2924 pub config: std::option::Option<crate::model::GameStatConfig>,
2926 pub overall_value: std::option::Option<f32>,
2928}
2929impl GameStat {
2930 pub fn config(&self) -> std::option::Option<&crate::model::GameStatConfig> {
2932 self.config.as_ref()
2933 }
2934 pub fn overall_value(&self) -> std::option::Option<f32> {
2936 self.overall_value
2937 }
2938}
2939impl std::fmt::Debug for GameStat {
2940 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
2941 let mut formatter = f.debug_struct("GameStat");
2942 formatter.field("config", &self.config);
2943 formatter.field("overall_value", &self.overall_value);
2944 formatter.finish()
2945 }
2946}
2947pub mod game_stat {
2949 #[non_exhaustive]
2951 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
2952 pub struct Builder {
2953 pub(crate) config: std::option::Option<crate::model::GameStatConfig>,
2954 pub(crate) overall_value: std::option::Option<f32>,
2955 }
2956 impl Builder {
2957 pub fn config(mut self, input: crate::model::GameStatConfig) -> Self {
2959 self.config = Some(input);
2960 self
2961 }
2962 pub fn set_config(
2964 mut self,
2965 input: std::option::Option<crate::model::GameStatConfig>,
2966 ) -> Self {
2967 self.config = input;
2968 self
2969 }
2970 pub fn overall_value(mut self, input: f32) -> Self {
2972 self.overall_value = Some(input);
2973 self
2974 }
2975 pub fn set_overall_value(mut self, input: std::option::Option<f32>) -> Self {
2977 self.overall_value = input;
2978 self
2979 }
2980 pub fn build(self) -> crate::model::GameStat {
2982 crate::model::GameStat {
2983 config: self.config,
2984 overall_value: self.overall_value,
2985 }
2986 }
2987 }
2988}
2989impl GameStat {
2990 pub fn builder() -> crate::model::game_stat::Builder {
2992 crate::model::game_stat::Builder::default()
2993 }
2994}
2995
2996#[non_exhaustive]
2998#[derive(std::clone::Clone, std::cmp::PartialEq)]
2999pub struct GameStatConfig {
3000 pub record_id: std::option::Option<std::string::String>,
3002 pub icon_id: std::option::Option<std::string::String>,
3004 pub format: std::option::Option<crate::model::GameStatFormatMethod>,
3006 pub aggregation: std::option::Option<crate::model::GameStatAggregationMethod>,
3008 pub sorting: std::option::Option<crate::model::GameStatSortingMethod>,
3010 pub priority: std::option::Option<i32>,
3012 pub display_name: std::option::Option<std::string::String>,
3014 pub postfix_singular: std::option::Option<std::string::String>,
3016 pub postfix_plural: std::option::Option<std::string::String>,
3018 pub prefix_singular: std::option::Option<std::string::String>,
3020 pub prefix_plural: std::option::Option<std::string::String>,
3022}
3023impl GameStatConfig {
3024 pub fn record_id(&self) -> std::option::Option<&str> {
3026 self.record_id.as_deref()
3027 }
3028 pub fn icon_id(&self) -> std::option::Option<&str> {
3030 self.icon_id.as_deref()
3031 }
3032 pub fn format(&self) -> std::option::Option<&crate::model::GameStatFormatMethod> {
3034 self.format.as_ref()
3035 }
3036 pub fn aggregation(&self) -> std::option::Option<&crate::model::GameStatAggregationMethod> {
3038 self.aggregation.as_ref()
3039 }
3040 pub fn sorting(&self) -> std::option::Option<&crate::model::GameStatSortingMethod> {
3042 self.sorting.as_ref()
3043 }
3044 pub fn priority(&self) -> std::option::Option<i32> {
3046 self.priority
3047 }
3048 pub fn display_name(&self) -> std::option::Option<&str> {
3050 self.display_name.as_deref()
3051 }
3052 pub fn postfix_singular(&self) -> std::option::Option<&str> {
3054 self.postfix_singular.as_deref()
3055 }
3056 pub fn postfix_plural(&self) -> std::option::Option<&str> {
3058 self.postfix_plural.as_deref()
3059 }
3060 pub fn prefix_singular(&self) -> std::option::Option<&str> {
3062 self.prefix_singular.as_deref()
3063 }
3064 pub fn prefix_plural(&self) -> std::option::Option<&str> {
3066 self.prefix_plural.as_deref()
3067 }
3068}
3069impl std::fmt::Debug for GameStatConfig {
3070 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3071 let mut formatter = f.debug_struct("GameStatConfig");
3072 formatter.field("record_id", &self.record_id);
3073 formatter.field("icon_id", &self.icon_id);
3074 formatter.field("format", &self.format);
3075 formatter.field("aggregation", &self.aggregation);
3076 formatter.field("sorting", &self.sorting);
3077 formatter.field("priority", &self.priority);
3078 formatter.field("display_name", &self.display_name);
3079 formatter.field("postfix_singular", &self.postfix_singular);
3080 formatter.field("postfix_plural", &self.postfix_plural);
3081 formatter.field("prefix_singular", &self.prefix_singular);
3082 formatter.field("prefix_plural", &self.prefix_plural);
3083 formatter.finish()
3084 }
3085}
3086pub mod game_stat_config {
3088 #[non_exhaustive]
3090 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
3091 pub struct Builder {
3092 pub(crate) record_id: std::option::Option<std::string::String>,
3093 pub(crate) icon_id: std::option::Option<std::string::String>,
3094 pub(crate) format: std::option::Option<crate::model::GameStatFormatMethod>,
3095 pub(crate) aggregation: std::option::Option<crate::model::GameStatAggregationMethod>,
3096 pub(crate) sorting: std::option::Option<crate::model::GameStatSortingMethod>,
3097 pub(crate) priority: std::option::Option<i32>,
3098 pub(crate) display_name: std::option::Option<std::string::String>,
3099 pub(crate) postfix_singular: std::option::Option<std::string::String>,
3100 pub(crate) postfix_plural: std::option::Option<std::string::String>,
3101 pub(crate) prefix_singular: std::option::Option<std::string::String>,
3102 pub(crate) prefix_plural: std::option::Option<std::string::String>,
3103 }
3104 impl Builder {
3105 pub fn record_id(mut self, input: impl Into<std::string::String>) -> Self {
3107 self.record_id = Some(input.into());
3108 self
3109 }
3110 pub fn set_record_id(mut self, input: std::option::Option<std::string::String>) -> Self {
3112 self.record_id = input;
3113 self
3114 }
3115 pub fn icon_id(mut self, input: impl Into<std::string::String>) -> Self {
3117 self.icon_id = Some(input.into());
3118 self
3119 }
3120 pub fn set_icon_id(mut self, input: std::option::Option<std::string::String>) -> Self {
3122 self.icon_id = input;
3123 self
3124 }
3125 pub fn format(mut self, input: crate::model::GameStatFormatMethod) -> Self {
3127 self.format = Some(input);
3128 self
3129 }
3130 pub fn set_format(
3132 mut self,
3133 input: std::option::Option<crate::model::GameStatFormatMethod>,
3134 ) -> Self {
3135 self.format = input;
3136 self
3137 }
3138 pub fn aggregation(mut self, input: crate::model::GameStatAggregationMethod) -> Self {
3140 self.aggregation = Some(input);
3141 self
3142 }
3143 pub fn set_aggregation(
3145 mut self,
3146 input: std::option::Option<crate::model::GameStatAggregationMethod>,
3147 ) -> Self {
3148 self.aggregation = input;
3149 self
3150 }
3151 pub fn sorting(mut self, input: crate::model::GameStatSortingMethod) -> Self {
3153 self.sorting = Some(input);
3154 self
3155 }
3156 pub fn set_sorting(
3158 mut self,
3159 input: std::option::Option<crate::model::GameStatSortingMethod>,
3160 ) -> Self {
3161 self.sorting = input;
3162 self
3163 }
3164 pub fn priority(mut self, input: i32) -> Self {
3166 self.priority = Some(input);
3167 self
3168 }
3169 pub fn set_priority(mut self, input: std::option::Option<i32>) -> Self {
3171 self.priority = input;
3172 self
3173 }
3174 pub fn display_name(mut self, input: impl Into<std::string::String>) -> Self {
3176 self.display_name = Some(input.into());
3177 self
3178 }
3179 pub fn set_display_name(mut self, input: std::option::Option<std::string::String>) -> Self {
3181 self.display_name = input;
3182 self
3183 }
3184 pub fn postfix_singular(mut self, input: impl Into<std::string::String>) -> Self {
3186 self.postfix_singular = Some(input.into());
3187 self
3188 }
3189 pub fn set_postfix_singular(
3191 mut self,
3192 input: std::option::Option<std::string::String>,
3193 ) -> Self {
3194 self.postfix_singular = input;
3195 self
3196 }
3197 pub fn postfix_plural(mut self, input: impl Into<std::string::String>) -> Self {
3199 self.postfix_plural = Some(input.into());
3200 self
3201 }
3202 pub fn set_postfix_plural(
3204 mut self,
3205 input: std::option::Option<std::string::String>,
3206 ) -> Self {
3207 self.postfix_plural = input;
3208 self
3209 }
3210 pub fn prefix_singular(mut self, input: impl Into<std::string::String>) -> Self {
3212 self.prefix_singular = Some(input.into());
3213 self
3214 }
3215 pub fn set_prefix_singular(
3217 mut self,
3218 input: std::option::Option<std::string::String>,
3219 ) -> Self {
3220 self.prefix_singular = input;
3221 self
3222 }
3223 pub fn prefix_plural(mut self, input: impl Into<std::string::String>) -> Self {
3225 self.prefix_plural = Some(input.into());
3226 self
3227 }
3228 pub fn set_prefix_plural(
3230 mut self,
3231 input: std::option::Option<std::string::String>,
3232 ) -> Self {
3233 self.prefix_plural = input;
3234 self
3235 }
3236 pub fn build(self) -> crate::model::GameStatConfig {
3238 crate::model::GameStatConfig {
3239 record_id: self.record_id,
3240 icon_id: self.icon_id,
3241 format: self.format,
3242 aggregation: self.aggregation,
3243 sorting: self.sorting,
3244 priority: self.priority,
3245 display_name: self.display_name,
3246 postfix_singular: self.postfix_singular,
3247 postfix_plural: self.postfix_plural,
3248 prefix_singular: self.prefix_singular,
3249 prefix_plural: self.prefix_plural,
3250 }
3251 }
3252 }
3253}
3254impl GameStatConfig {
3255 pub fn builder() -> crate::model::game_stat_config::Builder {
3257 crate::model::game_stat_config::Builder::default()
3258 }
3259}
3260
3261#[non_exhaustive]
3263#[derive(
3264 std::clone::Clone,
3265 std::cmp::Eq,
3266 std::cmp::Ord,
3267 std::cmp::PartialEq,
3268 std::cmp::PartialOrd,
3269 std::fmt::Debug,
3270 std::hash::Hash,
3271)]
3272pub enum GameStatSortingMethod {
3273 Asc,
3275 Desc,
3277 Unknown(String),
3279}
3280impl std::convert::From<&str> for GameStatSortingMethod {
3281 fn from(s: &str) -> Self {
3282 match s {
3283 "asc" => GameStatSortingMethod::Asc,
3284 "desc" => GameStatSortingMethod::Desc,
3285 other => GameStatSortingMethod::Unknown(other.to_owned()),
3286 }
3287 }
3288}
3289impl std::str::FromStr for GameStatSortingMethod {
3290 type Err = std::convert::Infallible;
3291
3292 fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
3293 Ok(GameStatSortingMethod::from(s))
3294 }
3295}
3296impl GameStatSortingMethod {
3297 pub fn as_str(&self) -> &str {
3299 match self {
3300 GameStatSortingMethod::Asc => "asc",
3301 GameStatSortingMethod::Desc => "desc",
3302 GameStatSortingMethod::Unknown(s) => s.as_ref(),
3303 }
3304 }
3305 pub fn values() -> &'static [&'static str] {
3307 &["asc", "desc"]
3308 }
3309}
3310impl AsRef<str> for GameStatSortingMethod {
3311 fn as_ref(&self) -> &str {
3312 self.as_str()
3313 }
3314}
3315
3316#[non_exhaustive]
3318#[derive(
3319 std::clone::Clone,
3320 std::cmp::Eq,
3321 std::cmp::Ord,
3322 std::cmp::PartialEq,
3323 std::cmp::PartialOrd,
3324 std::fmt::Debug,
3325 std::hash::Hash,
3326)]
3327pub enum GameStatAggregationMethod {
3328 Average,
3330 Max,
3332 Min,
3334 Sum,
3336 Unknown(String),
3338}
3339impl std::convert::From<&str> for GameStatAggregationMethod {
3340 fn from(s: &str) -> Self {
3341 match s {
3342 "average" => GameStatAggregationMethod::Average,
3343 "max" => GameStatAggregationMethod::Max,
3344 "min" => GameStatAggregationMethod::Min,
3345 "sum" => GameStatAggregationMethod::Sum,
3346 other => GameStatAggregationMethod::Unknown(other.to_owned()),
3347 }
3348 }
3349}
3350impl std::str::FromStr for GameStatAggregationMethod {
3351 type Err = std::convert::Infallible;
3352
3353 fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
3354 Ok(GameStatAggregationMethod::from(s))
3355 }
3356}
3357impl GameStatAggregationMethod {
3358 pub fn as_str(&self) -> &str {
3360 match self {
3361 GameStatAggregationMethod::Average => "average",
3362 GameStatAggregationMethod::Max => "max",
3363 GameStatAggregationMethod::Min => "min",
3364 GameStatAggregationMethod::Sum => "sum",
3365 GameStatAggregationMethod::Unknown(s) => s.as_ref(),
3366 }
3367 }
3368 pub fn values() -> &'static [&'static str] {
3370 &["average", "max", "min", "sum"]
3371 }
3372}
3373impl AsRef<str> for GameStatAggregationMethod {
3374 fn as_ref(&self) -> &str {
3375 self.as_str()
3376 }
3377}
3378
3379#[non_exhaustive]
3381#[derive(
3382 std::clone::Clone,
3383 std::cmp::Eq,
3384 std::cmp::Ord,
3385 std::cmp::PartialEq,
3386 std::cmp::PartialOrd,
3387 std::fmt::Debug,
3388 std::hash::Hash,
3389)]
3390pub enum GameStatFormatMethod {
3391 DurationHundredthSecond,
3393 DurationMinute,
3395 DuractionSecond,
3397 Float1,
3399 Float2,
3401 Float3,
3403 Integer,
3405 Unknown(String),
3407}
3408impl std::convert::From<&str> for GameStatFormatMethod {
3409 fn from(s: &str) -> Self {
3410 match s {
3411 "duration_hundredth_second" => GameStatFormatMethod::DurationHundredthSecond,
3412 "duration_minute" => GameStatFormatMethod::DurationMinute,
3413 "duration_second" => GameStatFormatMethod::DuractionSecond,
3414 "float_1" => GameStatFormatMethod::Float1,
3415 "float_2" => GameStatFormatMethod::Float2,
3416 "float_3" => GameStatFormatMethod::Float3,
3417 "integer" => GameStatFormatMethod::Integer,
3418 other => GameStatFormatMethod::Unknown(other.to_owned()),
3419 }
3420 }
3421}
3422impl std::str::FromStr for GameStatFormatMethod {
3423 type Err = std::convert::Infallible;
3424
3425 fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
3426 Ok(GameStatFormatMethod::from(s))
3427 }
3428}
3429impl GameStatFormatMethod {
3430 pub fn as_str(&self) -> &str {
3432 match self {
3433 GameStatFormatMethod::DurationHundredthSecond => "duration_hundredth_second",
3434 GameStatFormatMethod::DurationMinute => "duration_minute",
3435 GameStatFormatMethod::DuractionSecond => "duration_second",
3436 GameStatFormatMethod::Float1 => "float_1",
3437 GameStatFormatMethod::Float2 => "float_2",
3438 GameStatFormatMethod::Float3 => "float_3",
3439 GameStatFormatMethod::Integer => "integer",
3440 GameStatFormatMethod::Unknown(s) => s.as_ref(),
3441 }
3442 }
3443 pub fn values() -> &'static [&'static str] {
3445 &[
3446 "duration_hundredth_second",
3447 "duration_minute",
3448 "duration_second",
3449 "float_1",
3450 "float_2",
3451 "float_3",
3452 "integer",
3453 ]
3454 }
3455}
3456impl AsRef<str> for GameStatFormatMethod {
3457 fn as_ref(&self) -> &str {
3458 self.as_str()
3459 }
3460}
3461
3462#[non_exhaustive]
3464#[derive(std::clone::Clone, std::cmp::PartialEq)]
3465pub struct IdentityGroup {
3466 pub group: std::option::Option<crate::model::GroupHandle>,
3468}
3469impl IdentityGroup {
3470 pub fn group(&self) -> std::option::Option<&crate::model::GroupHandle> {
3472 self.group.as_ref()
3473 }
3474}
3475impl std::fmt::Debug for IdentityGroup {
3476 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3477 let mut formatter = f.debug_struct("IdentityGroup");
3478 formatter.field("group", &self.group);
3479 formatter.finish()
3480 }
3481}
3482pub mod identity_group {
3484 #[non_exhaustive]
3486 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
3487 pub struct Builder {
3488 pub(crate) group: std::option::Option<crate::model::GroupHandle>,
3489 }
3490 impl Builder {
3491 pub fn group(mut self, input: crate::model::GroupHandle) -> Self {
3493 self.group = Some(input);
3494 self
3495 }
3496 pub fn set_group(mut self, input: std::option::Option<crate::model::GroupHandle>) -> Self {
3498 self.group = input;
3499 self
3500 }
3501 pub fn build(self) -> crate::model::IdentityGroup {
3503 crate::model::IdentityGroup { group: self.group }
3504 }
3505 }
3506}
3507impl IdentityGroup {
3508 pub fn builder() -> crate::model::identity_group::Builder {
3510 crate::model::identity_group::Builder::default()
3511 }
3512}
3513
3514#[non_exhaustive]
3516#[derive(std::clone::Clone, std::cmp::PartialEq)]
3517pub struct GroupHandle {
3518 pub group_id: std::option::Option<std::string::String>,
3520 pub display_name: std::option::Option<std::string::String>,
3522 pub avatar_url: std::option::Option<std::string::String>,
3524 pub external: std::option::Option<crate::model::GroupExternalLinks>,
3526 pub is_developer: std::option::Option<bool>,
3528}
3529impl GroupHandle {
3530 pub fn group_id(&self) -> std::option::Option<&str> {
3532 self.group_id.as_deref()
3533 }
3534 pub fn display_name(&self) -> std::option::Option<&str> {
3536 self.display_name.as_deref()
3537 }
3538 pub fn avatar_url(&self) -> std::option::Option<&str> {
3540 self.avatar_url.as_deref()
3541 }
3542 pub fn external(&self) -> std::option::Option<&crate::model::GroupExternalLinks> {
3544 self.external.as_ref()
3545 }
3546 pub fn is_developer(&self) -> std::option::Option<bool> {
3548 self.is_developer
3549 }
3550}
3551impl std::fmt::Debug for GroupHandle {
3552 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3553 let mut formatter = f.debug_struct("GroupHandle");
3554 formatter.field("group_id", &self.group_id);
3555 formatter.field("display_name", &self.display_name);
3556 formatter.field("avatar_url", &self.avatar_url);
3557 formatter.field("external", &self.external);
3558 formatter.field("is_developer", &self.is_developer);
3559 formatter.finish()
3560 }
3561}
3562pub mod group_handle {
3564 #[non_exhaustive]
3566 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
3567 pub struct Builder {
3568 pub(crate) group_id: std::option::Option<std::string::String>,
3569 pub(crate) display_name: std::option::Option<std::string::String>,
3570 pub(crate) avatar_url: std::option::Option<std::string::String>,
3571 pub(crate) external: std::option::Option<crate::model::GroupExternalLinks>,
3572 pub(crate) is_developer: std::option::Option<bool>,
3573 }
3574 impl Builder {
3575 pub fn group_id(mut self, input: impl Into<std::string::String>) -> Self {
3577 self.group_id = Some(input.into());
3578 self
3579 }
3580 pub fn set_group_id(mut self, input: std::option::Option<std::string::String>) -> Self {
3582 self.group_id = input;
3583 self
3584 }
3585 pub fn display_name(mut self, input: impl Into<std::string::String>) -> Self {
3587 self.display_name = Some(input.into());
3588 self
3589 }
3590 pub fn set_display_name(mut self, input: std::option::Option<std::string::String>) -> Self {
3592 self.display_name = input;
3593 self
3594 }
3595 pub fn avatar_url(mut self, input: impl Into<std::string::String>) -> Self {
3597 self.avatar_url = Some(input.into());
3598 self
3599 }
3600 pub fn set_avatar_url(mut self, input: std::option::Option<std::string::String>) -> Self {
3602 self.avatar_url = input;
3603 self
3604 }
3605 pub fn external(mut self, input: crate::model::GroupExternalLinks) -> Self {
3607 self.external = Some(input);
3608 self
3609 }
3610 pub fn set_external(
3612 mut self,
3613 input: std::option::Option<crate::model::GroupExternalLinks>,
3614 ) -> Self {
3615 self.external = input;
3616 self
3617 }
3618 pub fn is_developer(mut self, input: bool) -> Self {
3620 self.is_developer = Some(input);
3621 self
3622 }
3623 pub fn set_is_developer(mut self, input: std::option::Option<bool>) -> Self {
3625 self.is_developer = input;
3626 self
3627 }
3628 pub fn build(self) -> crate::model::GroupHandle {
3630 crate::model::GroupHandle {
3631 group_id: self.group_id,
3632 display_name: self.display_name,
3633 avatar_url: self.avatar_url,
3634 external: self.external,
3635 is_developer: self.is_developer,
3636 }
3637 }
3638 }
3639}
3640impl GroupHandle {
3641 pub fn builder() -> crate::model::group_handle::Builder {
3643 crate::model::group_handle::Builder::default()
3644 }
3645}
3646
3647#[non_exhaustive]
3649#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
3650pub enum IdentityLinkedAccount {
3651 Email(crate::model::IdentityEmailLinkedAccount),
3653 #[non_exhaustive]
3661 Unknown,
3662}
3663impl IdentityLinkedAccount {
3664 #[allow(irrefutable_let_patterns)]
3665 pub fn as_email(
3668 &self,
3669 ) -> std::result::Result<&crate::model::IdentityEmailLinkedAccount, &Self> {
3670 if let IdentityLinkedAccount::Email(val) = &self {
3671 Ok(val)
3672 } else {
3673 Err(self)
3674 }
3675 }
3676 pub fn is_email(&self) -> bool {
3678 self.as_email().is_ok()
3679 }
3680 pub fn is_unknown(&self) -> bool {
3682 matches!(self, Self::Unknown)
3683 }
3684}
3685
3686#[non_exhaustive]
3688#[derive(std::clone::Clone, std::cmp::PartialEq)]
3689pub struct IdentityEmailLinkedAccount {
3690 pub email: std::option::Option<std::string::String>,
3692}
3693impl IdentityEmailLinkedAccount {
3694 pub fn email(&self) -> std::option::Option<&str> {
3696 self.email.as_deref()
3697 }
3698}
3699impl std::fmt::Debug for IdentityEmailLinkedAccount {
3700 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3701 let mut formatter = f.debug_struct("IdentityEmailLinkedAccount");
3702 formatter.field("email", &"*** Sensitive Data Redacted ***");
3703 formatter.finish()
3704 }
3705}
3706pub mod identity_email_linked_account {
3708 #[non_exhaustive]
3710 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
3711 pub struct Builder {
3712 pub(crate) email: std::option::Option<std::string::String>,
3713 }
3714 impl Builder {
3715 pub fn email(mut self, input: impl Into<std::string::String>) -> Self {
3717 self.email = Some(input.into());
3718 self
3719 }
3720 pub fn set_email(mut self, input: std::option::Option<std::string::String>) -> Self {
3722 self.email = input;
3723 self
3724 }
3725 pub fn build(self) -> crate::model::IdentityEmailLinkedAccount {
3727 crate::model::IdentityEmailLinkedAccount { email: self.email }
3728 }
3729 }
3730}
3731impl IdentityEmailLinkedAccount {
3732 pub fn builder() -> crate::model::identity_email_linked_account::Builder {
3734 crate::model::identity_email_linked_account::Builder::default()
3735 }
3736}
3737
3738#[non_exhaustive]
3740#[derive(
3741 std::clone::Clone,
3742 std::cmp::Eq,
3743 std::cmp::Ord,
3744 std::cmp::PartialEq,
3745 std::cmp::PartialOrd,
3746 std::fmt::Debug,
3747 std::hash::Hash,
3748)]
3749pub enum IdentityDevState {
3750 #[allow(missing_docs)] Accepted,
3752 #[allow(missing_docs)] Inactive,
3754 #[allow(missing_docs)] Pending,
3756 Unknown(String),
3758}
3759impl std::convert::From<&str> for IdentityDevState {
3760 fn from(s: &str) -> Self {
3761 match s {
3762 "accepted" => IdentityDevState::Accepted,
3763 "inactive" => IdentityDevState::Inactive,
3764 "pending" => IdentityDevState::Pending,
3765 other => IdentityDevState::Unknown(other.to_owned()),
3766 }
3767 }
3768}
3769impl std::str::FromStr for IdentityDevState {
3770 type Err = std::convert::Infallible;
3771
3772 fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
3773 Ok(IdentityDevState::from(s))
3774 }
3775}
3776impl IdentityDevState {
3777 pub fn as_str(&self) -> &str {
3779 match self {
3780 IdentityDevState::Accepted => "accepted",
3781 IdentityDevState::Inactive => "inactive",
3782 IdentityDevState::Pending => "pending",
3783 IdentityDevState::Unknown(s) => s.as_ref(),
3784 }
3785 }
3786 pub fn values() -> &'static [&'static str] {
3788 &["accepted", "inactive", "pending"]
3789 }
3790}
3791impl AsRef<str> for IdentityDevState {
3792 fn as_ref(&self) -> &str {
3793 self.as_str()
3794 }
3795}
3796
3797#[non_exhaustive]
3799#[derive(
3800 std::clone::Clone,
3801 std::cmp::Eq,
3802 std::cmp::Ord,
3803 std::cmp::PartialEq,
3804 std::cmp::PartialOrd,
3805 std::fmt::Debug,
3806 std::hash::Hash,
3807)]
3808pub enum GameLinkStatus {
3809 #[allow(missing_docs)] Cancelled,
3811 #[allow(missing_docs)] Complete,
3813 #[allow(missing_docs)] Incomplete,
3815 Unknown(String),
3817}
3818impl std::convert::From<&str> for GameLinkStatus {
3819 fn from(s: &str) -> Self {
3820 match s {
3821 "cancelled" => GameLinkStatus::Cancelled,
3822 "complete" => GameLinkStatus::Complete,
3823 "incomplete" => GameLinkStatus::Incomplete,
3824 other => GameLinkStatus::Unknown(other.to_owned()),
3825 }
3826 }
3827}
3828impl std::str::FromStr for GameLinkStatus {
3829 type Err = std::convert::Infallible;
3830
3831 fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
3832 Ok(GameLinkStatus::from(s))
3833 }
3834}
3835impl GameLinkStatus {
3836 pub fn as_str(&self) -> &str {
3838 match self {
3839 GameLinkStatus::Cancelled => "cancelled",
3840 GameLinkStatus::Complete => "complete",
3841 GameLinkStatus::Incomplete => "incomplete",
3842 GameLinkStatus::Unknown(s) => s.as_ref(),
3843 }
3844 }
3845 pub fn values() -> &'static [&'static str] {
3847 &["cancelled", "complete", "incomplete"]
3848 }
3849}
3850impl AsRef<str> for GameLinkStatus {
3851 fn as_ref(&self) -> &str {
3852 self.as_str()
3853 }
3854}
3855
3856#[non_exhaustive]
3858#[derive(std::clone::Clone, std::cmp::PartialEq)]
3859pub struct GlobalEvent {
3860 pub ts: std::option::Option<aws_smithy_types::DateTime>,
3862 pub kind: std::option::Option<crate::model::GlobalEventKind>,
3864 pub notification: std::option::Option<crate::model::GlobalEventNotification>,
3866}
3867impl GlobalEvent {
3868 pub fn ts(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
3870 self.ts.as_ref()
3871 }
3872 pub fn kind(&self) -> std::option::Option<&crate::model::GlobalEventKind> {
3874 self.kind.as_ref()
3875 }
3876 pub fn notification(&self) -> std::option::Option<&crate::model::GlobalEventNotification> {
3878 self.notification.as_ref()
3879 }
3880}
3881impl std::fmt::Debug for GlobalEvent {
3882 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3883 let mut formatter = f.debug_struct("GlobalEvent");
3884 formatter.field("ts", &self.ts);
3885 formatter.field("kind", &self.kind);
3886 formatter.field("notification", &self.notification);
3887 formatter.finish()
3888 }
3889}
3890pub mod global_event {
3892 #[non_exhaustive]
3894 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
3895 pub struct Builder {
3896 pub(crate) ts: std::option::Option<aws_smithy_types::DateTime>,
3897 pub(crate) kind: std::option::Option<crate::model::GlobalEventKind>,
3898 pub(crate) notification: std::option::Option<crate::model::GlobalEventNotification>,
3899 }
3900 impl Builder {
3901 pub fn ts(mut self, input: aws_smithy_types::DateTime) -> Self {
3903 self.ts = Some(input);
3904 self
3905 }
3906 pub fn set_ts(mut self, input: std::option::Option<aws_smithy_types::DateTime>) -> Self {
3908 self.ts = input;
3909 self
3910 }
3911 pub fn kind(mut self, input: crate::model::GlobalEventKind) -> Self {
3913 self.kind = Some(input);
3914 self
3915 }
3916 pub fn set_kind(
3918 mut self,
3919 input: std::option::Option<crate::model::GlobalEventKind>,
3920 ) -> Self {
3921 self.kind = input;
3922 self
3923 }
3924 pub fn notification(mut self, input: crate::model::GlobalEventNotification) -> Self {
3926 self.notification = Some(input);
3927 self
3928 }
3929 pub fn set_notification(
3931 mut self,
3932 input: std::option::Option<crate::model::GlobalEventNotification>,
3933 ) -> Self {
3934 self.notification = input;
3935 self
3936 }
3937 pub fn build(self) -> crate::model::GlobalEvent {
3939 crate::model::GlobalEvent {
3940 ts: self.ts,
3941 kind: self.kind,
3942 notification: self.notification,
3943 }
3944 }
3945 }
3946}
3947impl GlobalEvent {
3948 pub fn builder() -> crate::model::global_event::Builder {
3950 crate::model::global_event::Builder::default()
3951 }
3952}
3953
3954#[non_exhaustive]
3956#[derive(std::clone::Clone, std::cmp::PartialEq)]
3957pub struct GlobalEventNotification {
3958 #[allow(missing_docs)] pub title: std::option::Option<std::string::String>,
3960 #[allow(missing_docs)] pub description: std::option::Option<std::string::String>,
3962 pub thumbnail_url: std::option::Option<std::string::String>,
3964 pub url: std::option::Option<std::string::String>,
3966}
3967impl GlobalEventNotification {
3968 #[allow(missing_docs)] pub fn title(&self) -> std::option::Option<&str> {
3970 self.title.as_deref()
3971 }
3972 #[allow(missing_docs)] pub fn description(&self) -> std::option::Option<&str> {
3974 self.description.as_deref()
3975 }
3976 pub fn thumbnail_url(&self) -> std::option::Option<&str> {
3978 self.thumbnail_url.as_deref()
3979 }
3980 pub fn url(&self) -> std::option::Option<&str> {
3982 self.url.as_deref()
3983 }
3984}
3985impl std::fmt::Debug for GlobalEventNotification {
3986 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3987 let mut formatter = f.debug_struct("GlobalEventNotification");
3988 formatter.field("title", &self.title);
3989 formatter.field("description", &self.description);
3990 formatter.field("thumbnail_url", &self.thumbnail_url);
3991 formatter.field("url", &self.url);
3992 formatter.finish()
3993 }
3994}
3995pub mod global_event_notification {
3997 #[non_exhaustive]
3999 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
4000 pub struct Builder {
4001 pub(crate) title: std::option::Option<std::string::String>,
4002 pub(crate) description: std::option::Option<std::string::String>,
4003 pub(crate) thumbnail_url: std::option::Option<std::string::String>,
4004 pub(crate) url: std::option::Option<std::string::String>,
4005 }
4006 impl Builder {
4007 #[allow(missing_docs)] pub fn title(mut self, input: impl Into<std::string::String>) -> Self {
4009 self.title = Some(input.into());
4010 self
4011 }
4012 #[allow(missing_docs)] pub fn set_title(mut self, input: std::option::Option<std::string::String>) -> Self {
4014 self.title = input;
4015 self
4016 }
4017 #[allow(missing_docs)] pub fn description(mut self, input: impl Into<std::string::String>) -> Self {
4019 self.description = Some(input.into());
4020 self
4021 }
4022 #[allow(missing_docs)] pub fn set_description(mut self, input: std::option::Option<std::string::String>) -> Self {
4024 self.description = input;
4025 self
4026 }
4027 pub fn thumbnail_url(mut self, input: impl Into<std::string::String>) -> Self {
4029 self.thumbnail_url = Some(input.into());
4030 self
4031 }
4032 pub fn set_thumbnail_url(
4034 mut self,
4035 input: std::option::Option<std::string::String>,
4036 ) -> Self {
4037 self.thumbnail_url = input;
4038 self
4039 }
4040 pub fn url(mut self, input: impl Into<std::string::String>) -> Self {
4042 self.url = Some(input.into());
4043 self
4044 }
4045 pub fn set_url(mut self, input: std::option::Option<std::string::String>) -> Self {
4047 self.url = input;
4048 self
4049 }
4050 pub fn build(self) -> crate::model::GlobalEventNotification {
4052 crate::model::GlobalEventNotification {
4053 title: self.title,
4054 description: self.description,
4055 thumbnail_url: self.thumbnail_url,
4056 url: self.url,
4057 }
4058 }
4059 }
4060}
4061impl GlobalEventNotification {
4062 pub fn builder() -> crate::model::global_event_notification::Builder {
4064 crate::model::global_event_notification::Builder::default()
4065 }
4066}
4067
4068#[non_exhaustive]
4070#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
4071pub enum GlobalEventKind {
4072 ChatMessage(crate::model::GlobalEventChatMessage),
4074 ChatRead(crate::model::GlobalEventChatRead),
4076 ChatThreadRemove(crate::model::GlobalEventChatThreadRemove),
4078 IdentityUpdate(crate::model::GlobalEventIdentityUpdate),
4080 MatchmakerLobbyJoin(crate::model::GlobalEventMatchmakerLobbyJoin),
4082 PartyUpdate(crate::model::GlobalEventPartyUpdate),
4084 #[non_exhaustive]
4092 Unknown,
4093}
4094impl GlobalEventKind {
4095 pub fn as_chat_message(
4098 &self,
4099 ) -> std::result::Result<&crate::model::GlobalEventChatMessage, &Self> {
4100 if let GlobalEventKind::ChatMessage(val) = &self {
4101 Ok(val)
4102 } else {
4103 Err(self)
4104 }
4105 }
4106 pub fn is_chat_message(&self) -> bool {
4108 self.as_chat_message().is_ok()
4109 }
4110 pub fn as_chat_read(&self) -> std::result::Result<&crate::model::GlobalEventChatRead, &Self> {
4113 if let GlobalEventKind::ChatRead(val) = &self {
4114 Ok(val)
4115 } else {
4116 Err(self)
4117 }
4118 }
4119 pub fn is_chat_read(&self) -> bool {
4121 self.as_chat_read().is_ok()
4122 }
4123 pub fn as_chat_thread_remove(
4126 &self,
4127 ) -> std::result::Result<&crate::model::GlobalEventChatThreadRemove, &Self> {
4128 if let GlobalEventKind::ChatThreadRemove(val) = &self {
4129 Ok(val)
4130 } else {
4131 Err(self)
4132 }
4133 }
4134 pub fn is_chat_thread_remove(&self) -> bool {
4136 self.as_chat_thread_remove().is_ok()
4137 }
4138 pub fn as_identity_update(
4141 &self,
4142 ) -> std::result::Result<&crate::model::GlobalEventIdentityUpdate, &Self> {
4143 if let GlobalEventKind::IdentityUpdate(val) = &self {
4144 Ok(val)
4145 } else {
4146 Err(self)
4147 }
4148 }
4149 pub fn is_identity_update(&self) -> bool {
4151 self.as_identity_update().is_ok()
4152 }
4153 pub fn as_matchmaker_lobby_join(
4156 &self,
4157 ) -> std::result::Result<&crate::model::GlobalEventMatchmakerLobbyJoin, &Self> {
4158 if let GlobalEventKind::MatchmakerLobbyJoin(val) = &self {
4159 Ok(val)
4160 } else {
4161 Err(self)
4162 }
4163 }
4164 pub fn is_matchmaker_lobby_join(&self) -> bool {
4166 self.as_matchmaker_lobby_join().is_ok()
4167 }
4168 pub fn as_party_update(
4171 &self,
4172 ) -> std::result::Result<&crate::model::GlobalEventPartyUpdate, &Self> {
4173 if let GlobalEventKind::PartyUpdate(val) = &self {
4174 Ok(val)
4175 } else {
4176 Err(self)
4177 }
4178 }
4179 pub fn is_party_update(&self) -> bool {
4181 self.as_party_update().is_ok()
4182 }
4183 pub fn is_unknown(&self) -> bool {
4185 matches!(self, Self::Unknown)
4186 }
4187}
4188
4189#[non_exhaustive]
4191#[derive(std::clone::Clone, std::cmp::PartialEq)]
4192pub struct GlobalEventChatThreadRemove {
4193 pub thread_id: std::option::Option<std::string::String>,
4195}
4196impl GlobalEventChatThreadRemove {
4197 pub fn thread_id(&self) -> std::option::Option<&str> {
4199 self.thread_id.as_deref()
4200 }
4201}
4202impl std::fmt::Debug for GlobalEventChatThreadRemove {
4203 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4204 let mut formatter = f.debug_struct("GlobalEventChatThreadRemove");
4205 formatter.field("thread_id", &self.thread_id);
4206 formatter.finish()
4207 }
4208}
4209pub mod global_event_chat_thread_remove {
4211 #[non_exhaustive]
4213 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
4214 pub struct Builder {
4215 pub(crate) thread_id: std::option::Option<std::string::String>,
4216 }
4217 impl Builder {
4218 pub fn thread_id(mut self, input: impl Into<std::string::String>) -> Self {
4220 self.thread_id = Some(input.into());
4221 self
4222 }
4223 pub fn set_thread_id(mut self, input: std::option::Option<std::string::String>) -> Self {
4225 self.thread_id = input;
4226 self
4227 }
4228 pub fn build(self) -> crate::model::GlobalEventChatThreadRemove {
4230 crate::model::GlobalEventChatThreadRemove {
4231 thread_id: self.thread_id,
4232 }
4233 }
4234 }
4235}
4236impl GlobalEventChatThreadRemove {
4237 pub fn builder() -> crate::model::global_event_chat_thread_remove::Builder {
4239 crate::model::global_event_chat_thread_remove::Builder::default()
4240 }
4241}
4242
4243#[non_exhaustive]
4245#[derive(std::clone::Clone, std::cmp::PartialEq)]
4246pub struct GlobalEventMatchmakerLobbyJoin {
4247 pub lobby: std::option::Option<crate::model::MatchmakerLobbyJoinInfo>,
4249}
4250impl GlobalEventMatchmakerLobbyJoin {
4251 pub fn lobby(&self) -> std::option::Option<&crate::model::MatchmakerLobbyJoinInfo> {
4253 self.lobby.as_ref()
4254 }
4255}
4256impl std::fmt::Debug for GlobalEventMatchmakerLobbyJoin {
4257 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4258 let mut formatter = f.debug_struct("GlobalEventMatchmakerLobbyJoin");
4259 formatter.field("lobby", &self.lobby);
4260 formatter.finish()
4261 }
4262}
4263pub mod global_event_matchmaker_lobby_join {
4265 #[non_exhaustive]
4267 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
4268 pub struct Builder {
4269 pub(crate) lobby: std::option::Option<crate::model::MatchmakerLobbyJoinInfo>,
4270 }
4271 impl Builder {
4272 pub fn lobby(mut self, input: crate::model::MatchmakerLobbyJoinInfo) -> Self {
4274 self.lobby = Some(input);
4275 self
4276 }
4277 pub fn set_lobby(
4279 mut self,
4280 input: std::option::Option<crate::model::MatchmakerLobbyJoinInfo>,
4281 ) -> Self {
4282 self.lobby = input;
4283 self
4284 }
4285 pub fn build(self) -> crate::model::GlobalEventMatchmakerLobbyJoin {
4287 crate::model::GlobalEventMatchmakerLobbyJoin { lobby: self.lobby }
4288 }
4289 }
4290}
4291impl GlobalEventMatchmakerLobbyJoin {
4292 pub fn builder() -> crate::model::global_event_matchmaker_lobby_join::Builder {
4294 crate::model::global_event_matchmaker_lobby_join::Builder::default()
4295 }
4296}
4297
4298#[non_exhaustive]
4300#[derive(std::clone::Clone, std::cmp::PartialEq)]
4301pub struct MatchmakerLobbyJoinInfo {
4302 pub lobby_id: std::option::Option<std::string::String>,
4304 pub region: std::option::Option<crate::model::MatchmakerLobbyJoinInfoRegion>,
4306 pub ports: std::option::Option<
4308 std::collections::HashMap<std::string::String, crate::model::MatchmakerLobbyJoinInfoPort>,
4309 >,
4310 pub player: std::option::Option<crate::model::MatchmakerLobbyJoinInfoPlayer>,
4312}
4313impl MatchmakerLobbyJoinInfo {
4314 pub fn lobby_id(&self) -> std::option::Option<&str> {
4316 self.lobby_id.as_deref()
4317 }
4318 pub fn region(&self) -> std::option::Option<&crate::model::MatchmakerLobbyJoinInfoRegion> {
4320 self.region.as_ref()
4321 }
4322 pub fn ports(
4324 &self,
4325 ) -> std::option::Option<
4326 &std::collections::HashMap<std::string::String, crate::model::MatchmakerLobbyJoinInfoPort>,
4327 > {
4328 self.ports.as_ref()
4329 }
4330 pub fn player(&self) -> std::option::Option<&crate::model::MatchmakerLobbyJoinInfoPlayer> {
4332 self.player.as_ref()
4333 }
4334}
4335impl std::fmt::Debug for MatchmakerLobbyJoinInfo {
4336 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4337 let mut formatter = f.debug_struct("MatchmakerLobbyJoinInfo");
4338 formatter.field("lobby_id", &self.lobby_id);
4339 formatter.field("region", &self.region);
4340 formatter.field("ports", &self.ports);
4341 formatter.field("player", &self.player);
4342 formatter.finish()
4343 }
4344}
4345pub mod matchmaker_lobby_join_info {
4347 #[non_exhaustive]
4349 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
4350 pub struct Builder {
4351 pub(crate) lobby_id: std::option::Option<std::string::String>,
4352 pub(crate) region: std::option::Option<crate::model::MatchmakerLobbyJoinInfoRegion>,
4353 pub(crate) ports: std::option::Option<
4354 std::collections::HashMap<
4355 std::string::String,
4356 crate::model::MatchmakerLobbyJoinInfoPort,
4357 >,
4358 >,
4359 pub(crate) player: std::option::Option<crate::model::MatchmakerLobbyJoinInfoPlayer>,
4360 }
4361 impl Builder {
4362 pub fn lobby_id(mut self, input: impl Into<std::string::String>) -> Self {
4364 self.lobby_id = Some(input.into());
4365 self
4366 }
4367 pub fn set_lobby_id(mut self, input: std::option::Option<std::string::String>) -> Self {
4369 self.lobby_id = input;
4370 self
4371 }
4372 pub fn region(mut self, input: crate::model::MatchmakerLobbyJoinInfoRegion) -> Self {
4374 self.region = Some(input);
4375 self
4376 }
4377 pub fn set_region(
4379 mut self,
4380 input: std::option::Option<crate::model::MatchmakerLobbyJoinInfoRegion>,
4381 ) -> Self {
4382 self.region = input;
4383 self
4384 }
4385 pub fn ports(
4391 mut self,
4392 k: impl Into<std::string::String>,
4393 v: crate::model::MatchmakerLobbyJoinInfoPort,
4394 ) -> Self {
4395 let mut hash_map = self.ports.unwrap_or_default();
4396 hash_map.insert(k.into(), v);
4397 self.ports = Some(hash_map);
4398 self
4399 }
4400 pub fn set_ports(
4402 mut self,
4403 input: std::option::Option<
4404 std::collections::HashMap<
4405 std::string::String,
4406 crate::model::MatchmakerLobbyJoinInfoPort,
4407 >,
4408 >,
4409 ) -> Self {
4410 self.ports = input;
4411 self
4412 }
4413 pub fn player(mut self, input: crate::model::MatchmakerLobbyJoinInfoPlayer) -> Self {
4415 self.player = Some(input);
4416 self
4417 }
4418 pub fn set_player(
4420 mut self,
4421 input: std::option::Option<crate::model::MatchmakerLobbyJoinInfoPlayer>,
4422 ) -> Self {
4423 self.player = input;
4424 self
4425 }
4426 pub fn build(self) -> crate::model::MatchmakerLobbyJoinInfo {
4428 crate::model::MatchmakerLobbyJoinInfo {
4429 lobby_id: self.lobby_id,
4430 region: self.region,
4431 ports: self.ports,
4432 player: self.player,
4433 }
4434 }
4435 }
4436}
4437impl MatchmakerLobbyJoinInfo {
4438 pub fn builder() -> crate::model::matchmaker_lobby_join_info::Builder {
4440 crate::model::matchmaker_lobby_join_info::Builder::default()
4441 }
4442}
4443
4444#[non_exhaustive]
4446#[derive(std::clone::Clone, std::cmp::PartialEq)]
4447pub struct MatchmakerLobbyJoinInfoPlayer {
4448 pub token: std::option::Option<std::string::String>,
4450}
4451impl MatchmakerLobbyJoinInfoPlayer {
4452 pub fn token(&self) -> std::option::Option<&str> {
4454 self.token.as_deref()
4455 }
4456}
4457impl std::fmt::Debug for MatchmakerLobbyJoinInfoPlayer {
4458 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4459 let mut formatter = f.debug_struct("MatchmakerLobbyJoinInfoPlayer");
4460 formatter.field("token", &"*** Sensitive Data Redacted ***");
4461 formatter.finish()
4462 }
4463}
4464pub mod matchmaker_lobby_join_info_player {
4466 #[non_exhaustive]
4468 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
4469 pub struct Builder {
4470 pub(crate) token: std::option::Option<std::string::String>,
4471 }
4472 impl Builder {
4473 pub fn token(mut self, input: impl Into<std::string::String>) -> Self {
4475 self.token = Some(input.into());
4476 self
4477 }
4478 pub fn set_token(mut self, input: std::option::Option<std::string::String>) -> Self {
4480 self.token = input;
4481 self
4482 }
4483 pub fn build(self) -> crate::model::MatchmakerLobbyJoinInfoPlayer {
4485 crate::model::MatchmakerLobbyJoinInfoPlayer { token: self.token }
4486 }
4487 }
4488}
4489impl MatchmakerLobbyJoinInfoPlayer {
4490 pub fn builder() -> crate::model::matchmaker_lobby_join_info_player::Builder {
4492 crate::model::matchmaker_lobby_join_info_player::Builder::default()
4493 }
4494}
4495
4496#[non_exhaustive]
4498#[derive(std::clone::Clone, std::cmp::PartialEq)]
4499pub struct MatchmakerLobbyJoinInfoPort {
4500 pub host: std::option::Option<std::string::String>,
4502 pub hostname: std::option::Option<std::string::String>,
4504 pub port: std::option::Option<i32>,
4506 pub port_range: std::option::Option<crate::model::MatchmakerLobbyJoinInfoPortRange>,
4508 pub is_tls: std::option::Option<bool>,
4510}
4511impl MatchmakerLobbyJoinInfoPort {
4512 pub fn host(&self) -> std::option::Option<&str> {
4514 self.host.as_deref()
4515 }
4516 pub fn hostname(&self) -> std::option::Option<&str> {
4518 self.hostname.as_deref()
4519 }
4520 pub fn port(&self) -> std::option::Option<i32> {
4522 self.port
4523 }
4524 pub fn port_range(
4526 &self,
4527 ) -> std::option::Option<&crate::model::MatchmakerLobbyJoinInfoPortRange> {
4528 self.port_range.as_ref()
4529 }
4530 pub fn is_tls(&self) -> std::option::Option<bool> {
4532 self.is_tls
4533 }
4534}
4535impl std::fmt::Debug for MatchmakerLobbyJoinInfoPort {
4536 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4537 let mut formatter = f.debug_struct("MatchmakerLobbyJoinInfoPort");
4538 formatter.field("host", &self.host);
4539 formatter.field("hostname", &self.hostname);
4540 formatter.field("port", &self.port);
4541 formatter.field("port_range", &self.port_range);
4542 formatter.field("is_tls", &self.is_tls);
4543 formatter.finish()
4544 }
4545}
4546pub mod matchmaker_lobby_join_info_port {
4548 #[non_exhaustive]
4550 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
4551 pub struct Builder {
4552 pub(crate) host: std::option::Option<std::string::String>,
4553 pub(crate) hostname: std::option::Option<std::string::String>,
4554 pub(crate) port: std::option::Option<i32>,
4555 pub(crate) port_range: std::option::Option<crate::model::MatchmakerLobbyJoinInfoPortRange>,
4556 pub(crate) is_tls: std::option::Option<bool>,
4557 }
4558 impl Builder {
4559 pub fn host(mut self, input: impl Into<std::string::String>) -> Self {
4561 self.host = Some(input.into());
4562 self
4563 }
4564 pub fn set_host(mut self, input: std::option::Option<std::string::String>) -> Self {
4566 self.host = input;
4567 self
4568 }
4569 pub fn hostname(mut self, input: impl Into<std::string::String>) -> Self {
4571 self.hostname = Some(input.into());
4572 self
4573 }
4574 pub fn set_hostname(mut self, input: std::option::Option<std::string::String>) -> Self {
4576 self.hostname = input;
4577 self
4578 }
4579 pub fn port(mut self, input: i32) -> Self {
4581 self.port = Some(input);
4582 self
4583 }
4584 pub fn set_port(mut self, input: std::option::Option<i32>) -> Self {
4586 self.port = input;
4587 self
4588 }
4589 pub fn port_range(mut self, input: crate::model::MatchmakerLobbyJoinInfoPortRange) -> Self {
4591 self.port_range = Some(input);
4592 self
4593 }
4594 pub fn set_port_range(
4596 mut self,
4597 input: std::option::Option<crate::model::MatchmakerLobbyJoinInfoPortRange>,
4598 ) -> Self {
4599 self.port_range = input;
4600 self
4601 }
4602 pub fn is_tls(mut self, input: bool) -> Self {
4604 self.is_tls = Some(input);
4605 self
4606 }
4607 pub fn set_is_tls(mut self, input: std::option::Option<bool>) -> Self {
4609 self.is_tls = input;
4610 self
4611 }
4612 pub fn build(self) -> crate::model::MatchmakerLobbyJoinInfoPort {
4614 crate::model::MatchmakerLobbyJoinInfoPort {
4615 host: self.host,
4616 hostname: self.hostname,
4617 port: self.port,
4618 port_range: self.port_range,
4619 is_tls: self.is_tls,
4620 }
4621 }
4622 }
4623}
4624impl MatchmakerLobbyJoinInfoPort {
4625 pub fn builder() -> crate::model::matchmaker_lobby_join_info_port::Builder {
4627 crate::model::matchmaker_lobby_join_info_port::Builder::default()
4628 }
4629}
4630
4631#[non_exhaustive]
4633#[derive(std::clone::Clone, std::cmp::PartialEq)]
4634pub struct MatchmakerLobbyJoinInfoPortRange {
4635 pub min: std::option::Option<i32>,
4637 pub max: std::option::Option<i32>,
4639}
4640impl MatchmakerLobbyJoinInfoPortRange {
4641 pub fn min(&self) -> std::option::Option<i32> {
4643 self.min
4644 }
4645 pub fn max(&self) -> std::option::Option<i32> {
4647 self.max
4648 }
4649}
4650impl std::fmt::Debug for MatchmakerLobbyJoinInfoPortRange {
4651 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4652 let mut formatter = f.debug_struct("MatchmakerLobbyJoinInfoPortRange");
4653 formatter.field("min", &self.min);
4654 formatter.field("max", &self.max);
4655 formatter.finish()
4656 }
4657}
4658pub mod matchmaker_lobby_join_info_port_range {
4660 #[non_exhaustive]
4662 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
4663 pub struct Builder {
4664 pub(crate) min: std::option::Option<i32>,
4665 pub(crate) max: std::option::Option<i32>,
4666 }
4667 impl Builder {
4668 pub fn min(mut self, input: i32) -> Self {
4670 self.min = Some(input);
4671 self
4672 }
4673 pub fn set_min(mut self, input: std::option::Option<i32>) -> Self {
4675 self.min = input;
4676 self
4677 }
4678 pub fn max(mut self, input: i32) -> Self {
4680 self.max = Some(input);
4681 self
4682 }
4683 pub fn set_max(mut self, input: std::option::Option<i32>) -> Self {
4685 self.max = input;
4686 self
4687 }
4688 pub fn build(self) -> crate::model::MatchmakerLobbyJoinInfoPortRange {
4690 crate::model::MatchmakerLobbyJoinInfoPortRange {
4691 min: self.min,
4692 max: self.max,
4693 }
4694 }
4695 }
4696}
4697impl MatchmakerLobbyJoinInfoPortRange {
4698 pub fn builder() -> crate::model::matchmaker_lobby_join_info_port_range::Builder {
4700 crate::model::matchmaker_lobby_join_info_port_range::Builder::default()
4701 }
4702}
4703
4704#[non_exhaustive]
4706#[derive(std::clone::Clone, std::cmp::PartialEq)]
4707pub struct MatchmakerLobbyJoinInfoRegion {
4708 pub region_id: std::option::Option<std::string::String>,
4710 pub display_name: std::option::Option<std::string::String>,
4712}
4713impl MatchmakerLobbyJoinInfoRegion {
4714 pub fn region_id(&self) -> std::option::Option<&str> {
4716 self.region_id.as_deref()
4717 }
4718 pub fn display_name(&self) -> std::option::Option<&str> {
4720 self.display_name.as_deref()
4721 }
4722}
4723impl std::fmt::Debug for MatchmakerLobbyJoinInfoRegion {
4724 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4725 let mut formatter = f.debug_struct("MatchmakerLobbyJoinInfoRegion");
4726 formatter.field("region_id", &self.region_id);
4727 formatter.field("display_name", &self.display_name);
4728 formatter.finish()
4729 }
4730}
4731pub mod matchmaker_lobby_join_info_region {
4733 #[non_exhaustive]
4735 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
4736 pub struct Builder {
4737 pub(crate) region_id: std::option::Option<std::string::String>,
4738 pub(crate) display_name: std::option::Option<std::string::String>,
4739 }
4740 impl Builder {
4741 pub fn region_id(mut self, input: impl Into<std::string::String>) -> Self {
4743 self.region_id = Some(input.into());
4744 self
4745 }
4746 pub fn set_region_id(mut self, input: std::option::Option<std::string::String>) -> Self {
4748 self.region_id = input;
4749 self
4750 }
4751 pub fn display_name(mut self, input: impl Into<std::string::String>) -> Self {
4753 self.display_name = Some(input.into());
4754 self
4755 }
4756 pub fn set_display_name(mut self, input: std::option::Option<std::string::String>) -> Self {
4758 self.display_name = input;
4759 self
4760 }
4761 pub fn build(self) -> crate::model::MatchmakerLobbyJoinInfoRegion {
4763 crate::model::MatchmakerLobbyJoinInfoRegion {
4764 region_id: self.region_id,
4765 display_name: self.display_name,
4766 }
4767 }
4768 }
4769}
4770impl MatchmakerLobbyJoinInfoRegion {
4771 pub fn builder() -> crate::model::matchmaker_lobby_join_info_region::Builder {
4773 crate::model::matchmaker_lobby_join_info_region::Builder::default()
4774 }
4775}
4776
4777#[non_exhaustive]
4779#[derive(std::clone::Clone, std::cmp::PartialEq)]
4780pub struct GlobalEventIdentityUpdate {
4781 pub identity: std::option::Option<crate::model::IdentityProfile>,
4783}
4784impl GlobalEventIdentityUpdate {
4785 pub fn identity(&self) -> std::option::Option<&crate::model::IdentityProfile> {
4787 self.identity.as_ref()
4788 }
4789}
4790impl std::fmt::Debug for GlobalEventIdentityUpdate {
4791 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4792 let mut formatter = f.debug_struct("GlobalEventIdentityUpdate");
4793 formatter.field("identity", &self.identity);
4794 formatter.finish()
4795 }
4796}
4797pub mod global_event_identity_update {
4799 #[non_exhaustive]
4801 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
4802 pub struct Builder {
4803 pub(crate) identity: std::option::Option<crate::model::IdentityProfile>,
4804 }
4805 impl Builder {
4806 pub fn identity(mut self, input: crate::model::IdentityProfile) -> Self {
4808 self.identity = Some(input);
4809 self
4810 }
4811 pub fn set_identity(
4813 mut self,
4814 input: std::option::Option<crate::model::IdentityProfile>,
4815 ) -> Self {
4816 self.identity = input;
4817 self
4818 }
4819 pub fn build(self) -> crate::model::GlobalEventIdentityUpdate {
4821 crate::model::GlobalEventIdentityUpdate {
4822 identity: self.identity,
4823 }
4824 }
4825 }
4826}
4827impl GlobalEventIdentityUpdate {
4828 pub fn builder() -> crate::model::global_event_identity_update::Builder {
4830 crate::model::global_event_identity_update::Builder::default()
4831 }
4832}
4833
4834#[non_exhaustive]
4836#[derive(std::clone::Clone, std::cmp::PartialEq)]
4837pub struct GlobalEventPartyUpdate {
4838 pub party: std::option::Option<crate::model::PartySummary>,
4840}
4841impl GlobalEventPartyUpdate {
4842 pub fn party(&self) -> std::option::Option<&crate::model::PartySummary> {
4844 self.party.as_ref()
4845 }
4846}
4847impl std::fmt::Debug for GlobalEventPartyUpdate {
4848 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4849 let mut formatter = f.debug_struct("GlobalEventPartyUpdate");
4850 formatter.field("party", &self.party);
4851 formatter.finish()
4852 }
4853}
4854pub mod global_event_party_update {
4856 #[non_exhaustive]
4858 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
4859 pub struct Builder {
4860 pub(crate) party: std::option::Option<crate::model::PartySummary>,
4861 }
4862 impl Builder {
4863 pub fn party(mut self, input: crate::model::PartySummary) -> Self {
4865 self.party = Some(input);
4866 self
4867 }
4868 pub fn set_party(mut self, input: std::option::Option<crate::model::PartySummary>) -> Self {
4870 self.party = input;
4871 self
4872 }
4873 pub fn build(self) -> crate::model::GlobalEventPartyUpdate {
4875 crate::model::GlobalEventPartyUpdate { party: self.party }
4876 }
4877 }
4878}
4879impl GlobalEventPartyUpdate {
4880 pub fn builder() -> crate::model::global_event_party_update::Builder {
4882 crate::model::global_event_party_update::Builder::default()
4883 }
4884}
4885
4886#[non_exhaustive]
4888#[derive(std::clone::Clone, std::cmp::PartialEq)]
4889pub struct GlobalEventChatRead {
4890 pub thread_id: std::option::Option<std::string::String>,
4892 pub read_ts: std::option::Option<aws_smithy_types::DateTime>,
4894}
4895impl GlobalEventChatRead {
4896 pub fn thread_id(&self) -> std::option::Option<&str> {
4898 self.thread_id.as_deref()
4899 }
4900 pub fn read_ts(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
4902 self.read_ts.as_ref()
4903 }
4904}
4905impl std::fmt::Debug for GlobalEventChatRead {
4906 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4907 let mut formatter = f.debug_struct("GlobalEventChatRead");
4908 formatter.field("thread_id", &self.thread_id);
4909 formatter.field("read_ts", &self.read_ts);
4910 formatter.finish()
4911 }
4912}
4913pub mod global_event_chat_read {
4915 #[non_exhaustive]
4917 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
4918 pub struct Builder {
4919 pub(crate) thread_id: std::option::Option<std::string::String>,
4920 pub(crate) read_ts: std::option::Option<aws_smithy_types::DateTime>,
4921 }
4922 impl Builder {
4923 pub fn thread_id(mut self, input: impl Into<std::string::String>) -> Self {
4925 self.thread_id = Some(input.into());
4926 self
4927 }
4928 pub fn set_thread_id(mut self, input: std::option::Option<std::string::String>) -> Self {
4930 self.thread_id = input;
4931 self
4932 }
4933 pub fn read_ts(mut self, input: aws_smithy_types::DateTime) -> Self {
4935 self.read_ts = Some(input);
4936 self
4937 }
4938 pub fn set_read_ts(
4940 mut self,
4941 input: std::option::Option<aws_smithy_types::DateTime>,
4942 ) -> Self {
4943 self.read_ts = input;
4944 self
4945 }
4946 pub fn build(self) -> crate::model::GlobalEventChatRead {
4948 crate::model::GlobalEventChatRead {
4949 thread_id: self.thread_id,
4950 read_ts: self.read_ts,
4951 }
4952 }
4953 }
4954}
4955impl GlobalEventChatRead {
4956 pub fn builder() -> crate::model::global_event_chat_read::Builder {
4958 crate::model::global_event_chat_read::Builder::default()
4959 }
4960}
4961
4962#[non_exhaustive]
4964#[derive(std::clone::Clone, std::cmp::PartialEq)]
4965pub struct GlobalEventChatMessage {
4966 pub thread: std::option::Option<crate::model::ChatThread>,
4968}
4969impl GlobalEventChatMessage {
4970 pub fn thread(&self) -> std::option::Option<&crate::model::ChatThread> {
4972 self.thread.as_ref()
4973 }
4974}
4975impl std::fmt::Debug for GlobalEventChatMessage {
4976 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4977 let mut formatter = f.debug_struct("GlobalEventChatMessage");
4978 formatter.field("thread", &self.thread);
4979 formatter.finish()
4980 }
4981}
4982pub mod global_event_chat_message {
4984 #[non_exhaustive]
4986 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
4987 pub struct Builder {
4988 pub(crate) thread: std::option::Option<crate::model::ChatThread>,
4989 }
4990 impl Builder {
4991 pub fn thread(mut self, input: crate::model::ChatThread) -> Self {
4993 self.thread = Some(input);
4994 self
4995 }
4996 pub fn set_thread(mut self, input: std::option::Option<crate::model::ChatThread>) -> Self {
4998 self.thread = input;
4999 self
5000 }
5001 pub fn build(self) -> crate::model::GlobalEventChatMessage {
5003 crate::model::GlobalEventChatMessage {
5004 thread: self.thread,
5005 }
5006 }
5007 }
5008}
5009impl GlobalEventChatMessage {
5010 pub fn builder() -> crate::model::global_event_chat_message::Builder {
5012 crate::model::global_event_chat_message::Builder::default()
5013 }
5014}
5015
5016#[non_exhaustive]
5018#[derive(std::clone::Clone, std::cmp::PartialEq)]
5019pub struct ChatThread {
5020 pub thread_id: std::option::Option<std::string::String>,
5022 pub create_ts: std::option::Option<aws_smithy_types::DateTime>,
5024 pub topic: std::option::Option<crate::model::ChatTopic>,
5026 pub tail_message: std::option::Option<crate::model::ChatMessage>,
5028 pub last_read_ts: std::option::Option<aws_smithy_types::DateTime>,
5030 pub unread_count: std::option::Option<i64>,
5032 pub external: std::option::Option<crate::model::ChatThreadExternalLinks>,
5034}
5035impl ChatThread {
5036 pub fn thread_id(&self) -> std::option::Option<&str> {
5038 self.thread_id.as_deref()
5039 }
5040 pub fn create_ts(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
5042 self.create_ts.as_ref()
5043 }
5044 pub fn topic(&self) -> std::option::Option<&crate::model::ChatTopic> {
5046 self.topic.as_ref()
5047 }
5048 pub fn tail_message(&self) -> std::option::Option<&crate::model::ChatMessage> {
5050 self.tail_message.as_ref()
5051 }
5052 pub fn last_read_ts(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
5054 self.last_read_ts.as_ref()
5055 }
5056 pub fn unread_count(&self) -> std::option::Option<i64> {
5058 self.unread_count
5059 }
5060 pub fn external(&self) -> std::option::Option<&crate::model::ChatThreadExternalLinks> {
5062 self.external.as_ref()
5063 }
5064}
5065impl std::fmt::Debug for ChatThread {
5066 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5067 let mut formatter = f.debug_struct("ChatThread");
5068 formatter.field("thread_id", &self.thread_id);
5069 formatter.field("create_ts", &self.create_ts);
5070 formatter.field("topic", &self.topic);
5071 formatter.field("tail_message", &self.tail_message);
5072 formatter.field("last_read_ts", &self.last_read_ts);
5073 formatter.field("unread_count", &self.unread_count);
5074 formatter.field("external", &self.external);
5075 formatter.finish()
5076 }
5077}
5078pub mod chat_thread {
5080 #[non_exhaustive]
5082 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
5083 pub struct Builder {
5084 pub(crate) thread_id: std::option::Option<std::string::String>,
5085 pub(crate) create_ts: std::option::Option<aws_smithy_types::DateTime>,
5086 pub(crate) topic: std::option::Option<crate::model::ChatTopic>,
5087 pub(crate) tail_message: std::option::Option<crate::model::ChatMessage>,
5088 pub(crate) last_read_ts: std::option::Option<aws_smithy_types::DateTime>,
5089 pub(crate) unread_count: std::option::Option<i64>,
5090 pub(crate) external: std::option::Option<crate::model::ChatThreadExternalLinks>,
5091 }
5092 impl Builder {
5093 pub fn thread_id(mut self, input: impl Into<std::string::String>) -> Self {
5095 self.thread_id = Some(input.into());
5096 self
5097 }
5098 pub fn set_thread_id(mut self, input: std::option::Option<std::string::String>) -> Self {
5100 self.thread_id = input;
5101 self
5102 }
5103 pub fn create_ts(mut self, input: aws_smithy_types::DateTime) -> Self {
5105 self.create_ts = Some(input);
5106 self
5107 }
5108 pub fn set_create_ts(
5110 mut self,
5111 input: std::option::Option<aws_smithy_types::DateTime>,
5112 ) -> Self {
5113 self.create_ts = input;
5114 self
5115 }
5116 pub fn topic(mut self, input: crate::model::ChatTopic) -> Self {
5118 self.topic = Some(input);
5119 self
5120 }
5121 pub fn set_topic(mut self, input: std::option::Option<crate::model::ChatTopic>) -> Self {
5123 self.topic = input;
5124 self
5125 }
5126 pub fn tail_message(mut self, input: crate::model::ChatMessage) -> Self {
5128 self.tail_message = Some(input);
5129 self
5130 }
5131 pub fn set_tail_message(
5133 mut self,
5134 input: std::option::Option<crate::model::ChatMessage>,
5135 ) -> Self {
5136 self.tail_message = input;
5137 self
5138 }
5139 pub fn last_read_ts(mut self, input: aws_smithy_types::DateTime) -> Self {
5141 self.last_read_ts = Some(input);
5142 self
5143 }
5144 pub fn set_last_read_ts(
5146 mut self,
5147 input: std::option::Option<aws_smithy_types::DateTime>,
5148 ) -> Self {
5149 self.last_read_ts = input;
5150 self
5151 }
5152 pub fn unread_count(mut self, input: i64) -> Self {
5154 self.unread_count = Some(input);
5155 self
5156 }
5157 pub fn set_unread_count(mut self, input: std::option::Option<i64>) -> Self {
5159 self.unread_count = input;
5160 self
5161 }
5162 pub fn external(mut self, input: crate::model::ChatThreadExternalLinks) -> Self {
5164 self.external = Some(input);
5165 self
5166 }
5167 pub fn set_external(
5169 mut self,
5170 input: std::option::Option<crate::model::ChatThreadExternalLinks>,
5171 ) -> Self {
5172 self.external = input;
5173 self
5174 }
5175 pub fn build(self) -> crate::model::ChatThread {
5177 crate::model::ChatThread {
5178 thread_id: self.thread_id,
5179 create_ts: self.create_ts,
5180 topic: self.topic,
5181 tail_message: self.tail_message,
5182 last_read_ts: self.last_read_ts,
5183 unread_count: self.unread_count,
5184 external: self.external,
5185 }
5186 }
5187 }
5188}
5189impl ChatThread {
5190 pub fn builder() -> crate::model::chat_thread::Builder {
5192 crate::model::chat_thread::Builder::default()
5193 }
5194}
5195
5196#[non_exhaustive]
5198#[derive(std::clone::Clone, std::cmp::PartialEq)]
5199pub struct ChatThreadExternalLinks {
5200 pub chat: std::option::Option<std::string::String>,
5202}
5203impl ChatThreadExternalLinks {
5204 pub fn chat(&self) -> std::option::Option<&str> {
5206 self.chat.as_deref()
5207 }
5208}
5209impl std::fmt::Debug for ChatThreadExternalLinks {
5210 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5211 let mut formatter = f.debug_struct("ChatThreadExternalLinks");
5212 formatter.field("chat", &self.chat);
5213 formatter.finish()
5214 }
5215}
5216pub mod chat_thread_external_links {
5218 #[non_exhaustive]
5220 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
5221 pub struct Builder {
5222 pub(crate) chat: std::option::Option<std::string::String>,
5223 }
5224 impl Builder {
5225 pub fn chat(mut self, input: impl Into<std::string::String>) -> Self {
5227 self.chat = Some(input.into());
5228 self
5229 }
5230 pub fn set_chat(mut self, input: std::option::Option<std::string::String>) -> Self {
5232 self.chat = input;
5233 self
5234 }
5235 pub fn build(self) -> crate::model::ChatThreadExternalLinks {
5237 crate::model::ChatThreadExternalLinks { chat: self.chat }
5238 }
5239 }
5240}
5241impl ChatThreadExternalLinks {
5242 pub fn builder() -> crate::model::chat_thread_external_links::Builder {
5244 crate::model::chat_thread_external_links::Builder::default()
5245 }
5246}
5247
5248#[non_exhaustive]
5250#[derive(std::clone::Clone, std::cmp::PartialEq)]
5251pub struct ChatMessage {
5252 pub chat_message_id: std::option::Option<std::string::String>,
5254 pub thread_id: std::option::Option<std::string::String>,
5256 pub send_ts: std::option::Option<aws_smithy_types::DateTime>,
5258 pub body: std::option::Option<crate::model::ChatMessageBody>,
5260}
5261impl ChatMessage {
5262 pub fn chat_message_id(&self) -> std::option::Option<&str> {
5264 self.chat_message_id.as_deref()
5265 }
5266 pub fn thread_id(&self) -> std::option::Option<&str> {
5268 self.thread_id.as_deref()
5269 }
5270 pub fn send_ts(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
5272 self.send_ts.as_ref()
5273 }
5274 pub fn body(&self) -> std::option::Option<&crate::model::ChatMessageBody> {
5276 self.body.as_ref()
5277 }
5278}
5279impl std::fmt::Debug for ChatMessage {
5280 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5281 let mut formatter = f.debug_struct("ChatMessage");
5282 formatter.field("chat_message_id", &self.chat_message_id);
5283 formatter.field("thread_id", &self.thread_id);
5284 formatter.field("send_ts", &self.send_ts);
5285 formatter.field("body", &self.body);
5286 formatter.finish()
5287 }
5288}
5289pub mod chat_message {
5291 #[non_exhaustive]
5293 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
5294 pub struct Builder {
5295 pub(crate) chat_message_id: std::option::Option<std::string::String>,
5296 pub(crate) thread_id: std::option::Option<std::string::String>,
5297 pub(crate) send_ts: std::option::Option<aws_smithy_types::DateTime>,
5298 pub(crate) body: std::option::Option<crate::model::ChatMessageBody>,
5299 }
5300 impl Builder {
5301 pub fn chat_message_id(mut self, input: impl Into<std::string::String>) -> Self {
5303 self.chat_message_id = Some(input.into());
5304 self
5305 }
5306 pub fn set_chat_message_id(
5308 mut self,
5309 input: std::option::Option<std::string::String>,
5310 ) -> Self {
5311 self.chat_message_id = input;
5312 self
5313 }
5314 pub fn thread_id(mut self, input: impl Into<std::string::String>) -> Self {
5316 self.thread_id = Some(input.into());
5317 self
5318 }
5319 pub fn set_thread_id(mut self, input: std::option::Option<std::string::String>) -> Self {
5321 self.thread_id = input;
5322 self
5323 }
5324 pub fn send_ts(mut self, input: aws_smithy_types::DateTime) -> Self {
5326 self.send_ts = Some(input);
5327 self
5328 }
5329 pub fn set_send_ts(
5331 mut self,
5332 input: std::option::Option<aws_smithy_types::DateTime>,
5333 ) -> Self {
5334 self.send_ts = input;
5335 self
5336 }
5337 pub fn body(mut self, input: crate::model::ChatMessageBody) -> Self {
5339 self.body = Some(input);
5340 self
5341 }
5342 pub fn set_body(
5344 mut self,
5345 input: std::option::Option<crate::model::ChatMessageBody>,
5346 ) -> Self {
5347 self.body = input;
5348 self
5349 }
5350 pub fn build(self) -> crate::model::ChatMessage {
5352 crate::model::ChatMessage {
5353 chat_message_id: self.chat_message_id,
5354 thread_id: self.thread_id,
5355 send_ts: self.send_ts,
5356 body: self.body,
5357 }
5358 }
5359 }
5360}
5361impl ChatMessage {
5362 pub fn builder() -> crate::model::chat_message::Builder {
5364 crate::model::chat_message::Builder::default()
5365 }
5366}
5367
5368#[non_exhaustive]
5370#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
5371pub enum ChatMessageBody {
5372 ChatCreate(crate::model::ChatMessageBodyChatCreate),
5374 GroupJoin(crate::model::ChatMessageBodyGroupJoin),
5376 GroupLeave(crate::model::ChatMessageBodyGroupLeave),
5378 IdentityFollow(crate::model::ChatMessageBodyIdentityFollow),
5380 PartyActivityChange(crate::model::ChatMessageBodyPartyActivityChange),
5382 PartyInvite(crate::model::ChatMessageBodyPartyInvite),
5384 PartyJoin(crate::model::ChatMessageBodyPartyJoin),
5386 PartyJoinRequest(crate::model::ChatMessageBodyPartyJoinRequest),
5388 PartyLeave(crate::model::ChatMessageBodyPartyLeave),
5390 Text(crate::model::ChatMessageBodyText),
5392 #[non_exhaustive]
5400 Unknown,
5401}
5402impl ChatMessageBody {
5403 pub fn as_chat_create(
5406 &self,
5407 ) -> std::result::Result<&crate::model::ChatMessageBodyChatCreate, &Self> {
5408 if let ChatMessageBody::ChatCreate(val) = &self {
5409 Ok(val)
5410 } else {
5411 Err(self)
5412 }
5413 }
5414 pub fn is_chat_create(&self) -> bool {
5416 self.as_chat_create().is_ok()
5417 }
5418 pub fn as_group_join(
5421 &self,
5422 ) -> std::result::Result<&crate::model::ChatMessageBodyGroupJoin, &Self> {
5423 if let ChatMessageBody::GroupJoin(val) = &self {
5424 Ok(val)
5425 } else {
5426 Err(self)
5427 }
5428 }
5429 pub fn is_group_join(&self) -> bool {
5431 self.as_group_join().is_ok()
5432 }
5433 pub fn as_group_leave(
5436 &self,
5437 ) -> std::result::Result<&crate::model::ChatMessageBodyGroupLeave, &Self> {
5438 if let ChatMessageBody::GroupLeave(val) = &self {
5439 Ok(val)
5440 } else {
5441 Err(self)
5442 }
5443 }
5444 pub fn is_group_leave(&self) -> bool {
5446 self.as_group_leave().is_ok()
5447 }
5448 pub fn as_identity_follow(
5451 &self,
5452 ) -> std::result::Result<&crate::model::ChatMessageBodyIdentityFollow, &Self> {
5453 if let ChatMessageBody::IdentityFollow(val) = &self {
5454 Ok(val)
5455 } else {
5456 Err(self)
5457 }
5458 }
5459 pub fn is_identity_follow(&self) -> bool {
5461 self.as_identity_follow().is_ok()
5462 }
5463 pub fn as_party_activity_change(
5466 &self,
5467 ) -> std::result::Result<&crate::model::ChatMessageBodyPartyActivityChange, &Self> {
5468 if let ChatMessageBody::PartyActivityChange(val) = &self {
5469 Ok(val)
5470 } else {
5471 Err(self)
5472 }
5473 }
5474 pub fn is_party_activity_change(&self) -> bool {
5476 self.as_party_activity_change().is_ok()
5477 }
5478 pub fn as_party_invite(
5481 &self,
5482 ) -> std::result::Result<&crate::model::ChatMessageBodyPartyInvite, &Self> {
5483 if let ChatMessageBody::PartyInvite(val) = &self {
5484 Ok(val)
5485 } else {
5486 Err(self)
5487 }
5488 }
5489 pub fn is_party_invite(&self) -> bool {
5491 self.as_party_invite().is_ok()
5492 }
5493 pub fn as_party_join(
5496 &self,
5497 ) -> std::result::Result<&crate::model::ChatMessageBodyPartyJoin, &Self> {
5498 if let ChatMessageBody::PartyJoin(val) = &self {
5499 Ok(val)
5500 } else {
5501 Err(self)
5502 }
5503 }
5504 pub fn is_party_join(&self) -> bool {
5506 self.as_party_join().is_ok()
5507 }
5508 pub fn as_party_join_request(
5511 &self,
5512 ) -> std::result::Result<&crate::model::ChatMessageBodyPartyJoinRequest, &Self> {
5513 if let ChatMessageBody::PartyJoinRequest(val) = &self {
5514 Ok(val)
5515 } else {
5516 Err(self)
5517 }
5518 }
5519 pub fn is_party_join_request(&self) -> bool {
5521 self.as_party_join_request().is_ok()
5522 }
5523 pub fn as_party_leave(
5526 &self,
5527 ) -> std::result::Result<&crate::model::ChatMessageBodyPartyLeave, &Self> {
5528 if let ChatMessageBody::PartyLeave(val) = &self {
5529 Ok(val)
5530 } else {
5531 Err(self)
5532 }
5533 }
5534 pub fn is_party_leave(&self) -> bool {
5536 self.as_party_leave().is_ok()
5537 }
5538 pub fn as_text(&self) -> std::result::Result<&crate::model::ChatMessageBodyText, &Self> {
5541 if let ChatMessageBody::Text(val) = &self {
5542 Ok(val)
5543 } else {
5544 Err(self)
5545 }
5546 }
5547 pub fn is_text(&self) -> bool {
5549 self.as_text().is_ok()
5550 }
5551 pub fn is_unknown(&self) -> bool {
5553 matches!(self, Self::Unknown)
5554 }
5555}
5556
5557#[non_exhaustive]
5559#[derive(std::clone::Clone, std::cmp::PartialEq)]
5560pub struct ChatMessageBodyPartyActivityChange {}
5561impl std::fmt::Debug for ChatMessageBodyPartyActivityChange {
5562 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5563 let mut formatter = f.debug_struct("ChatMessageBodyPartyActivityChange");
5564 formatter.finish()
5565 }
5566}
5567pub mod chat_message_body_party_activity_change {
5569 #[non_exhaustive]
5571 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
5572 pub struct Builder {}
5573 impl Builder {
5574 pub fn build(self) -> crate::model::ChatMessageBodyPartyActivityChange {
5576 crate::model::ChatMessageBodyPartyActivityChange {}
5577 }
5578 }
5579}
5580impl ChatMessageBodyPartyActivityChange {
5581 pub fn builder() -> crate::model::chat_message_body_party_activity_change::Builder {
5583 crate::model::chat_message_body_party_activity_change::Builder::default()
5584 }
5585}
5586
5587#[non_exhaustive]
5589#[derive(std::clone::Clone, std::cmp::PartialEq)]
5590pub struct ChatMessageBodyPartyLeave {
5591 pub identity: std::option::Option<crate::model::IdentityHandle>,
5593}
5594impl ChatMessageBodyPartyLeave {
5595 pub fn identity(&self) -> std::option::Option<&crate::model::IdentityHandle> {
5597 self.identity.as_ref()
5598 }
5599}
5600impl std::fmt::Debug for ChatMessageBodyPartyLeave {
5601 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5602 let mut formatter = f.debug_struct("ChatMessageBodyPartyLeave");
5603 formatter.field("identity", &self.identity);
5604 formatter.finish()
5605 }
5606}
5607pub mod chat_message_body_party_leave {
5609 #[non_exhaustive]
5611 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
5612 pub struct Builder {
5613 pub(crate) identity: std::option::Option<crate::model::IdentityHandle>,
5614 }
5615 impl Builder {
5616 pub fn identity(mut self, input: crate::model::IdentityHandle) -> Self {
5618 self.identity = Some(input);
5619 self
5620 }
5621 pub fn set_identity(
5623 mut self,
5624 input: std::option::Option<crate::model::IdentityHandle>,
5625 ) -> Self {
5626 self.identity = input;
5627 self
5628 }
5629 pub fn build(self) -> crate::model::ChatMessageBodyPartyLeave {
5631 crate::model::ChatMessageBodyPartyLeave {
5632 identity: self.identity,
5633 }
5634 }
5635 }
5636}
5637impl ChatMessageBodyPartyLeave {
5638 pub fn builder() -> crate::model::chat_message_body_party_leave::Builder {
5640 crate::model::chat_message_body_party_leave::Builder::default()
5641 }
5642}
5643
5644#[non_exhaustive]
5646#[derive(std::clone::Clone, std::cmp::PartialEq)]
5647pub struct ChatMessageBodyPartyJoin {
5648 pub identity: std::option::Option<crate::model::IdentityHandle>,
5650}
5651impl ChatMessageBodyPartyJoin {
5652 pub fn identity(&self) -> std::option::Option<&crate::model::IdentityHandle> {
5654 self.identity.as_ref()
5655 }
5656}
5657impl std::fmt::Debug for ChatMessageBodyPartyJoin {
5658 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5659 let mut formatter = f.debug_struct("ChatMessageBodyPartyJoin");
5660 formatter.field("identity", &self.identity);
5661 formatter.finish()
5662 }
5663}
5664pub mod chat_message_body_party_join {
5666 #[non_exhaustive]
5668 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
5669 pub struct Builder {
5670 pub(crate) identity: std::option::Option<crate::model::IdentityHandle>,
5671 }
5672 impl Builder {
5673 pub fn identity(mut self, input: crate::model::IdentityHandle) -> Self {
5675 self.identity = Some(input);
5676 self
5677 }
5678 pub fn set_identity(
5680 mut self,
5681 input: std::option::Option<crate::model::IdentityHandle>,
5682 ) -> Self {
5683 self.identity = input;
5684 self
5685 }
5686 pub fn build(self) -> crate::model::ChatMessageBodyPartyJoin {
5688 crate::model::ChatMessageBodyPartyJoin {
5689 identity: self.identity,
5690 }
5691 }
5692 }
5693}
5694impl ChatMessageBodyPartyJoin {
5695 pub fn builder() -> crate::model::chat_message_body_party_join::Builder {
5697 crate::model::chat_message_body_party_join::Builder::default()
5698 }
5699}
5700
5701#[non_exhaustive]
5703#[derive(std::clone::Clone, std::cmp::PartialEq)]
5704pub struct ChatMessageBodyPartyJoinRequest {
5705 pub sender: std::option::Option<crate::model::IdentityHandle>,
5707}
5708impl ChatMessageBodyPartyJoinRequest {
5709 pub fn sender(&self) -> std::option::Option<&crate::model::IdentityHandle> {
5711 self.sender.as_ref()
5712 }
5713}
5714impl std::fmt::Debug for ChatMessageBodyPartyJoinRequest {
5715 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5716 let mut formatter = f.debug_struct("ChatMessageBodyPartyJoinRequest");
5717 formatter.field("sender", &self.sender);
5718 formatter.finish()
5719 }
5720}
5721pub mod chat_message_body_party_join_request {
5723 #[non_exhaustive]
5725 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
5726 pub struct Builder {
5727 pub(crate) sender: std::option::Option<crate::model::IdentityHandle>,
5728 }
5729 impl Builder {
5730 pub fn sender(mut self, input: crate::model::IdentityHandle) -> Self {
5732 self.sender = Some(input);
5733 self
5734 }
5735 pub fn set_sender(
5737 mut self,
5738 input: std::option::Option<crate::model::IdentityHandle>,
5739 ) -> Self {
5740 self.sender = input;
5741 self
5742 }
5743 pub fn build(self) -> crate::model::ChatMessageBodyPartyJoinRequest {
5745 crate::model::ChatMessageBodyPartyJoinRequest {
5746 sender: self.sender,
5747 }
5748 }
5749 }
5750}
5751impl ChatMessageBodyPartyJoinRequest {
5752 pub fn builder() -> crate::model::chat_message_body_party_join_request::Builder {
5754 crate::model::chat_message_body_party_join_request::Builder::default()
5755 }
5756}
5757
5758#[non_exhaustive]
5760#[derive(std::clone::Clone, std::cmp::PartialEq)]
5761pub struct ChatMessageBodyPartyInvite {
5762 pub sender: std::option::Option<crate::model::IdentityHandle>,
5764 pub party: std::option::Option<crate::model::PartyHandle>,
5766 pub invite_token: std::option::Option<std::string::String>,
5768}
5769impl ChatMessageBodyPartyInvite {
5770 pub fn sender(&self) -> std::option::Option<&crate::model::IdentityHandle> {
5772 self.sender.as_ref()
5773 }
5774 pub fn party(&self) -> std::option::Option<&crate::model::PartyHandle> {
5776 self.party.as_ref()
5777 }
5778 pub fn invite_token(&self) -> std::option::Option<&str> {
5780 self.invite_token.as_deref()
5781 }
5782}
5783impl std::fmt::Debug for ChatMessageBodyPartyInvite {
5784 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5785 let mut formatter = f.debug_struct("ChatMessageBodyPartyInvite");
5786 formatter.field("sender", &self.sender);
5787 formatter.field("party", &self.party);
5788 formatter.field("invite_token", &"*** Sensitive Data Redacted ***");
5789 formatter.finish()
5790 }
5791}
5792pub mod chat_message_body_party_invite {
5794 #[non_exhaustive]
5796 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
5797 pub struct Builder {
5798 pub(crate) sender: std::option::Option<crate::model::IdentityHandle>,
5799 pub(crate) party: std::option::Option<crate::model::PartyHandle>,
5800 pub(crate) invite_token: std::option::Option<std::string::String>,
5801 }
5802 impl Builder {
5803 pub fn sender(mut self, input: crate::model::IdentityHandle) -> Self {
5805 self.sender = Some(input);
5806 self
5807 }
5808 pub fn set_sender(
5810 mut self,
5811 input: std::option::Option<crate::model::IdentityHandle>,
5812 ) -> Self {
5813 self.sender = input;
5814 self
5815 }
5816 pub fn party(mut self, input: crate::model::PartyHandle) -> Self {
5818 self.party = Some(input);
5819 self
5820 }
5821 pub fn set_party(mut self, input: std::option::Option<crate::model::PartyHandle>) -> Self {
5823 self.party = input;
5824 self
5825 }
5826 pub fn invite_token(mut self, input: impl Into<std::string::String>) -> Self {
5828 self.invite_token = Some(input.into());
5829 self
5830 }
5831 pub fn set_invite_token(mut self, input: std::option::Option<std::string::String>) -> Self {
5833 self.invite_token = input;
5834 self
5835 }
5836 pub fn build(self) -> crate::model::ChatMessageBodyPartyInvite {
5838 crate::model::ChatMessageBodyPartyInvite {
5839 sender: self.sender,
5840 party: self.party,
5841 invite_token: self.invite_token,
5842 }
5843 }
5844 }
5845}
5846impl ChatMessageBodyPartyInvite {
5847 pub fn builder() -> crate::model::chat_message_body_party_invite::Builder {
5849 crate::model::chat_message_body_party_invite::Builder::default()
5850 }
5851}
5852
5853#[non_exhaustive]
5855#[derive(std::clone::Clone, std::cmp::PartialEq)]
5856pub struct ChatMessageBodyGroupLeave {
5857 pub identity: std::option::Option<crate::model::IdentityHandle>,
5859}
5860impl ChatMessageBodyGroupLeave {
5861 pub fn identity(&self) -> std::option::Option<&crate::model::IdentityHandle> {
5863 self.identity.as_ref()
5864 }
5865}
5866impl std::fmt::Debug for ChatMessageBodyGroupLeave {
5867 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5868 let mut formatter = f.debug_struct("ChatMessageBodyGroupLeave");
5869 formatter.field("identity", &self.identity);
5870 formatter.finish()
5871 }
5872}
5873pub mod chat_message_body_group_leave {
5875 #[non_exhaustive]
5877 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
5878 pub struct Builder {
5879 pub(crate) identity: std::option::Option<crate::model::IdentityHandle>,
5880 }
5881 impl Builder {
5882 pub fn identity(mut self, input: crate::model::IdentityHandle) -> Self {
5884 self.identity = Some(input);
5885 self
5886 }
5887 pub fn set_identity(
5889 mut self,
5890 input: std::option::Option<crate::model::IdentityHandle>,
5891 ) -> Self {
5892 self.identity = input;
5893 self
5894 }
5895 pub fn build(self) -> crate::model::ChatMessageBodyGroupLeave {
5897 crate::model::ChatMessageBodyGroupLeave {
5898 identity: self.identity,
5899 }
5900 }
5901 }
5902}
5903impl ChatMessageBodyGroupLeave {
5904 pub fn builder() -> crate::model::chat_message_body_group_leave::Builder {
5906 crate::model::chat_message_body_group_leave::Builder::default()
5907 }
5908}
5909
5910#[non_exhaustive]
5912#[derive(std::clone::Clone, std::cmp::PartialEq)]
5913pub struct ChatMessageBodyGroupJoin {
5914 pub identity: std::option::Option<crate::model::IdentityHandle>,
5916}
5917impl ChatMessageBodyGroupJoin {
5918 pub fn identity(&self) -> std::option::Option<&crate::model::IdentityHandle> {
5920 self.identity.as_ref()
5921 }
5922}
5923impl std::fmt::Debug for ChatMessageBodyGroupJoin {
5924 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5925 let mut formatter = f.debug_struct("ChatMessageBodyGroupJoin");
5926 formatter.field("identity", &self.identity);
5927 formatter.finish()
5928 }
5929}
5930pub mod chat_message_body_group_join {
5932 #[non_exhaustive]
5934 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
5935 pub struct Builder {
5936 pub(crate) identity: std::option::Option<crate::model::IdentityHandle>,
5937 }
5938 impl Builder {
5939 pub fn identity(mut self, input: crate::model::IdentityHandle) -> Self {
5941 self.identity = Some(input);
5942 self
5943 }
5944 pub fn set_identity(
5946 mut self,
5947 input: std::option::Option<crate::model::IdentityHandle>,
5948 ) -> Self {
5949 self.identity = input;
5950 self
5951 }
5952 pub fn build(self) -> crate::model::ChatMessageBodyGroupJoin {
5954 crate::model::ChatMessageBodyGroupJoin {
5955 identity: self.identity,
5956 }
5957 }
5958 }
5959}
5960impl ChatMessageBodyGroupJoin {
5961 pub fn builder() -> crate::model::chat_message_body_group_join::Builder {
5963 crate::model::chat_message_body_group_join::Builder::default()
5964 }
5965}
5966
5967#[non_exhaustive]
5969#[derive(std::clone::Clone, std::cmp::PartialEq)]
5970pub struct ChatMessageBodyIdentityFollow {}
5971impl std::fmt::Debug for ChatMessageBodyIdentityFollow {
5972 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5973 let mut formatter = f.debug_struct("ChatMessageBodyIdentityFollow");
5974 formatter.finish()
5975 }
5976}
5977pub mod chat_message_body_identity_follow {
5979 #[non_exhaustive]
5981 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
5982 pub struct Builder {}
5983 impl Builder {
5984 pub fn build(self) -> crate::model::ChatMessageBodyIdentityFollow {
5986 crate::model::ChatMessageBodyIdentityFollow {}
5987 }
5988 }
5989}
5990impl ChatMessageBodyIdentityFollow {
5991 pub fn builder() -> crate::model::chat_message_body_identity_follow::Builder {
5993 crate::model::chat_message_body_identity_follow::Builder::default()
5994 }
5995}
5996
5997#[non_exhaustive]
5999#[derive(std::clone::Clone, std::cmp::PartialEq)]
6000pub struct ChatMessageBodyChatCreate {}
6001impl std::fmt::Debug for ChatMessageBodyChatCreate {
6002 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6003 let mut formatter = f.debug_struct("ChatMessageBodyChatCreate");
6004 formatter.finish()
6005 }
6006}
6007pub mod chat_message_body_chat_create {
6009 #[non_exhaustive]
6011 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
6012 pub struct Builder {}
6013 impl Builder {
6014 pub fn build(self) -> crate::model::ChatMessageBodyChatCreate {
6016 crate::model::ChatMessageBodyChatCreate {}
6017 }
6018 }
6019}
6020impl ChatMessageBodyChatCreate {
6021 pub fn builder() -> crate::model::chat_message_body_chat_create::Builder {
6023 crate::model::chat_message_body_chat_create::Builder::default()
6024 }
6025}
6026
6027#[non_exhaustive]
6029#[derive(std::clone::Clone, std::cmp::PartialEq)]
6030pub struct ChatMessageBodyText {
6031 pub sender: std::option::Option<crate::model::IdentityHandle>,
6033 pub body: std::option::Option<std::string::String>,
6035}
6036impl ChatMessageBodyText {
6037 pub fn sender(&self) -> std::option::Option<&crate::model::IdentityHandle> {
6039 self.sender.as_ref()
6040 }
6041 pub fn body(&self) -> std::option::Option<&str> {
6043 self.body.as_deref()
6044 }
6045}
6046impl std::fmt::Debug for ChatMessageBodyText {
6047 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6048 let mut formatter = f.debug_struct("ChatMessageBodyText");
6049 formatter.field("sender", &self.sender);
6050 formatter.field("body", &self.body);
6051 formatter.finish()
6052 }
6053}
6054pub mod chat_message_body_text {
6056 #[non_exhaustive]
6058 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
6059 pub struct Builder {
6060 pub(crate) sender: std::option::Option<crate::model::IdentityHandle>,
6061 pub(crate) body: std::option::Option<std::string::String>,
6062 }
6063 impl Builder {
6064 pub fn sender(mut self, input: crate::model::IdentityHandle) -> Self {
6066 self.sender = Some(input);
6067 self
6068 }
6069 pub fn set_sender(
6071 mut self,
6072 input: std::option::Option<crate::model::IdentityHandle>,
6073 ) -> Self {
6074 self.sender = input;
6075 self
6076 }
6077 pub fn body(mut self, input: impl Into<std::string::String>) -> Self {
6079 self.body = Some(input.into());
6080 self
6081 }
6082 pub fn set_body(mut self, input: std::option::Option<std::string::String>) -> Self {
6084 self.body = input;
6085 self
6086 }
6087 pub fn build(self) -> crate::model::ChatMessageBodyText {
6089 crate::model::ChatMessageBodyText {
6090 sender: self.sender,
6091 body: self.body,
6092 }
6093 }
6094 }
6095}
6096impl ChatMessageBodyText {
6097 pub fn builder() -> crate::model::chat_message_body_text::Builder {
6099 crate::model::chat_message_body_text::Builder::default()
6100 }
6101}
6102
6103#[non_exhaustive]
6105#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
6106pub enum ChatTopic {
6107 Direct(crate::model::ChatTopicDirect),
6109 Group(crate::model::ChatTopicGroup),
6111 Party(crate::model::ChatTopicParty),
6113 #[non_exhaustive]
6121 Unknown,
6122}
6123impl ChatTopic {
6124 pub fn as_direct(&self) -> std::result::Result<&crate::model::ChatTopicDirect, &Self> {
6127 if let ChatTopic::Direct(val) = &self {
6128 Ok(val)
6129 } else {
6130 Err(self)
6131 }
6132 }
6133 pub fn is_direct(&self) -> bool {
6135 self.as_direct().is_ok()
6136 }
6137 pub fn as_group(&self) -> std::result::Result<&crate::model::ChatTopicGroup, &Self> {
6140 if let ChatTopic::Group(val) = &self {
6141 Ok(val)
6142 } else {
6143 Err(self)
6144 }
6145 }
6146 pub fn is_group(&self) -> bool {
6148 self.as_group().is_ok()
6149 }
6150 pub fn as_party(&self) -> std::result::Result<&crate::model::ChatTopicParty, &Self> {
6153 if let ChatTopic::Party(val) = &self {
6154 Ok(val)
6155 } else {
6156 Err(self)
6157 }
6158 }
6159 pub fn is_party(&self) -> bool {
6161 self.as_party().is_ok()
6162 }
6163 pub fn is_unknown(&self) -> bool {
6165 matches!(self, Self::Unknown)
6166 }
6167}
6168
6169#[non_exhaustive]
6171#[derive(std::clone::Clone, std::cmp::PartialEq)]
6172pub struct ChatTopicDirect {
6173 pub identity_a: std::option::Option<crate::model::IdentityHandle>,
6175 pub identity_b: std::option::Option<crate::model::IdentityHandle>,
6177}
6178impl ChatTopicDirect {
6179 pub fn identity_a(&self) -> std::option::Option<&crate::model::IdentityHandle> {
6181 self.identity_a.as_ref()
6182 }
6183 pub fn identity_b(&self) -> std::option::Option<&crate::model::IdentityHandle> {
6185 self.identity_b.as_ref()
6186 }
6187}
6188impl std::fmt::Debug for ChatTopicDirect {
6189 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6190 let mut formatter = f.debug_struct("ChatTopicDirect");
6191 formatter.field("identity_a", &self.identity_a);
6192 formatter.field("identity_b", &self.identity_b);
6193 formatter.finish()
6194 }
6195}
6196pub mod chat_topic_direct {
6198 #[non_exhaustive]
6200 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
6201 pub struct Builder {
6202 pub(crate) identity_a: std::option::Option<crate::model::IdentityHandle>,
6203 pub(crate) identity_b: std::option::Option<crate::model::IdentityHandle>,
6204 }
6205 impl Builder {
6206 pub fn identity_a(mut self, input: crate::model::IdentityHandle) -> Self {
6208 self.identity_a = Some(input);
6209 self
6210 }
6211 pub fn set_identity_a(
6213 mut self,
6214 input: std::option::Option<crate::model::IdentityHandle>,
6215 ) -> Self {
6216 self.identity_a = input;
6217 self
6218 }
6219 pub fn identity_b(mut self, input: crate::model::IdentityHandle) -> Self {
6221 self.identity_b = Some(input);
6222 self
6223 }
6224 pub fn set_identity_b(
6226 mut self,
6227 input: std::option::Option<crate::model::IdentityHandle>,
6228 ) -> Self {
6229 self.identity_b = input;
6230 self
6231 }
6232 pub fn build(self) -> crate::model::ChatTopicDirect {
6234 crate::model::ChatTopicDirect {
6235 identity_a: self.identity_a,
6236 identity_b: self.identity_b,
6237 }
6238 }
6239 }
6240}
6241impl ChatTopicDirect {
6242 pub fn builder() -> crate::model::chat_topic_direct::Builder {
6244 crate::model::chat_topic_direct::Builder::default()
6245 }
6246}
6247
6248#[non_exhaustive]
6250#[derive(std::clone::Clone, std::cmp::PartialEq)]
6251pub struct ChatTopicParty {
6252 pub party: std::option::Option<crate::model::PartyHandle>,
6254}
6255impl ChatTopicParty {
6256 pub fn party(&self) -> std::option::Option<&crate::model::PartyHandle> {
6258 self.party.as_ref()
6259 }
6260}
6261impl std::fmt::Debug for ChatTopicParty {
6262 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6263 let mut formatter = f.debug_struct("ChatTopicParty");
6264 formatter.field("party", &self.party);
6265 formatter.finish()
6266 }
6267}
6268pub mod chat_topic_party {
6270 #[non_exhaustive]
6272 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
6273 pub struct Builder {
6274 pub(crate) party: std::option::Option<crate::model::PartyHandle>,
6275 }
6276 impl Builder {
6277 pub fn party(mut self, input: crate::model::PartyHandle) -> Self {
6279 self.party = Some(input);
6280 self
6281 }
6282 pub fn set_party(mut self, input: std::option::Option<crate::model::PartyHandle>) -> Self {
6284 self.party = input;
6285 self
6286 }
6287 pub fn build(self) -> crate::model::ChatTopicParty {
6289 crate::model::ChatTopicParty { party: self.party }
6290 }
6291 }
6292}
6293impl ChatTopicParty {
6294 pub fn builder() -> crate::model::chat_topic_party::Builder {
6296 crate::model::chat_topic_party::Builder::default()
6297 }
6298}
6299
6300#[non_exhaustive]
6302#[derive(std::clone::Clone, std::cmp::PartialEq)]
6303pub struct ChatTopicGroup {
6304 pub group: std::option::Option<crate::model::GroupHandle>,
6306}
6307impl ChatTopicGroup {
6308 pub fn group(&self) -> std::option::Option<&crate::model::GroupHandle> {
6310 self.group.as_ref()
6311 }
6312}
6313impl std::fmt::Debug for ChatTopicGroup {
6314 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6315 let mut formatter = f.debug_struct("ChatTopicGroup");
6316 formatter.field("group", &self.group);
6317 formatter.finish()
6318 }
6319}
6320pub mod chat_topic_group {
6322 #[non_exhaustive]
6324 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
6325 pub struct Builder {
6326 pub(crate) group: std::option::Option<crate::model::GroupHandle>,
6327 }
6328 impl Builder {
6329 pub fn group(mut self, input: crate::model::GroupHandle) -> Self {
6331 self.group = Some(input);
6332 self
6333 }
6334 pub fn set_group(mut self, input: std::option::Option<crate::model::GroupHandle>) -> Self {
6336 self.group = input;
6337 self
6338 }
6339 pub fn build(self) -> crate::model::ChatTopicGroup {
6341 crate::model::ChatTopicGroup { group: self.group }
6342 }
6343 }
6344}
6345impl ChatTopicGroup {
6346 pub fn builder() -> crate::model::chat_topic_group::Builder {
6348 crate::model::chat_topic_group::Builder::default()
6349 }
6350}
6351
6352#[non_exhaustive]
6354#[derive(std::clone::Clone, std::cmp::PartialEq)]
6355pub struct IdentitySummary {
6356 pub identity_id: std::option::Option<std::string::String>,
6358 pub display_name: std::option::Option<std::string::String>,
6360 pub account_number: std::option::Option<i32>,
6362 pub avatar_url: std::option::Option<std::string::String>,
6364 pub presence: std::option::Option<crate::model::IdentityPresence>,
6366 pub party: std::option::Option<crate::model::PartyHandle>,
6368 pub is_registered: std::option::Option<bool>,
6370 pub external: std::option::Option<crate::model::IdentityExternalLinks>,
6372 pub following: std::option::Option<bool>,
6374 pub is_following_me: std::option::Option<bool>,
6376 pub is_mutual_following: std::option::Option<bool>,
6378}
6379impl IdentitySummary {
6380 pub fn identity_id(&self) -> std::option::Option<&str> {
6382 self.identity_id.as_deref()
6383 }
6384 pub fn display_name(&self) -> std::option::Option<&str> {
6386 self.display_name.as_deref()
6387 }
6388 pub fn account_number(&self) -> std::option::Option<i32> {
6390 self.account_number
6391 }
6392 pub fn avatar_url(&self) -> std::option::Option<&str> {
6394 self.avatar_url.as_deref()
6395 }
6396 pub fn presence(&self) -> std::option::Option<&crate::model::IdentityPresence> {
6398 self.presence.as_ref()
6399 }
6400 pub fn party(&self) -> std::option::Option<&crate::model::PartyHandle> {
6402 self.party.as_ref()
6403 }
6404 pub fn is_registered(&self) -> std::option::Option<bool> {
6406 self.is_registered
6407 }
6408 pub fn external(&self) -> std::option::Option<&crate::model::IdentityExternalLinks> {
6410 self.external.as_ref()
6411 }
6412 pub fn following(&self) -> std::option::Option<bool> {
6414 self.following
6415 }
6416 pub fn is_following_me(&self) -> std::option::Option<bool> {
6418 self.is_following_me
6419 }
6420 pub fn is_mutual_following(&self) -> std::option::Option<bool> {
6422 self.is_mutual_following
6423 }
6424}
6425impl std::fmt::Debug for IdentitySummary {
6426 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6427 let mut formatter = f.debug_struct("IdentitySummary");
6428 formatter.field("identity_id", &self.identity_id);
6429 formatter.field("display_name", &self.display_name);
6430 formatter.field("account_number", &self.account_number);
6431 formatter.field("avatar_url", &self.avatar_url);
6432 formatter.field("presence", &self.presence);
6433 formatter.field("party", &self.party);
6434 formatter.field("is_registered", &self.is_registered);
6435 formatter.field("external", &self.external);
6436 formatter.field("following", &self.following);
6437 formatter.field("is_following_me", &self.is_following_me);
6438 formatter.field("is_mutual_following", &self.is_mutual_following);
6439 formatter.finish()
6440 }
6441}
6442pub mod identity_summary {
6444 #[non_exhaustive]
6446 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
6447 pub struct Builder {
6448 pub(crate) identity_id: std::option::Option<std::string::String>,
6449 pub(crate) display_name: std::option::Option<std::string::String>,
6450 pub(crate) account_number: std::option::Option<i32>,
6451 pub(crate) avatar_url: std::option::Option<std::string::String>,
6452 pub(crate) presence: std::option::Option<crate::model::IdentityPresence>,
6453 pub(crate) party: std::option::Option<crate::model::PartyHandle>,
6454 pub(crate) is_registered: std::option::Option<bool>,
6455 pub(crate) external: std::option::Option<crate::model::IdentityExternalLinks>,
6456 pub(crate) following: std::option::Option<bool>,
6457 pub(crate) is_following_me: std::option::Option<bool>,
6458 pub(crate) is_mutual_following: std::option::Option<bool>,
6459 }
6460 impl Builder {
6461 pub fn identity_id(mut self, input: impl Into<std::string::String>) -> Self {
6463 self.identity_id = Some(input.into());
6464 self
6465 }
6466 pub fn set_identity_id(mut self, input: std::option::Option<std::string::String>) -> Self {
6468 self.identity_id = input;
6469 self
6470 }
6471 pub fn display_name(mut self, input: impl Into<std::string::String>) -> Self {
6473 self.display_name = Some(input.into());
6474 self
6475 }
6476 pub fn set_display_name(mut self, input: std::option::Option<std::string::String>) -> Self {
6478 self.display_name = input;
6479 self
6480 }
6481 pub fn account_number(mut self, input: i32) -> Self {
6483 self.account_number = Some(input);
6484 self
6485 }
6486 pub fn set_account_number(mut self, input: std::option::Option<i32>) -> Self {
6488 self.account_number = input;
6489 self
6490 }
6491 pub fn avatar_url(mut self, input: impl Into<std::string::String>) -> Self {
6493 self.avatar_url = Some(input.into());
6494 self
6495 }
6496 pub fn set_avatar_url(mut self, input: std::option::Option<std::string::String>) -> Self {
6498 self.avatar_url = input;
6499 self
6500 }
6501 pub fn presence(mut self, input: crate::model::IdentityPresence) -> Self {
6503 self.presence = Some(input);
6504 self
6505 }
6506 pub fn set_presence(
6508 mut self,
6509 input: std::option::Option<crate::model::IdentityPresence>,
6510 ) -> Self {
6511 self.presence = input;
6512 self
6513 }
6514 pub fn party(mut self, input: crate::model::PartyHandle) -> Self {
6516 self.party = Some(input);
6517 self
6518 }
6519 pub fn set_party(mut self, input: std::option::Option<crate::model::PartyHandle>) -> Self {
6521 self.party = input;
6522 self
6523 }
6524 pub fn is_registered(mut self, input: bool) -> Self {
6526 self.is_registered = Some(input);
6527 self
6528 }
6529 pub fn set_is_registered(mut self, input: std::option::Option<bool>) -> Self {
6531 self.is_registered = input;
6532 self
6533 }
6534 pub fn external(mut self, input: crate::model::IdentityExternalLinks) -> Self {
6536 self.external = Some(input);
6537 self
6538 }
6539 pub fn set_external(
6541 mut self,
6542 input: std::option::Option<crate::model::IdentityExternalLinks>,
6543 ) -> Self {
6544 self.external = input;
6545 self
6546 }
6547 pub fn following(mut self, input: bool) -> Self {
6549 self.following = Some(input);
6550 self
6551 }
6552 pub fn set_following(mut self, input: std::option::Option<bool>) -> Self {
6554 self.following = input;
6555 self
6556 }
6557 pub fn is_following_me(mut self, input: bool) -> Self {
6559 self.is_following_me = Some(input);
6560 self
6561 }
6562 pub fn set_is_following_me(mut self, input: std::option::Option<bool>) -> Self {
6564 self.is_following_me = input;
6565 self
6566 }
6567 pub fn is_mutual_following(mut self, input: bool) -> Self {
6569 self.is_mutual_following = Some(input);
6570 self
6571 }
6572 pub fn set_is_mutual_following(mut self, input: std::option::Option<bool>) -> Self {
6574 self.is_mutual_following = input;
6575 self
6576 }
6577 pub fn build(self) -> crate::model::IdentitySummary {
6579 crate::model::IdentitySummary {
6580 identity_id: self.identity_id,
6581 display_name: self.display_name,
6582 account_number: self.account_number,
6583 avatar_url: self.avatar_url,
6584 presence: self.presence,
6585 party: self.party,
6586 is_registered: self.is_registered,
6587 external: self.external,
6588 following: self.following,
6589 is_following_me: self.is_following_me,
6590 is_mutual_following: self.is_mutual_following,
6591 }
6592 }
6593 }
6594}
6595impl IdentitySummary {
6596 pub fn builder() -> crate::model::identity_summary::Builder {
6598 crate::model::identity_summary::Builder::default()
6599 }
6600}
6601
6602#[non_exhaustive]
6604#[derive(std::clone::Clone, std::cmp::PartialEq)]
6605pub struct UploadPresignedRequest {
6606 pub path: std::option::Option<std::string::String>,
6608 pub url: std::option::Option<std::string::String>,
6610}
6611impl UploadPresignedRequest {
6612 pub fn path(&self) -> std::option::Option<&str> {
6614 self.path.as_deref()
6615 }
6616 pub fn url(&self) -> std::option::Option<&str> {
6618 self.url.as_deref()
6619 }
6620}
6621impl std::fmt::Debug for UploadPresignedRequest {
6622 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6623 let mut formatter = f.debug_struct("UploadPresignedRequest");
6624 formatter.field("path", &self.path);
6625 formatter.field("url", &self.url);
6626 formatter.finish()
6627 }
6628}
6629pub mod upload_presigned_request {
6631 #[non_exhaustive]
6633 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
6634 pub struct Builder {
6635 pub(crate) path: std::option::Option<std::string::String>,
6636 pub(crate) url: std::option::Option<std::string::String>,
6637 }
6638 impl Builder {
6639 pub fn path(mut self, input: impl Into<std::string::String>) -> Self {
6641 self.path = Some(input.into());
6642 self
6643 }
6644 pub fn set_path(mut self, input: std::option::Option<std::string::String>) -> Self {
6646 self.path = input;
6647 self
6648 }
6649 pub fn url(mut self, input: impl Into<std::string::String>) -> Self {
6651 self.url = Some(input.into());
6652 self
6653 }
6654 pub fn set_url(mut self, input: std::option::Option<std::string::String>) -> Self {
6656 self.url = input;
6657 self
6658 }
6659 pub fn build(self) -> crate::model::UploadPresignedRequest {
6661 crate::model::UploadPresignedRequest {
6662 path: self.path,
6663 url: self.url,
6664 }
6665 }
6666 }
6667}
6668impl UploadPresignedRequest {
6669 pub fn builder() -> crate::model::upload_presigned_request::Builder {
6671 crate::model::upload_presigned_request::Builder::default()
6672 }
6673}
6674
6675#[non_exhaustive]
6677#[derive(std::clone::Clone, std::cmp::PartialEq)]
6678pub struct UpdateIdentityGameActivity {
6679 pub message: std::option::Option<std::string::String>,
6681 pub public_metadata: std::option::Option<aws_smithy_types::Document>,
6683 pub mutual_metadata: std::option::Option<aws_smithy_types::Document>,
6685}
6686impl UpdateIdentityGameActivity {
6687 pub fn message(&self) -> std::option::Option<&str> {
6689 self.message.as_deref()
6690 }
6691 pub fn public_metadata(&self) -> std::option::Option<&aws_smithy_types::Document> {
6693 self.public_metadata.as_ref()
6694 }
6695 pub fn mutual_metadata(&self) -> std::option::Option<&aws_smithy_types::Document> {
6697 self.mutual_metadata.as_ref()
6698 }
6699}
6700impl std::fmt::Debug for UpdateIdentityGameActivity {
6701 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6702 let mut formatter = f.debug_struct("UpdateIdentityGameActivity");
6703 formatter.field("message", &self.message);
6704 formatter.field("public_metadata", &self.public_metadata);
6705 formatter.field("mutual_metadata", &self.mutual_metadata);
6706 formatter.finish()
6707 }
6708}
6709pub mod update_identity_game_activity {
6711 #[non_exhaustive]
6713 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
6714 pub struct Builder {
6715 pub(crate) message: std::option::Option<std::string::String>,
6716 pub(crate) public_metadata: std::option::Option<aws_smithy_types::Document>,
6717 pub(crate) mutual_metadata: std::option::Option<aws_smithy_types::Document>,
6718 }
6719 impl Builder {
6720 pub fn message(mut self, input: impl Into<std::string::String>) -> Self {
6722 self.message = Some(input.into());
6723 self
6724 }
6725 pub fn set_message(mut self, input: std::option::Option<std::string::String>) -> Self {
6727 self.message = input;
6728 self
6729 }
6730 pub fn public_metadata(mut self, input: aws_smithy_types::Document) -> Self {
6732 self.public_metadata = Some(input);
6733 self
6734 }
6735 pub fn set_public_metadata(
6737 mut self,
6738 input: std::option::Option<aws_smithy_types::Document>,
6739 ) -> Self {
6740 self.public_metadata = input;
6741 self
6742 }
6743 pub fn mutual_metadata(mut self, input: aws_smithy_types::Document) -> Self {
6745 self.mutual_metadata = Some(input);
6746 self
6747 }
6748 pub fn set_mutual_metadata(
6750 mut self,
6751 input: std::option::Option<aws_smithy_types::Document>,
6752 ) -> Self {
6753 self.mutual_metadata = input;
6754 self
6755 }
6756 pub fn build(self) -> crate::model::UpdateIdentityGameActivity {
6758 crate::model::UpdateIdentityGameActivity {
6759 message: self.message,
6760 public_metadata: self.public_metadata,
6761 mutual_metadata: self.mutual_metadata,
6762 }
6763 }
6764 }
6765}
6766impl UpdateIdentityGameActivity {
6767 pub fn builder() -> crate::model::update_identity_game_activity::Builder {
6769 crate::model::update_identity_game_activity::Builder::default()
6770 }
6771}
6772
6773#[non_exhaustive]
6775#[derive(std::clone::Clone, std::cmp::PartialEq)]
6776pub struct ValidationError {
6777 pub path: std::option::Option<std::vec::Vec<std::string::String>>,
6779}
6780impl ValidationError {
6781 pub fn path(&self) -> std::option::Option<&[std::string::String]> {
6783 self.path.as_deref()
6784 }
6785}
6786impl std::fmt::Debug for ValidationError {
6787 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
6788 let mut formatter = f.debug_struct("ValidationError");
6789 formatter.field("path", &self.path);
6790 formatter.finish()
6791 }
6792}
6793pub mod validation_error {
6795 #[non_exhaustive]
6797 #[derive(std::default::Default, std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
6798 pub struct Builder {
6799 pub(crate) path: std::option::Option<std::vec::Vec<std::string::String>>,
6800 }
6801 impl Builder {
6802 pub fn path(mut self, input: impl Into<std::string::String>) -> Self {
6808 let mut v = self.path.unwrap_or_default();
6809 v.push(input.into());
6810 self.path = Some(v);
6811 self
6812 }
6813 pub fn set_path(
6815 mut self,
6816 input: std::option::Option<std::vec::Vec<std::string::String>>,
6817 ) -> Self {
6818 self.path = input;
6819 self
6820 }
6821 pub fn build(self) -> crate::model::ValidationError {
6823 crate::model::ValidationError { path: self.path }
6824 }
6825 }
6826}
6827impl ValidationError {
6828 pub fn builder() -> crate::model::validation_error::Builder {
6830 crate::model::validation_error::Builder::default()
6831 }
6832}