aws_sdk_qconnect/operation/query_assistant/
_query_assistant_input.rs1#[allow(missing_docs)] #[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
5pub struct QueryAssistantInput {
6 pub assistant_id: ::std::option::Option<::std::string::String>,
8 pub query_text: ::std::option::Option<::std::string::String>,
10 pub next_token: ::std::option::Option<::std::string::String>,
12 pub max_results: ::std::option::Option<i32>,
14 pub session_id: ::std::option::Option<::std::string::String>,
16 pub query_condition: ::std::option::Option<::std::vec::Vec<crate::types::QueryCondition>>,
18 pub query_input_data: ::std::option::Option<crate::types::QueryInputData>,
20 pub override_knowledge_base_search_type: ::std::option::Option<crate::types::KnowledgeBaseSearchType>,
22}
23impl QueryAssistantInput {
24 pub fn assistant_id(&self) -> ::std::option::Option<&str> {
26 self.assistant_id.as_deref()
27 }
28 pub fn query_text(&self) -> ::std::option::Option<&str> {
30 self.query_text.as_deref()
31 }
32 pub fn next_token(&self) -> ::std::option::Option<&str> {
34 self.next_token.as_deref()
35 }
36 pub fn max_results(&self) -> ::std::option::Option<i32> {
38 self.max_results
39 }
40 pub fn session_id(&self) -> ::std::option::Option<&str> {
42 self.session_id.as_deref()
43 }
44 pub fn query_condition(&self) -> &[crate::types::QueryCondition] {
48 self.query_condition.as_deref().unwrap_or_default()
49 }
50 pub fn query_input_data(&self) -> ::std::option::Option<&crate::types::QueryInputData> {
52 self.query_input_data.as_ref()
53 }
54 pub fn override_knowledge_base_search_type(&self) -> ::std::option::Option<&crate::types::KnowledgeBaseSearchType> {
56 self.override_knowledge_base_search_type.as_ref()
57 }
58}
59impl ::std::fmt::Debug for QueryAssistantInput {
60 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
61 let mut formatter = f.debug_struct("QueryAssistantInput");
62 formatter.field("assistant_id", &self.assistant_id);
63 formatter.field("query_text", &"*** Sensitive Data Redacted ***");
64 formatter.field("next_token", &self.next_token);
65 formatter.field("max_results", &self.max_results);
66 formatter.field("session_id", &self.session_id);
67 formatter.field("query_condition", &self.query_condition);
68 formatter.field("query_input_data", &self.query_input_data);
69 formatter.field("override_knowledge_base_search_type", &self.override_knowledge_base_search_type);
70 formatter.finish()
71 }
72}
73impl QueryAssistantInput {
74 pub fn builder() -> crate::operation::query_assistant::builders::QueryAssistantInputBuilder {
76 crate::operation::query_assistant::builders::QueryAssistantInputBuilder::default()
77 }
78}
79
80#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
82#[non_exhaustive]
83pub struct QueryAssistantInputBuilder {
84 pub(crate) assistant_id: ::std::option::Option<::std::string::String>,
85 pub(crate) query_text: ::std::option::Option<::std::string::String>,
86 pub(crate) next_token: ::std::option::Option<::std::string::String>,
87 pub(crate) max_results: ::std::option::Option<i32>,
88 pub(crate) session_id: ::std::option::Option<::std::string::String>,
89 pub(crate) query_condition: ::std::option::Option<::std::vec::Vec<crate::types::QueryCondition>>,
90 pub(crate) query_input_data: ::std::option::Option<crate::types::QueryInputData>,
91 pub(crate) override_knowledge_base_search_type: ::std::option::Option<crate::types::KnowledgeBaseSearchType>,
92}
93impl QueryAssistantInputBuilder {
94 pub fn assistant_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
97 self.assistant_id = ::std::option::Option::Some(input.into());
98 self
99 }
100 pub fn set_assistant_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
102 self.assistant_id = input;
103 self
104 }
105 pub fn get_assistant_id(&self) -> &::std::option::Option<::std::string::String> {
107 &self.assistant_id
108 }
109 pub fn query_text(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
111 self.query_text = ::std::option::Option::Some(input.into());
112 self
113 }
114 pub fn set_query_text(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
116 self.query_text = input;
117 self
118 }
119 pub fn get_query_text(&self) -> &::std::option::Option<::std::string::String> {
121 &self.query_text
122 }
123 pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
125 self.next_token = ::std::option::Option::Some(input.into());
126 self
127 }
128 pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
130 self.next_token = input;
131 self
132 }
133 pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
135 &self.next_token
136 }
137 pub fn max_results(mut self, input: i32) -> Self {
139 self.max_results = ::std::option::Option::Some(input);
140 self
141 }
142 pub fn set_max_results(mut self, input: ::std::option::Option<i32>) -> Self {
144 self.max_results = input;
145 self
146 }
147 pub fn get_max_results(&self) -> &::std::option::Option<i32> {
149 &self.max_results
150 }
151 pub fn session_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
153 self.session_id = ::std::option::Option::Some(input.into());
154 self
155 }
156 pub fn set_session_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
158 self.session_id = input;
159 self
160 }
161 pub fn get_session_id(&self) -> &::std::option::Option<::std::string::String> {
163 &self.session_id
164 }
165 pub fn query_condition(mut self, input: crate::types::QueryCondition) -> Self {
171 let mut v = self.query_condition.unwrap_or_default();
172 v.push(input);
173 self.query_condition = ::std::option::Option::Some(v);
174 self
175 }
176 pub fn set_query_condition(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::QueryCondition>>) -> Self {
178 self.query_condition = input;
179 self
180 }
181 pub fn get_query_condition(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::QueryCondition>> {
183 &self.query_condition
184 }
185 pub fn query_input_data(mut self, input: crate::types::QueryInputData) -> Self {
187 self.query_input_data = ::std::option::Option::Some(input);
188 self
189 }
190 pub fn set_query_input_data(mut self, input: ::std::option::Option<crate::types::QueryInputData>) -> Self {
192 self.query_input_data = input;
193 self
194 }
195 pub fn get_query_input_data(&self) -> &::std::option::Option<crate::types::QueryInputData> {
197 &self.query_input_data
198 }
199 pub fn override_knowledge_base_search_type(mut self, input: crate::types::KnowledgeBaseSearchType) -> Self {
201 self.override_knowledge_base_search_type = ::std::option::Option::Some(input);
202 self
203 }
204 pub fn set_override_knowledge_base_search_type(mut self, input: ::std::option::Option<crate::types::KnowledgeBaseSearchType>) -> Self {
206 self.override_knowledge_base_search_type = input;
207 self
208 }
209 pub fn get_override_knowledge_base_search_type(&self) -> &::std::option::Option<crate::types::KnowledgeBaseSearchType> {
211 &self.override_knowledge_base_search_type
212 }
213 pub fn build(
215 self,
216 ) -> ::std::result::Result<crate::operation::query_assistant::QueryAssistantInput, ::aws_smithy_types::error::operation::BuildError> {
217 ::std::result::Result::Ok(crate::operation::query_assistant::QueryAssistantInput {
218 assistant_id: self.assistant_id,
219 query_text: self.query_text,
220 next_token: self.next_token,
221 max_results: self.max_results,
222 session_id: self.session_id,
223 query_condition: self.query_condition,
224 query_input_data: self.query_input_data,
225 override_knowledge_base_search_type: self.override_knowledge_base_search_type,
226 })
227 }
228}
229impl ::std::fmt::Debug for QueryAssistantInputBuilder {
230 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
231 let mut formatter = f.debug_struct("QueryAssistantInputBuilder");
232 formatter.field("assistant_id", &self.assistant_id);
233 formatter.field("query_text", &"*** Sensitive Data Redacted ***");
234 formatter.field("next_token", &self.next_token);
235 formatter.field("max_results", &self.max_results);
236 formatter.field("session_id", &self.session_id);
237 formatter.field("query_condition", &self.query_condition);
238 formatter.field("query_input_data", &self.query_input_data);
239 formatter.field("override_knowledge_base_search_type", &self.override_knowledge_base_search_type);
240 formatter.finish()
241 }
242}