Move additional rarely changed data to separate structure

[?]
Jan 1, 2019, 2:19 PM
3FYEOGCIRRMOVYU2NB4MM477RSF4ZTSNJYFJ5NNXSB6WGR6MQYPQC

Dependencies

  • [2] EBETRYK7 Add counter for id. Check for jid in roster
  • [3] 5IKA4GO7 Rename xmpp client field from "inner" to "client"
  • [4] XGP44R5H Rework stopping xmpp connection
  • [5] ALP2YJIU Rename XmppState to XmppProcessState
  • [6] UMTLHH77 Process commands in the separate function
  • [7] UIXIQHDY Wait for commands via new processing code
  • [8] BWDUANCV Second part of processing result is only about stop_future
  • [9] FWJDW3G5 Allow process xmpp incoming stanzas with futures
  • [*] VS6AHRWI Move XMPP to separate dir

Change contents

  • edit in src/xmpp/mod.rs at line 14
    [3.321]
    [3.354]
    #[derive(Default)]
    struct XmppData {
    roster: HashMap<jid::Jid, ()>,
    _counter: usize,
    }
  • replacement in src/xmpp/mod.rs at line 22
    [3.393][2.33:88]()
    roster: HashMap<jid::Jid, ()>,
    counter: usize,
    [3.393]
    [3.428]
    data: XmppData,
  • replacement in src/xmpp/mod.rs at line 101
    [2.208][2.208:340]()
    roster: HashMap::new(),
    counter: 0,
    [2.208]
    [2.340]
    data: std::default::Default::default(),
  • replacement in src/xmpp/mod.rs at line 172
    [2.1389][2.1389:1588]()
    state:
    XmppState {
    client,
    roster,
    counter,
    },
    [2.1389]
    [2.1588]
    state: XmppState { client, data },
  • replacement in src/xmpp/mod.rs at line 182
    [2.1773][2.1773:2012]()
    state: XmppState {
    client,
    roster,
    counter,
    },
    [2.1773]
    [3.1515]
    state: XmppState { client, data },
  • replacement in src/xmpp/mod.rs at line 208
    [2.3363][2.3363:3563](),[2.3563][3.2368:2407](),[3.2368][3.2368:2407]()
    state: XmppState {
    client,
    roster,
    counter,
    },
    [2.3363]
    [2.3564]
    state: XmppState { client, data },
  • replacement in src/xmpp/mod.rs at line 223
    [2.4145][2.4145:4345](),[2.4345][3.3223:3262](),[3.3223][3.3223:3262]()
    state: XmppState {
    client,
    roster,
    counter,
    },
    [2.4145]
    [2.4346]
    state: XmppState { client, data },
  • edit in src/xmpp/mod.rs at line 275
    [3.5538]
    [3.5538]
    self.state.data.roster.insert(i.jid, ());
  • replacement in src/xmpp/mod.rs at line 316
    [2.5676][2.5676:5827]()
    state:
    XmppState {
    client,
    roster,
    counter,
    },
    [2.5676]
    [2.5827]
    state: XmppState { client, data },
  • replacement in src/xmpp/mod.rs at line 332
    [3.7312][2.5888:6047]()
    state: XmppState {
    client,
    roster,
    counter,
    },
    [3.7312]
    [3.7369]
    state: XmppState { client, data },
  • replacement in src/xmpp/mod.rs at line 355
    [2.6482][2.6482:6633]()
    state:
    XmppState {
    client,
    roster,
    counter,
    },
    [2.6482]
    [2.6633]
    state: XmppState { client, data },
  • replacement in src/xmpp/mod.rs at line 371
    [3.8426][2.6694:6853]()
    state: XmppState {
    client,
    roster,
    counter,
    },
    [3.8426]
    [3.8483]
    state: XmppState { client, data },
  • replacement in src/xmpp/mod.rs at line 406
    [3.5808][2.7298:7369]()
    if let Some(_jid_data) = self.state.roster.get(&cmd.xmpp_to) {
    [3.5808]
    [2.7369]
    if let Some(_jid_data) = self.state.data.roster.get(&cmd.xmpp_to) {