pub struct AcceptedPacketEvent {
pub packet: ParsedPacket,
}Expand description
Accepted packet observability event.
Fields§
§packet: ParsedPacketParsed packet with exact raw bytes preserved.
Implementations§
Source§impl AcceptedPacketEvent
impl AcceptedPacketEvent
Sourcepub const fn kind(&self) -> EngineEventKind
pub const fn kind(&self) -> EngineEventKind
Returns the stable event kind.
Examples found in repository?
examples/service_ingest.rs (line 16)
5fn main() -> Result<(), std::io::Error> {
6 let input = b"N0CALL>APRS:>service online\nN1CALL>APRS:~opaque\nbad packet\n";
7 let mut engine = Engine::new(Policy::strict());
8
9 let packets = LineTransport::new(input).packets_with_limit(MAX_PACKET_LEN)?;
10
11 for packet in packets {
12 match engine.process_event(packet) {
13 EngineEvent::Accepted(event) => {
14 println!(
15 "event={} semantic={}",
16 event.kind().code(),
17 event.packet.summary().semantic
18 );
19 }
20 EngineEvent::Rejected(event) => {
21 println!(
22 "event={} code={} remediation={}",
23 event.kind().code(),
24 event.diagnostic.code,
25 event.diagnostic.remediation
26 );
27 }
28 EngineEvent::Malformed(event) => {
29 println!(
30 "event={} code={} raw_len={} raw_truncated={} remediation={}",
31 event.kind().code(),
32 event.diagnostic.code,
33 event.raw.len(),
34 event.raw_truncated,
35 event.diagnostic.remediation
36 );
37 }
38 }
39 }
40
41 let counters = engine.counters();
42 println!(
43 "summary accepted={} rejected={} malformed={}",
44 counters.accepted, counters.rejected, counters.malformed
45 );
46
47 Ok(())
48}Trait Implementations§
Source§impl Clone for AcceptedPacketEvent
impl Clone for AcceptedPacketEvent
Source§fn clone(&self) -> AcceptedPacketEvent
fn clone(&self) -> AcceptedPacketEvent
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 AcceptedPacketEvent
impl Debug for AcceptedPacketEvent
Source§impl PartialEq for AcceptedPacketEvent
impl PartialEq for AcceptedPacketEvent
impl StructuralPartialEq for AcceptedPacketEvent
Auto Trait Implementations§
impl Freeze for AcceptedPacketEvent
impl RefUnwindSafe for AcceptedPacketEvent
impl Send for AcceptedPacketEvent
impl Sync for AcceptedPacketEvent
impl Unpin for AcceptedPacketEvent
impl UnsafeUnpin for AcceptedPacketEvent
impl UnwindSafe for AcceptedPacketEvent
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