1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
/*
* The Jira Cloud platform REST API
*
* Jira Cloud platform REST API documentation
*
* The version of the OpenAPI document: 1001.0.0-SNAPSHOT
* Contact: ecosystem@atlassian.com
* Generated by: https://openapi-generator.tech
*/
/// FilterDetails : Details of a filter.
#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct FilterDetails {
/// Expand options that include additional filter details in the response.
#[serde(rename = "expand", skip_serializing_if = "Option::is_none")]
pub expand: Option<String>,
/// The URL of the filter.
#[serde(rename = "self", skip_serializing_if = "Option::is_none")]
pub _self: Option<String>,
/// The unique identifier for the filter.
#[serde(rename = "id", skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
/// The name of the filter.
#[serde(rename = "name")]
pub name: String,
/// The description of the filter.
#[serde(rename = "description", skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
/// The user who owns the filter. Defaults to the creator of the filter, however, Jira administrators can change the owner of a shared filter in the admin settings.
#[serde(rename = "owner", skip_serializing_if = "Option::is_none")]
pub owner: Option<crate::models::User>,
/// The JQL query for the filter. For example, *project = SSP AND issuetype = Bug*.
#[serde(rename = "jql", skip_serializing_if = "Option::is_none")]
pub jql: Option<String>,
/// A URL to view the filter results in Jira, using the ID of the filter. For example, *https://your-domain.atlassian.net/issues/?filter=10100*.
#[serde(rename = "viewUrl", skip_serializing_if = "Option::is_none")]
pub view_url: Option<String>,
/// A URL to view the filter results in Jira, using the [Search for issues using JQL](#api-rest-api-2-filter-search-get) operation with the filter's JQL string to return the filter results. For example, *https://your-domain.atlassian.net/rest/api/2/search?jql=project+%3D+SSP+AND+issuetype+%3D+Bug*.
#[serde(rename = "searchUrl", skip_serializing_if = "Option::is_none")]
pub search_url: Option<String>,
/// Whether the filter is selected as a favorite by any users, not including the filter owner.
#[serde(rename = "favourite", skip_serializing_if = "Option::is_none")]
pub favourite: Option<bool>,
/// The count of how many users have selected this filter as a favorite, including the filter owner.
#[serde(rename = "favouritedCount", skip_serializing_if = "Option::is_none")]
pub favourited_count: Option<i64>,
/// The groups and projects that the filter is shared with. This can be specified when updating a filter, but not when creating a filter.
#[serde(rename = "sharePermissions", skip_serializing_if = "Option::is_none")]
pub share_permissions: Option<Vec<crate::models::SharePermission>>,
/// The groups and projects that can edit the filter. This can be specified when updating a filter, but not when creating a filter.
#[serde(rename = "editPermissions", skip_serializing_if = "Option::is_none")]
pub edit_permissions: Option<Vec<crate::models::SharePermission>>,
/// The users that are subscribed to the filter.
#[serde(rename = "subscriptions", skip_serializing_if = "Option::is_none")]
pub subscriptions: Option<Vec<crate::models::FilterSubscription>>,
}
impl FilterDetails {
/// Details of a filter.
pub fn new(name: String) -> FilterDetails {
FilterDetails {
expand: None,
_self: None,
id: None,
name,
description: None,
owner: None,
jql: None,
view_url: None,
search_url: None,
favourite: None,
favourited_count: None,
share_permissions: None,
edit_permissions: None,
subscriptions: None,
}
}
}