#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
pub struct Session {
pub session_id: ::std::option::Option<::std::string::String>,
pub stream_url: ::std::option::Option<::std::string::String>,
pub token_value: ::std::option::Option<::std::string::String>,
}
impl Session {
pub fn session_id(&self) -> ::std::option::Option<&str> {
self.session_id.as_deref()
}
pub fn stream_url(&self) -> ::std::option::Option<&str> {
self.stream_url.as_deref()
}
pub fn token_value(&self) -> ::std::option::Option<&str> {
self.token_value.as_deref()
}
}
impl ::std::fmt::Debug for Session {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
let mut formatter = f.debug_struct("Session");
formatter.field("session_id", &self.session_id);
formatter.field("stream_url", &self.stream_url);
formatter.field("token_value", &"*** Sensitive Data Redacted ***");
formatter.finish()
}
}
impl Session {
pub fn builder() -> crate::types::builders::SessionBuilder {
crate::types::builders::SessionBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
#[non_exhaustive]
pub struct SessionBuilder {
pub(crate) session_id: ::std::option::Option<::std::string::String>,
pub(crate) stream_url: ::std::option::Option<::std::string::String>,
pub(crate) token_value: ::std::option::Option<::std::string::String>,
}
impl SessionBuilder {
pub fn session_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.session_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_session_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.session_id = input;
self
}
pub fn get_session_id(&self) -> &::std::option::Option<::std::string::String> {
&self.session_id
}
pub fn stream_url(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.stream_url = ::std::option::Option::Some(input.into());
self
}
pub fn set_stream_url(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.stream_url = input;
self
}
pub fn get_stream_url(&self) -> &::std::option::Option<::std::string::String> {
&self.stream_url
}
pub fn token_value(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.token_value = ::std::option::Option::Some(input.into());
self
}
pub fn set_token_value(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.token_value = input;
self
}
pub fn get_token_value(&self) -> &::std::option::Option<::std::string::String> {
&self.token_value
}
pub fn build(self) -> crate::types::Session {
crate::types::Session {
session_id: self.session_id,
stream_url: self.stream_url,
token_value: self.token_value,
}
}
}
impl ::std::fmt::Debug for SessionBuilder {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
let mut formatter = f.debug_struct("SessionBuilder");
formatter.field("session_id", &self.session_id);
formatter.field("stream_url", &self.stream_url);
formatter.field("token_value", &"*** Sensitive Data Redacted ***");
formatter.finish()
}
}