smpp_pdu/pdu/operations/
enquire_link.rs

1use std::io;
2
3use crate::pdu::formats::WriteStream;
4use crate::pdu::{PduParseError, PduParseErrorBody};
5
6#[derive(Debug, PartialEq)]
7pub struct EnquireLinkPdu {}
8
9impl EnquireLinkPdu {
10    pub fn new() -> Self {
11        Self {}
12    }
13
14    pub async fn write(&self, _stream: &mut WriteStream) -> io::Result<()> {
15        Ok(())
16    }
17
18    pub fn parse(
19        _bytes: &mut dyn io::BufRead,
20        _command_status: u32,
21    ) -> Result<EnquireLinkPdu, PduParseError> {
22        Ok(Self {})
23    }
24
25    pub fn validate_command_status(
26        self,
27        command_status: u32,
28    ) -> Result<Self, PduParseError> {
29        if command_status == 0x00000000 {
30            Ok(self)
31        } else {
32            Err(PduParseError::new(PduParseErrorBody::StatusIsNotZero))
33        }
34    }
35}