iyzipay_rust/requests/
bin_number.rs

1use crate::requests::RequestStringBuilder;
2
3use self::super::PKISerialize;
4use self::super::Request;
5
6#[derive(Debug, Default, Serialize, Deserialize)]
7#[serde(rename_all = "camelCase")]
8pub struct RetrieveBinNumberRequest {
9    #[serde(flatten)]
10    request: Request,
11
12    bin_number: Option<String>,
13}
14
15impl RetrieveBinNumberRequest {
16    pub fn new() -> Self {
17        RetrieveBinNumberRequest::default()
18    }
19
20    pub fn set_bin_number<T: Into<String>>(&mut self, bin_number: T) {
21        self.bin_number = Some(bin_number.into());
22    }
23
24    pub fn bin_number(&self) -> Option<&String> {
25        self.bin_number.as_ref()
26    }
27}
28
29impl PKISerialize for RetrieveBinNumberRequest {
30    fn serialize(&self) -> Option<String> {
31        let mut ser = RequestStringBuilder::new();
32        ser.append_option_val(self.request.serialize());
33        ser.append_option("binNumber", self.bin_number.as_ref());
34        Some(ser.build(true))
35    }
36}
37
38impl std::ops::Deref for RetrieveBinNumberRequest {
39    type Target = Request;
40    fn deref(&self) -> &Self::Target {
41        &self.request
42    }
43}
44
45impl std::ops::DerefMut for RetrieveBinNumberRequest {
46    fn deref_mut(&mut self) -> &mut Self::Target {
47        &mut self.request
48    }
49}