#[non_exhaustive]pub struct ScheduleUpdateRequest {
pub data: ScheduleUpdateRequestData,
pub additional_properties: BTreeMap<String, Value>,
/* private fields */
}
Expand description
A top-level wrapper for a schedule update request, referring to the data
object with the new details.
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.data: ScheduleUpdateRequestData
Contains all data needed to update an existing schedule, including its attributes (such as name and time zone) and any relationships to teams.
additional_properties: BTreeMap<String, Value>
Implementations§
Source§impl ScheduleUpdateRequest
impl ScheduleUpdateRequest
Sourcepub fn new(data: ScheduleUpdateRequestData) -> ScheduleUpdateRequest
pub fn new(data: ScheduleUpdateRequestData) -> ScheduleUpdateRequest
Examples found in repository?
examples/v2_on-call_UpdateOnCallSchedule.rs (lines 33-75)
22async fn main() {
23 // there is a valid "schedule" in the system
24 let schedule_data_id = std::env::var("SCHEDULE_DATA_ID").unwrap();
25 let schedule_data_relationships_layers_data_0_id =
26 std::env::var("SCHEDULE_DATA_RELATIONSHIPS_LAYERS_DATA_0_ID").unwrap();
27
28 // there is a valid "user" in the system
29 let user_data_id = std::env::var("USER_DATA_ID").unwrap();
30
31 // there is a valid "dd_team" in the system
32 let dd_team_data_id = std::env::var("DD_TEAM_DATA_ID").unwrap();
33 let body = ScheduleUpdateRequest::new(
34 ScheduleUpdateRequestData::new(
35 ScheduleUpdateRequestDataAttributes::new(
36 vec![ScheduleUpdateRequestDataAttributesLayersItems::new(
37 DateTime::parse_from_rfc3339("2021-11-01T11:11:11+00:00")
38 .expect("Failed to parse datetime")
39 .with_timezone(&Utc),
40 LayerAttributesInterval::new().seconds(3600),
41 vec![
42 ScheduleRequestDataAttributesLayersItemsMembersItems::new().user(
43 ScheduleRequestDataAttributesLayersItemsMembersItemsUser::new()
44 .id(user_data_id.clone()),
45 ),
46 ],
47 "Layer 1".to_string(),
48 DateTime::parse_from_rfc3339("2021-11-06T11:11:11+00:00")
49 .expect("Failed to parse datetime")
50 .with_timezone(&Utc),
51 )
52 .end_date(
53 DateTime::parse_from_rfc3339("2021-11-21T11:11:11+00:00")
54 .expect("Failed to parse datetime")
55 .with_timezone(&Utc),
56 )
57 .id(schedule_data_relationships_layers_data_0_id.clone())
58 .restrictions(vec![TimeRestriction::new()
59 .end_day(Weekday::FRIDAY)
60 .end_time("17:00:00".to_string())
61 .start_day(Weekday::MONDAY)
62 .start_time("09:00:00".to_string())])],
63 "Example-On-Call".to_string(),
64 "America/New_York".to_string(),
65 ),
66 schedule_data_id.clone(),
67 ScheduleUpdateRequestDataType::SCHEDULES,
68 )
69 .relationships(ScheduleUpdateRequestDataRelationships::new().teams(
70 DataRelationshipsTeams::new().data(vec![DataRelationshipsTeamsDataItems::new(
71 dd_team_data_id.clone(),
72 DataRelationshipsTeamsDataItemsType::TEAMS,
73 )]),
74 )),
75 );
76 let configuration = datadog::Configuration::new();
77 let api = OnCallAPI::with_config(configuration);
78 let resp = api
79 .update_on_call_schedule(
80 schedule_data_id.clone(),
81 body,
82 UpdateOnCallScheduleOptionalParams::default(),
83 )
84 .await;
85 if let Ok(value) = resp {
86 println!("{:#?}", value);
87 } else {
88 println!("{:#?}", resp.unwrap_err());
89 }
90}
pub fn additional_properties(self, value: BTreeMap<String, Value>) -> Self
Trait Implementations§
Source§impl Clone for ScheduleUpdateRequest
impl Clone for ScheduleUpdateRequest
Source§fn clone(&self) -> ScheduleUpdateRequest
fn clone(&self) -> ScheduleUpdateRequest
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 Debug for ScheduleUpdateRequest
impl Debug for ScheduleUpdateRequest
Source§impl<'de> Deserialize<'de> for ScheduleUpdateRequest
impl<'de> Deserialize<'de> for ScheduleUpdateRequest
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 ScheduleUpdateRequest
impl PartialEq for ScheduleUpdateRequest
Source§impl Serialize for ScheduleUpdateRequest
impl Serialize for ScheduleUpdateRequest
impl StructuralPartialEq for ScheduleUpdateRequest
Auto Trait Implementations§
impl Freeze for ScheduleUpdateRequest
impl RefUnwindSafe for ScheduleUpdateRequest
impl Send for ScheduleUpdateRequest
impl Sync for ScheduleUpdateRequest
impl Unpin for ScheduleUpdateRequest
impl UnwindSafe for ScheduleUpdateRequest
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