19 lines
515 B
Python
19 lines
515 B
Python
from abc import ABC
|
|
|
|
from ._events import XmppEventMixin
|
|
from ._state import XmppStateMixin
|
|
|
|
|
|
# pylint: disable=too-few-public-methods
|
|
class XmppEventStateMixin(XmppEventMixin, XmppStateMixin, ABC):
|
|
"""
|
|
A mixin that encapsulates the state of the XMPP clients and it provides the
|
|
features to handle events.
|
|
"""
|
|
|
|
def _post_event(self, *args, **kwargs):
|
|
if self._state_serializer:
|
|
self._state_serializer.enqueue(self._state)
|
|
|
|
return super()._post_event(*args, **kwargs)
|