Uploaded image for project: 'Smack'
  1. Smack
  2. SMACK-633

Allow clean and graceful disconnects (stream closing)

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 4.0.6
    • Fix Version/s: 4.2.0
    • Component/s: Core, TCP
    • Labels:
      None
    • Expected Effort:
      High

      Description

      Clean XMPP disconnects respect the other entities stream closing, i.e. if one entity sends the closing stream element, it should wait (with a timeout of course) for the other entity to do the same in order to be able to process outstanding incoming stanzas.

      That is, if Smack disconnects
      1. shutdown send queue, so that no new stanzas/elements can be added
      2. send the closing stream element
      3. wait with a timeout for the incoming closing stream element

      And if Smack receives an incoming closing stream element (happens e.g. if the server is shut down):
      1. shutdown send queue
      2. process the send queue, i.e. try to the send the elements still in the queue
      3. send the closing stream element to the server

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              flow Florian Schmaus
              Reporter:
              flow Florian Schmaus
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: