1 - | // Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2 - | pub(crate) fn de_anomaly<'a, I>(
|
3 - | tokens: &mut ::std::iter::Peekable<I>,
|
4 - | _value: &'a [u8],
|
5 - | ) -> ::std::result::Result<Option<crate::types::Anomaly>, ::aws_smithy_json::deserialize::error::DeserializeError>
|
6 - | where
|
7 - | I: Iterator<Item = Result<::aws_smithy_json::deserialize::Token<'a>, ::aws_smithy_json::deserialize::error::DeserializeError>>,
|
8 - | {
|
9 - | match tokens.next().transpose()? {
|
10 - | Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
|
11 - | Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
|
12 - | #[allow(unused_mut)]
|
13 - | let mut builder = crate::types::builders::AnomalyBuilder::default();
|
14 - | loop {
|
15 - | match tokens.next().transpose()? {
|
16 - | Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
|
17 - | Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() {
|
18 - | "anomalyId" => {
|
19 - | builder = builder.set_anomaly_id(
|
20 - | ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
|
21 - | .map(|s| s.to_unescaped().map(|u| u.into_owned()))
|
22 - | .transpose()?,
|
23 - | );
|
24 - | }
|
25 - | "patternId" => {
|
26 - | builder = builder.set_pattern_id(
|
27 - | ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
|
28 - | .map(|s| s.to_unescaped().map(|u| u.into_owned()))
|
29 - | .transpose()?,
|
30 - | );
|
31 - | }
|
32 - | "anomalyDetectorArn" => {
|
33 - | builder = builder.set_anomaly_detector_arn(
|
34 - | ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
|
35 - | .map(|s| s.to_unescaped().map(|u| u.into_owned()))
|
36 - | .transpose()?,
|
37 - | );
|
38 - | }
|
39 - | "patternString" => {
|
40 - | builder = builder.set_pattern_string(
|
41 - | ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
|
42 - | .map(|s| s.to_unescaped().map(|u| u.into_owned()))
|
43 - | .transpose()?,
|
44 - | );
|
45 - | }
|
46 - | "patternRegex" => {
|
47 - | builder = builder.set_pattern_regex(
|
48 - | ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
|
49 - | .map(|s| s.to_unescaped().map(|u| u.into_owned()))
|
50 - | .transpose()?,
|
51 - | );
|
52 - | }
|
53 - | "priority" => {
|
54 - | builder = builder.set_priority(
|
55 - | ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
|
56 - | .map(|s| s.to_unescaped().map(|u| u.into_owned()))
|
57 - | .transpose()?,
|
58 - | );
|
59 - | }
|
60 - | "firstSeen" => {
|
61 - | builder = builder.set_first_seen(
|
62 - | ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
|
63 - | .map(i64::try_from)
|
64 - | .transpose()?,
|
65 - | );
|
66 - | }
|
67 - | "lastSeen" => {
|
68 - | builder = builder.set_last_seen(
|
69 - | ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
|
70 - | .map(i64::try_from)
|
71 - | .transpose()?,
|
72 - | );
|
73 - | }
|
74 - | "description" => {
|
75 - | builder = builder.set_description(
|
76 - | ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
|
77 - | .map(|s| s.to_unescaped().map(|u| u.into_owned()))
|
78 - | .transpose()?,
|
79 - | );
|
80 - | }
|
81 - | "active" => {
|
82 - | builder = builder.set_active(::aws_smithy_json::deserialize::token::expect_bool_or_null(tokens.next())?);
|
83 - | }
|
84 - | "state" => {
|
85 - | builder = builder.set_state(
|
86 - | ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
|
87 - | .map(|s| s.to_unescaped().map(|u| crate::types::State::from(u.as_ref())))
|
88 - | .transpose()?,
|
89 - | );
|
90 - | }
|
91 - | "histogram" => {
|
92 - | builder = builder.set_histogram(crate::protocol_serde::shape_histogram::de_histogram(tokens, _value)?);
|
93 - | }
|
94 - | "logSamples" => {
|
95 - | builder = builder.set_log_samples(crate::protocol_serde::shape_log_samples::de_log_samples(tokens, _value)?);
|
96 - | }
|
97 - | "patternTokens" => {
|
98 - | builder = builder.set_pattern_tokens(crate::protocol_serde::shape_pattern_tokens::de_pattern_tokens(tokens, _value)?);
|
99 - | }
|
100 - | "logGroupArnList" => {
|
101 - | builder = builder
|
102 - | .set_log_group_arn_list(crate::protocol_serde::shape_log_group_arn_list::de_log_group_arn_list(tokens, _value)?);
|
103 - | }
|
104 - | "suppressed" => {
|
105 - | builder = builder.set_suppressed(::aws_smithy_json::deserialize::token::expect_bool_or_null(tokens.next())?);
|
106 - | }
|
107 - | "suppressedDate" => {
|
108 - | builder = builder.set_suppressed_date(
|
109 - | ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
|
110 - | .map(i64::try_from)
|
111 - | .transpose()?,
|
112 - | );
|
113 - | }
|
114 - | "suppressedUntil" => {
|
115 - | builder = builder.set_suppressed_until(
|
116 - | ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
|
117 - | .map(i64::try_from)
|
118 - | .transpose()?,
|
119 - | );
|
120 - | }
|
121 - | "isPatternLevelSuppression" => {
|
122 - | builder =
|
123 - | builder.set_is_pattern_level_suppression(::aws_smithy_json::deserialize::token::expect_bool_or_null(tokens.next())?);
|
124 - | }
|
125 - | _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?,
|
126 - | },
|
127 - | other => {
|
128 - | return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
|
129 - | "expected object key or end object, found: {other:?}"
|
130 - | )))
|
131 - | }
|
132 - | }
|
133 - | }
|
134 - | Ok(Some(crate::serde_util::anomaly_correct_errors(builder).build().map_err(|err| {
|
135 - | ::aws_smithy_json::deserialize::error::DeserializeError::custom_source("Response was invalid", err)
|
136 - | })?))
|
137 - | }
|
138 - | _ => Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
|
139 - | "expected start object or null",
|
140 - | )),
|
141 - | }
|
142 - | }
|