|
|
|
|
@ -111,9 +111,11 @@ impl PduEvent {
|
|
|
|
|
"event_id": self.event_id, |
|
|
|
|
"sender": self.sender, |
|
|
|
|
"origin_server_ts": self.origin_server_ts, |
|
|
|
|
"unsigned": self.unsigned, |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
if let Some(unsigned) = &self.unsigned { |
|
|
|
|
json["unsigned"] = json!(unsigned); |
|
|
|
|
} |
|
|
|
|
if let Some(state_key) = &self.state_key { |
|
|
|
|
json["state_key"] = json!(state_key); |
|
|
|
|
} |
|
|
|
|
@ -133,10 +135,12 @@ impl PduEvent {
|
|
|
|
|
"event_id": self.event_id, |
|
|
|
|
"sender": self.sender, |
|
|
|
|
"origin_server_ts": self.origin_server_ts, |
|
|
|
|
"unsigned": self.unsigned, |
|
|
|
|
"room_id": self.room_id, |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
if let Some(unsigned) = &self.unsigned { |
|
|
|
|
json["unsigned"] = json!(unsigned); |
|
|
|
|
} |
|
|
|
|
if let Some(state_key) = &self.state_key { |
|
|
|
|
json["state_key"] = json!(state_key); |
|
|
|
|
} |
|
|
|
|
@ -155,10 +159,12 @@ impl PduEvent {
|
|
|
|
|
"event_id": self.event_id, |
|
|
|
|
"sender": self.sender, |
|
|
|
|
"origin_server_ts": self.origin_server_ts, |
|
|
|
|
"unsigned": self.unsigned, |
|
|
|
|
"room_id": self.room_id, |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
if let Some(unsigned) = &self.unsigned { |
|
|
|
|
json["unsigned"] = json!(unsigned); |
|
|
|
|
} |
|
|
|
|
if let Some(state_key) = &self.state_key { |
|
|
|
|
json["state_key"] = json!(state_key); |
|
|
|
|
} |
|
|
|
|
@ -171,32 +177,38 @@ impl PduEvent {
|
|
|
|
|
|
|
|
|
|
#[tracing::instrument(skip(self))] |
|
|
|
|
pub fn to_state_event(&self) -> Raw<AnyStateEvent> { |
|
|
|
|
let json = json!({ |
|
|
|
|
let mut json = json!({ |
|
|
|
|
"content": self.content, |
|
|
|
|
"type": self.kind, |
|
|
|
|
"event_id": self.event_id, |
|
|
|
|
"sender": self.sender, |
|
|
|
|
"origin_server_ts": self.origin_server_ts, |
|
|
|
|
"unsigned": self.unsigned, |
|
|
|
|
"room_id": self.room_id, |
|
|
|
|
"state_key": self.state_key, |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
if let Some(unsigned) = &self.unsigned { |
|
|
|
|
json["unsigned"] = json!(unsigned); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
serde_json::from_value(json).expect("Raw::from_value always works") |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#[tracing::instrument(skip(self))] |
|
|
|
|
pub fn to_sync_state_event(&self) -> Raw<AnySyncStateEvent> { |
|
|
|
|
let json = json!({ |
|
|
|
|
let mut json = json!({ |
|
|
|
|
"content": self.content, |
|
|
|
|
"type": self.kind, |
|
|
|
|
"event_id": self.event_id, |
|
|
|
|
"sender": self.sender, |
|
|
|
|
"origin_server_ts": self.origin_server_ts, |
|
|
|
|
"unsigned": self.unsigned, |
|
|
|
|
"state_key": self.state_key, |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
if let Some(unsigned) = &self.unsigned { |
|
|
|
|
json["unsigned"] = json!(unsigned); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
serde_json::from_value(json).expect("Raw::from_value always works") |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -214,18 +226,21 @@ impl PduEvent {
|
|
|
|
|
|
|
|
|
|
#[tracing::instrument(skip(self))] |
|
|
|
|
pub fn to_member_event(&self) -> Raw<StateEvent<RoomMemberEventContent>> { |
|
|
|
|
let json = json!({ |
|
|
|
|
let mut json = json!({ |
|
|
|
|
"content": self.content, |
|
|
|
|
"type": self.kind, |
|
|
|
|
"event_id": self.event_id, |
|
|
|
|
"sender": self.sender, |
|
|
|
|
"origin_server_ts": self.origin_server_ts, |
|
|
|
|
"redacts": self.redacts, |
|
|
|
|
"unsigned": self.unsigned, |
|
|
|
|
"room_id": self.room_id, |
|
|
|
|
"state_key": self.state_key, |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
if let Some(unsigned) = &self.unsigned { |
|
|
|
|
json["unsigned"] = json!(unsigned); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
serde_json::from_value(json).expect("Raw::from_value always works") |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|