sos_core/events/read.rs
1//! Folder read operations.
2
3use super::EventKind;
4use crate::SecretId;
5use serde::{Deserialize, Serialize};
6
7/// Read operations.
8#[derive(Default, Debug, Serialize, Deserialize, Clone, Eq, PartialEq)]
9pub enum ReadEvent {
10 /// Default variant, should never be used.
11 ///
12 /// We need a variant so we can implement the Default
13 /// trait which is required for decoding.
14 #[default]
15 Noop,
16
17 /// Event used to indicate that a vault was read.
18 ReadVault,
19
20 /// Event used to indicate that a secret has been read.
21 ReadSecret(SecretId),
22}
23
24impl ReadEvent {
25 /// Get the event kind for this event.
26 pub fn event_kind(&self) -> EventKind {
27 match self {
28 ReadEvent::Noop => EventKind::Noop,
29 ReadEvent::ReadVault => EventKind::ReadVault,
30 ReadEvent::ReadSecret(_) => EventKind::ReadSecret,
31 }
32 }
33}