#[non_exhaustive]pub struct ScheduleCreateRequestDataAttributes {
pub layers: Vec<ScheduleCreateRequestDataAttributesLayersItems>,
pub name: String,
pub time_zone: String,
pub additional_properties: BTreeMap<String, Value>,
/* private fields */
}
Expand description
Describes the main attributes for creating a new schedule, including name, layers, and time zone.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.layers: Vec<ScheduleCreateRequestDataAttributesLayersItems>
The layers of On-Call coverage that define rotation intervals and restrictions.
name: String
A human-readable name for the new schedule.
time_zone: String
The time zone in which the schedule is defined.
additional_properties: BTreeMap<String, Value>
Implementations§
Source§impl ScheduleCreateRequestDataAttributes
impl ScheduleCreateRequestDataAttributes
Sourcepub fn new(
layers: Vec<ScheduleCreateRequestDataAttributesLayersItems>,
name: String,
time_zone: String,
) -> ScheduleCreateRequestDataAttributes
pub fn new( layers: Vec<ScheduleCreateRequestDataAttributesLayersItems>, name: String, time_zone: String, ) -> ScheduleCreateRequestDataAttributes
Examples found in repository?
examples/v2_on-call_CreateOnCallSchedule.rs (lines 30-59)
22async fn main() {
23 // there is a valid "user" in the system
24 let user_data_id = std::env::var("USER_DATA_ID").unwrap();
25
26 // there is a valid "dd_team" in the system
27 let dd_team_data_id = std::env::var("DD_TEAM_DATA_ID").unwrap();
28 let body = ScheduleCreateRequest::new(
29 ScheduleCreateRequestData::new(
30 ScheduleCreateRequestDataAttributes::new(
31 vec![ScheduleCreateRequestDataAttributesLayersItems::new(
32 DateTime::parse_from_rfc3339("2021-11-01T11:11:11+00:00")
33 .expect("Failed to parse datetime")
34 .with_timezone(&Utc),
35 LayerAttributesInterval::new().days(1),
36 vec![
37 ScheduleRequestDataAttributesLayersItemsMembersItems::new().user(
38 ScheduleRequestDataAttributesLayersItemsMembersItemsUser::new()
39 .id(user_data_id.clone()),
40 ),
41 ],
42 "Layer 1".to_string(),
43 DateTime::parse_from_rfc3339("2021-11-06T11:11:11+00:00")
44 .expect("Failed to parse datetime")
45 .with_timezone(&Utc),
46 )
47 .end_date(
48 DateTime::parse_from_rfc3339("2021-11-21T11:11:11+00:00")
49 .expect("Failed to parse datetime")
50 .with_timezone(&Utc),
51 )
52 .restrictions(vec![TimeRestriction::new()
53 .end_day(Weekday::FRIDAY)
54 .end_time("17:00:00".to_string())
55 .start_day(Weekday::MONDAY)
56 .start_time("09:00:00".to_string())])],
57 "Example-On-Call".to_string(),
58 "America/New_York".to_string(),
59 ),
60 ScheduleCreateRequestDataType::SCHEDULES,
61 )
62 .relationships(ScheduleCreateRequestDataRelationships::new().teams(
63 DataRelationshipsTeams::new().data(vec![DataRelationshipsTeamsDataItems::new(
64 dd_team_data_id.clone(),
65 DataRelationshipsTeamsDataItemsType::TEAMS,
66 )]),
67 )),
68 );
69 let configuration = datadog::Configuration::new();
70 let api = OnCallAPI::with_config(configuration);
71 let resp = api
72 .create_on_call_schedule(body, CreateOnCallScheduleOptionalParams::default())
73 .await;
74 if let Ok(value) = resp {
75 println!("{:#?}", value);
76 } else {
77 println!("{:#?}", resp.unwrap_err());
78 }
79}
pub fn additional_properties(self, value: BTreeMap<String, Value>) -> Self
Trait Implementations§
Source§impl Clone for ScheduleCreateRequestDataAttributes
impl Clone for ScheduleCreateRequestDataAttributes
Source§fn clone(&self) -> ScheduleCreateRequestDataAttributes
fn clone(&self) -> ScheduleCreateRequestDataAttributes
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<'de> Deserialize<'de> for ScheduleCreateRequestDataAttributes
impl<'de> Deserialize<'de> for ScheduleCreateRequestDataAttributes
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for ScheduleCreateRequestDataAttributes
impl PartialEq for ScheduleCreateRequestDataAttributes
Source§fn eq(&self, other: &ScheduleCreateRequestDataAttributes) -> bool
fn eq(&self, other: &ScheduleCreateRequestDataAttributes) -> bool
Tests for
self
and other
values to be equal, and is used by ==
.impl StructuralPartialEq for ScheduleCreateRequestDataAttributes
Auto Trait Implementations§
impl Freeze for ScheduleCreateRequestDataAttributes
impl RefUnwindSafe for ScheduleCreateRequestDataAttributes
impl Send for ScheduleCreateRequestDataAttributes
impl Sync for ScheduleCreateRequestDataAttributes
impl Unpin for ScheduleCreateRequestDataAttributes
impl UnwindSafe for ScheduleCreateRequestDataAttributes
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more