Commit c46e749c authored by xuwencheng's avatar xuwencheng

store

parent ef7994cd
use serde_repr::{Deserialize_repr, Serialize_repr};
#[cfg(feature = "socket")] #[cfg(feature = "socket")]
pub use socket::*; pub use socket::*;
#[cfg(feature = "socket")] #[cfg(feature = "socket")]
pub mod socket; pub mod socket;
\ No newline at end of file
#[derive(Debug, Deserialize_repr, Serialize_repr, Eq, PartialEq, Clone, Hash)]
#[repr(u8)]
pub enum Status {
// 失败
Fail = 0,
// 成功
Success = 1,
}
use crate::{ use crate::{
event::{EventType, SocketEvent}, event::{EventType, SocketEvent, Status},
socket::protocol::Qos, socket::protocol::Qos,
}; };
...@@ -11,6 +11,7 @@ pub trait BusinessEvent { ...@@ -11,6 +11,7 @@ pub trait BusinessEvent {
qos: Qos, qos: Qos,
msg_id: i64, msg_id: i64,
msg_ty: i32, msg_ty: i32,
status: Status,
extra: Option<impl AsRef<str>>, extra: Option<impl AsRef<str>>,
) -> SocketEvent; ) -> SocketEvent;
} }
...@@ -21,6 +22,7 @@ impl BusinessEvent for SocketEvent { ...@@ -21,6 +22,7 @@ impl BusinessEvent for SocketEvent {
qos: Qos, qos: Qos,
msg_id: i64, msg_id: i64,
msg_ty: i32, msg_ty: i32,
status: Status,
extra: Option<impl AsRef<str>>, extra: Option<impl AsRef<str>>,
) -> SocketEvent { ) -> SocketEvent {
...@@ -36,7 +38,7 @@ impl BusinessEvent for SocketEvent { ...@@ -36,7 +38,7 @@ impl BusinessEvent for SocketEvent {
key, key,
msg_id: Some(msg_id), msg_id: Some(msg_id),
msg_ty: Some(msg_ty), msg_ty: Some(msg_ty),
status: 1, status: status as i32,
desc: qos.desc(), desc: qos.desc(),
extra: extra.map(|s| s.as_ref().to_string()), extra: extra.map(|s| s.as_ref().to_string()),
} }
...@@ -49,7 +51,7 @@ pub trait PublishEvent { ...@@ -49,7 +51,7 @@ pub trait PublishEvent {
key: Option<String>, key: Option<String>,
msg_id: i64, msg_id: i64,
msg_ty: i32, msg_ty: i32,
status: i32, status: Status,
desc: impl AsRef<str>, desc: impl AsRef<str>,
extra: Option<impl AsRef<str>>, extra: Option<impl AsRef<str>>,
) -> Vec<SocketEvent>; ) -> Vec<SocketEvent>;
...@@ -68,11 +70,13 @@ impl PublishEvent for SocketEvent { ...@@ -68,11 +70,13 @@ impl PublishEvent for SocketEvent {
key: Option<String>, key: Option<String>,
msg_id: i64, msg_id: i64,
msg_ty: i32, msg_ty: i32,
status: i32, status: Status,
desc: impl AsRef<str>, desc: impl AsRef<str>,
extra: Option<impl AsRef<str>>, extra: Option<impl AsRef<str>>,
) -> Vec<SocketEvent> { ) -> Vec<SocketEvent> {
let extra = extra.map(|s| s.as_ref().to_string()); let extra = extra.map(|s| s.as_ref().to_string());
let status = status as i32;
let mut vec = Vec::new(); let mut vec = Vec::new();
for info in infos { for info in infos {
let key = key.clone(); let key = key.clone();
...@@ -85,7 +89,7 @@ impl PublishEvent for SocketEvent { ...@@ -85,7 +89,7 @@ impl PublishEvent for SocketEvent {
version: Some(info.version), version: Some(info.version),
version_desc: info.version_desc.clone(), version_desc: info.version_desc.clone(),
event: "推送事件".to_string(), event: "推送事件".to_string(),
event_ty: EventType::ConnectEvent as i32, event_ty: EventType::PublishEvent as i32,
key: key, key: key,
msg_id: Some(msg_id), msg_id: Some(msg_id),
msg_ty: Some(msg_ty), msg_ty: Some(msg_ty),
...@@ -113,11 +117,11 @@ impl PublishEvent for SocketEvent { ...@@ -113,11 +117,11 @@ impl PublishEvent for SocketEvent {
version: Some(info.version), version: Some(info.version),
version_desc: info.version_desc.clone(), version_desc: info.version_desc.clone(),
event: "推送事件".to_string(), event: "推送事件".to_string(),
event_ty: EventType::ConnectEvent as i32, event_ty: EventType::PublishEvent as i32,
key: None, key: None,
msg_id: Some(msg_id), msg_id: Some(msg_id),
msg_ty: None, msg_ty: None,
status: 1, status: Status::Success as i32,
desc: desc.as_ref().to_string(), desc: desc.as_ref().to_string(),
extra: extra.map(|s| s.as_ref().to_string()), extra: extra.map(|s| s.as_ref().to_string()),
} }
...@@ -127,7 +131,7 @@ impl PublishEvent for SocketEvent { ...@@ -127,7 +131,7 @@ impl PublishEvent for SocketEvent {
pub trait ConnectEvent { pub trait ConnectEvent {
fn connect( fn connect(
token_info: &TokenInfo, token_info: &TokenInfo,
status: i32, status: Status,
desc: impl AsRef<str>, desc: impl AsRef<str>,
extra: Option<impl AsRef<str>>, extra: Option<impl AsRef<str>>,
) -> SocketEvent; ) -> SocketEvent;
...@@ -136,7 +140,7 @@ pub trait ConnectEvent { ...@@ -136,7 +140,7 @@ pub trait ConnectEvent {
impl ConnectEvent for SocketEvent { impl ConnectEvent for SocketEvent {
fn connect( fn connect(
info: &TokenInfo, info: &TokenInfo,
status: i32, status: Status,
desc: impl AsRef<str>, desc: impl AsRef<str>,
extra: Option<impl AsRef<str>>, extra: Option<impl AsRef<str>>,
) -> SocketEvent { ) -> SocketEvent {
...@@ -148,11 +152,11 @@ impl ConnectEvent for SocketEvent { ...@@ -148,11 +152,11 @@ impl ConnectEvent for SocketEvent {
version: Some(info.version), version: Some(info.version),
version_desc: info.version_desc.clone(), version_desc: info.version_desc.clone(),
event: "连接事件".to_string(), event: "连接事件".to_string(),
event_ty: 1, event_ty: EventType::ConnectEvent as i32,
key: None, key: None,
msg_id: None, msg_id: None,
msg_ty: None, msg_ty: None,
status, status: status as i32,
desc: desc.as_ref().to_string(), desc: desc.as_ref().to_string(),
extra: extra.map(|s| s.as_ref().to_string()), extra: extra.map(|s| s.as_ref().to_string()),
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment