fastcomments_sdk/client/src/models/
aggregation_request.rs1use crate::client::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct AggregationRequest {
17 #[serde(rename = "query", skip_serializing_if = "Option::is_none")]
18 pub query: Option<Vec<models::QueryPredicate>>,
19 #[serde(rename = "resourceName")]
20 pub resource_name: String,
21 #[serde(rename = "groupBy", skip_serializing_if = "Option::is_none")]
22 pub group_by: Option<Vec<String>>,
23 #[serde(rename = "operations")]
24 pub operations: Vec<models::AggregationOperation>,
25 #[serde(rename = "sort", skip_serializing_if = "Option::is_none")]
26 pub sort: Option<Box<models::AggregationRequestSort>>,
27}
28
29impl AggregationRequest {
30 pub fn new(resource_name: String, operations: Vec<models::AggregationOperation>) -> AggregationRequest {
32 AggregationRequest {
33 query: None,
34 resource_name,
35 group_by: None,
36 operations,
37 sort: None,
38 }
39 }
40}
41