1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/xray/XRay_EXPORTS.h> 8 #include <aws/xray/XRayRequest.h> 9 #include <aws/core/utils/DateTime.h> 10 #include <aws/core/utils/memory/stl/AWSString.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace XRay 16 { 17 namespace Model 18 { 19 20 /** 21 */ 22 class AWS_XRAY_API GetTimeSeriesServiceStatisticsRequest : public XRayRequest 23 { 24 public: 25 GetTimeSeriesServiceStatisticsRequest(); 26 27 // Service request name is the Operation name which will send this request out, 28 // each operation should has unique request name, so that we can get operation's name from this request. 29 // Note: this is not true for response, multiple operations may have the same response name, 30 // so we can not get operation's name from response. GetServiceRequestName()31 inline virtual const char* GetServiceRequestName() const override { return "GetTimeSeriesServiceStatistics"; } 32 33 Aws::String SerializePayload() const override; 34 35 36 /** 37 * <p>The start of the time frame for which to aggregate statistics.</p> 38 */ GetStartTime()39 inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; } 40 41 /** 42 * <p>The start of the time frame for which to aggregate statistics.</p> 43 */ StartTimeHasBeenSet()44 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; } 45 46 /** 47 * <p>The start of the time frame for which to aggregate statistics.</p> 48 */ SetStartTime(const Aws::Utils::DateTime & value)49 inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; } 50 51 /** 52 * <p>The start of the time frame for which to aggregate statistics.</p> 53 */ SetStartTime(Aws::Utils::DateTime && value)54 inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); } 55 56 /** 57 * <p>The start of the time frame for which to aggregate statistics.</p> 58 */ WithStartTime(const Aws::Utils::DateTime & value)59 inline GetTimeSeriesServiceStatisticsRequest& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;} 60 61 /** 62 * <p>The start of the time frame for which to aggregate statistics.</p> 63 */ WithStartTime(Aws::Utils::DateTime && value)64 inline GetTimeSeriesServiceStatisticsRequest& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;} 65 66 67 /** 68 * <p>The end of the time frame for which to aggregate statistics.</p> 69 */ GetEndTime()70 inline const Aws::Utils::DateTime& GetEndTime() const{ return m_endTime; } 71 72 /** 73 * <p>The end of the time frame for which to aggregate statistics.</p> 74 */ EndTimeHasBeenSet()75 inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; } 76 77 /** 78 * <p>The end of the time frame for which to aggregate statistics.</p> 79 */ SetEndTime(const Aws::Utils::DateTime & value)80 inline void SetEndTime(const Aws::Utils::DateTime& value) { m_endTimeHasBeenSet = true; m_endTime = value; } 81 82 /** 83 * <p>The end of the time frame for which to aggregate statistics.</p> 84 */ SetEndTime(Aws::Utils::DateTime && value)85 inline void SetEndTime(Aws::Utils::DateTime&& value) { m_endTimeHasBeenSet = true; m_endTime = std::move(value); } 86 87 /** 88 * <p>The end of the time frame for which to aggregate statistics.</p> 89 */ WithEndTime(const Aws::Utils::DateTime & value)90 inline GetTimeSeriesServiceStatisticsRequest& WithEndTime(const Aws::Utils::DateTime& value) { SetEndTime(value); return *this;} 91 92 /** 93 * <p>The end of the time frame for which to aggregate statistics.</p> 94 */ WithEndTime(Aws::Utils::DateTime && value)95 inline GetTimeSeriesServiceStatisticsRequest& WithEndTime(Aws::Utils::DateTime&& value) { SetEndTime(std::move(value)); return *this;} 96 97 98 /** 99 * <p>The case-sensitive name of the group for which to pull statistics from.</p> 100 */ GetGroupName()101 inline const Aws::String& GetGroupName() const{ return m_groupName; } 102 103 /** 104 * <p>The case-sensitive name of the group for which to pull statistics from.</p> 105 */ GroupNameHasBeenSet()106 inline bool GroupNameHasBeenSet() const { return m_groupNameHasBeenSet; } 107 108 /** 109 * <p>The case-sensitive name of the group for which to pull statistics from.</p> 110 */ SetGroupName(const Aws::String & value)111 inline void SetGroupName(const Aws::String& value) { m_groupNameHasBeenSet = true; m_groupName = value; } 112 113 /** 114 * <p>The case-sensitive name of the group for which to pull statistics from.</p> 115 */ SetGroupName(Aws::String && value)116 inline void SetGroupName(Aws::String&& value) { m_groupNameHasBeenSet = true; m_groupName = std::move(value); } 117 118 /** 119 * <p>The case-sensitive name of the group for which to pull statistics from.</p> 120 */ SetGroupName(const char * value)121 inline void SetGroupName(const char* value) { m_groupNameHasBeenSet = true; m_groupName.assign(value); } 122 123 /** 124 * <p>The case-sensitive name of the group for which to pull statistics from.</p> 125 */ WithGroupName(const Aws::String & value)126 inline GetTimeSeriesServiceStatisticsRequest& WithGroupName(const Aws::String& value) { SetGroupName(value); return *this;} 127 128 /** 129 * <p>The case-sensitive name of the group for which to pull statistics from.</p> 130 */ WithGroupName(Aws::String && value)131 inline GetTimeSeriesServiceStatisticsRequest& WithGroupName(Aws::String&& value) { SetGroupName(std::move(value)); return *this;} 132 133 /** 134 * <p>The case-sensitive name of the group for which to pull statistics from.</p> 135 */ WithGroupName(const char * value)136 inline GetTimeSeriesServiceStatisticsRequest& WithGroupName(const char* value) { SetGroupName(value); return *this;} 137 138 139 /** 140 * <p>The Amazon Resource Name (ARN) of the group for which to pull statistics 141 * from.</p> 142 */ GetGroupARN()143 inline const Aws::String& GetGroupARN() const{ return m_groupARN; } 144 145 /** 146 * <p>The Amazon Resource Name (ARN) of the group for which to pull statistics 147 * from.</p> 148 */ GroupARNHasBeenSet()149 inline bool GroupARNHasBeenSet() const { return m_groupARNHasBeenSet; } 150 151 /** 152 * <p>The Amazon Resource Name (ARN) of the group for which to pull statistics 153 * from.</p> 154 */ SetGroupARN(const Aws::String & value)155 inline void SetGroupARN(const Aws::String& value) { m_groupARNHasBeenSet = true; m_groupARN = value; } 156 157 /** 158 * <p>The Amazon Resource Name (ARN) of the group for which to pull statistics 159 * from.</p> 160 */ SetGroupARN(Aws::String && value)161 inline void SetGroupARN(Aws::String&& value) { m_groupARNHasBeenSet = true; m_groupARN = std::move(value); } 162 163 /** 164 * <p>The Amazon Resource Name (ARN) of the group for which to pull statistics 165 * from.</p> 166 */ SetGroupARN(const char * value)167 inline void SetGroupARN(const char* value) { m_groupARNHasBeenSet = true; m_groupARN.assign(value); } 168 169 /** 170 * <p>The Amazon Resource Name (ARN) of the group for which to pull statistics 171 * from.</p> 172 */ WithGroupARN(const Aws::String & value)173 inline GetTimeSeriesServiceStatisticsRequest& WithGroupARN(const Aws::String& value) { SetGroupARN(value); return *this;} 174 175 /** 176 * <p>The Amazon Resource Name (ARN) of the group for which to pull statistics 177 * from.</p> 178 */ WithGroupARN(Aws::String && value)179 inline GetTimeSeriesServiceStatisticsRequest& WithGroupARN(Aws::String&& value) { SetGroupARN(std::move(value)); return *this;} 180 181 /** 182 * <p>The Amazon Resource Name (ARN) of the group for which to pull statistics 183 * from.</p> 184 */ WithGroupARN(const char * value)185 inline GetTimeSeriesServiceStatisticsRequest& WithGroupARN(const char* value) { SetGroupARN(value); return *this;} 186 187 188 /** 189 * <p>A filter expression defining entities that will be aggregated for statistics. 190 * Supports ID, service, and edge functions. If no selector expression is 191 * specified, edge statistics are returned. </p> 192 */ GetEntitySelectorExpression()193 inline const Aws::String& GetEntitySelectorExpression() const{ return m_entitySelectorExpression; } 194 195 /** 196 * <p>A filter expression defining entities that will be aggregated for statistics. 197 * Supports ID, service, and edge functions. If no selector expression is 198 * specified, edge statistics are returned. </p> 199 */ EntitySelectorExpressionHasBeenSet()200 inline bool EntitySelectorExpressionHasBeenSet() const { return m_entitySelectorExpressionHasBeenSet; } 201 202 /** 203 * <p>A filter expression defining entities that will be aggregated for statistics. 204 * Supports ID, service, and edge functions. If no selector expression is 205 * specified, edge statistics are returned. </p> 206 */ SetEntitySelectorExpression(const Aws::String & value)207 inline void SetEntitySelectorExpression(const Aws::String& value) { m_entitySelectorExpressionHasBeenSet = true; m_entitySelectorExpression = value; } 208 209 /** 210 * <p>A filter expression defining entities that will be aggregated for statistics. 211 * Supports ID, service, and edge functions. If no selector expression is 212 * specified, edge statistics are returned. </p> 213 */ SetEntitySelectorExpression(Aws::String && value)214 inline void SetEntitySelectorExpression(Aws::String&& value) { m_entitySelectorExpressionHasBeenSet = true; m_entitySelectorExpression = std::move(value); } 215 216 /** 217 * <p>A filter expression defining entities that will be aggregated for statistics. 218 * Supports ID, service, and edge functions. If no selector expression is 219 * specified, edge statistics are returned. </p> 220 */ SetEntitySelectorExpression(const char * value)221 inline void SetEntitySelectorExpression(const char* value) { m_entitySelectorExpressionHasBeenSet = true; m_entitySelectorExpression.assign(value); } 222 223 /** 224 * <p>A filter expression defining entities that will be aggregated for statistics. 225 * Supports ID, service, and edge functions. If no selector expression is 226 * specified, edge statistics are returned. </p> 227 */ WithEntitySelectorExpression(const Aws::String & value)228 inline GetTimeSeriesServiceStatisticsRequest& WithEntitySelectorExpression(const Aws::String& value) { SetEntitySelectorExpression(value); return *this;} 229 230 /** 231 * <p>A filter expression defining entities that will be aggregated for statistics. 232 * Supports ID, service, and edge functions. If no selector expression is 233 * specified, edge statistics are returned. </p> 234 */ WithEntitySelectorExpression(Aws::String && value)235 inline GetTimeSeriesServiceStatisticsRequest& WithEntitySelectorExpression(Aws::String&& value) { SetEntitySelectorExpression(std::move(value)); return *this;} 236 237 /** 238 * <p>A filter expression defining entities that will be aggregated for statistics. 239 * Supports ID, service, and edge functions. If no selector expression is 240 * specified, edge statistics are returned. </p> 241 */ WithEntitySelectorExpression(const char * value)242 inline GetTimeSeriesServiceStatisticsRequest& WithEntitySelectorExpression(const char* value) { SetEntitySelectorExpression(value); return *this;} 243 244 245 /** 246 * <p>Aggregation period in seconds.</p> 247 */ GetPeriod()248 inline int GetPeriod() const{ return m_period; } 249 250 /** 251 * <p>Aggregation period in seconds.</p> 252 */ PeriodHasBeenSet()253 inline bool PeriodHasBeenSet() const { return m_periodHasBeenSet; } 254 255 /** 256 * <p>Aggregation period in seconds.</p> 257 */ SetPeriod(int value)258 inline void SetPeriod(int value) { m_periodHasBeenSet = true; m_period = value; } 259 260 /** 261 * <p>Aggregation period in seconds.</p> 262 */ WithPeriod(int value)263 inline GetTimeSeriesServiceStatisticsRequest& WithPeriod(int value) { SetPeriod(value); return *this;} 264 265 266 /** 267 * <p>The forecasted high and low fault count values. Forecast enabled requests 268 * require the EntitySelectorExpression ID be provided.</p> 269 */ GetForecastStatistics()270 inline bool GetForecastStatistics() const{ return m_forecastStatistics; } 271 272 /** 273 * <p>The forecasted high and low fault count values. Forecast enabled requests 274 * require the EntitySelectorExpression ID be provided.</p> 275 */ ForecastStatisticsHasBeenSet()276 inline bool ForecastStatisticsHasBeenSet() const { return m_forecastStatisticsHasBeenSet; } 277 278 /** 279 * <p>The forecasted high and low fault count values. Forecast enabled requests 280 * require the EntitySelectorExpression ID be provided.</p> 281 */ SetForecastStatistics(bool value)282 inline void SetForecastStatistics(bool value) { m_forecastStatisticsHasBeenSet = true; m_forecastStatistics = value; } 283 284 /** 285 * <p>The forecasted high and low fault count values. Forecast enabled requests 286 * require the EntitySelectorExpression ID be provided.</p> 287 */ WithForecastStatistics(bool value)288 inline GetTimeSeriesServiceStatisticsRequest& WithForecastStatistics(bool value) { SetForecastStatistics(value); return *this;} 289 290 291 /** 292 * <p>Pagination token.</p> 293 */ GetNextToken()294 inline const Aws::String& GetNextToken() const{ return m_nextToken; } 295 296 /** 297 * <p>Pagination token.</p> 298 */ NextTokenHasBeenSet()299 inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } 300 301 /** 302 * <p>Pagination token.</p> 303 */ SetNextToken(const Aws::String & value)304 inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } 305 306 /** 307 * <p>Pagination token.</p> 308 */ SetNextToken(Aws::String && value)309 inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } 310 311 /** 312 * <p>Pagination token.</p> 313 */ SetNextToken(const char * value)314 inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } 315 316 /** 317 * <p>Pagination token.</p> 318 */ WithNextToken(const Aws::String & value)319 inline GetTimeSeriesServiceStatisticsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} 320 321 /** 322 * <p>Pagination token.</p> 323 */ WithNextToken(Aws::String && value)324 inline GetTimeSeriesServiceStatisticsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} 325 326 /** 327 * <p>Pagination token.</p> 328 */ WithNextToken(const char * value)329 inline GetTimeSeriesServiceStatisticsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} 330 331 private: 332 333 Aws::Utils::DateTime m_startTime; 334 bool m_startTimeHasBeenSet; 335 336 Aws::Utils::DateTime m_endTime; 337 bool m_endTimeHasBeenSet; 338 339 Aws::String m_groupName; 340 bool m_groupNameHasBeenSet; 341 342 Aws::String m_groupARN; 343 bool m_groupARNHasBeenSet; 344 345 Aws::String m_entitySelectorExpression; 346 bool m_entitySelectorExpressionHasBeenSet; 347 348 int m_period; 349 bool m_periodHasBeenSet; 350 351 bool m_forecastStatistics; 352 bool m_forecastStatisticsHasBeenSet; 353 354 Aws::String m_nextToken; 355 bool m_nextTokenHasBeenSet; 356 }; 357 358 } // namespace Model 359 } // namespace XRay 360 } // namespace Aws 361