[hide private]

[ Module Hierarchy | Class Hierarchy ]

# Class Hierarchy

- object: The most base type
  - exceptions.BaseException: Common base class for all exceptions
    - exceptions.Exception: Common base class for all non-exit exceptions.
      - exceptions.StandardError: Base class for all standard Python exceptions that do not represent interpreter exiting.
        - pyxmpp2.exceptions.Error: Base class for all PyXMPP exceptions.
          - pyxmpp2.exceptions.ClientError: Raised on a client error.
            - pyxmpp2.exceptions.FatalClientError: Raised on a fatal client error.
          - pyxmpp2.exceptions.JIDError: Exception raised when invalid JID is used
            - pyxmpp2.exceptions.JIDMalformedProtocolError: Raised when invalid JID is encountered.
          - pyxmpp2.exceptions.ProtocolError: Raised when there is something wrong with a stanza processed.
            - pyxmpp2.exceptions.BadRequestProtocolError: Raised when invalid stanza is processed and 'bad-request' error should be reported.
            - pyxmpp2.exceptions.FeatureNotImplementedProtocolError: Raised when stanza requests a feature which is not (yet) implemented.
            - pyxmpp2.exceptions.JIDMalformedProtocolError: Raised when invalid JID is encountered.
            - pyxmpp2.exceptions.ResourceConstraintProtocolError: Raised when stanza requests a feature which is not (yet) implemented.
            - pyxmpp2.exceptions.ServiceUnavailableProtocolError: Raised when stanza requests a feature which is not (yet) implemented.
          - pyxmpp2.exceptions.PyXMPPIOError: Exception raised on I/O error.
          - pyxmpp2.exceptions.StreamError: Base class for all stream errors.
            - pyxmpp2.exceptions.ClientStreamError: Raised on a client stream error.
              - pyxmpp2.exceptions.LegacyAuthenticationError: Raised on a legacy authentication error.
              - pyxmpp2.exceptions.RegistrationError: Raised on a in-band registration error.
            - pyxmpp2.exceptions.ComponentStreamError: Raised on a component error.
              - pyxmpp2.exceptions.FatalComponentStreamError: Raised on a fatal component error.
            - pyxmpp2.exceptions.FatalStreamError: Base class for all fatal Stream exceptions.
              - pyxmpp2.exceptions.DNSError: Raised when no host name could be resolved for the target.
                - pyxmpp2.exceptions.UnexpectedCNAMEError: Raised when CNAME record was found when A or AAAA was expected.
              - pyxmpp2.exceptions.FatalClientStreamError: Raised on a fatal client stream error.
              - pyxmpp2.exceptions.FatalComponentStreamError: Raised on a fatal component error.
              - pyxmpp2.exceptions.StreamAuthenticationError: Raised when stream authentication fails.
                - pyxmpp2.exceptions.SASLAuthenticationFailed: Raised when stream SASL authentication fails.
                - pyxmpp2.exceptions.SASLMechanismNotAvailable: Raised when none of SASL authentication mechanisms requested is available.
                - pyxmpp2.exceptions.SASLNotAvailable: Raised when SASL authentication is requested, but not available.
              - pyxmpp2.exceptions.StreamParseError: Raised when invalid XML is received in an XMPP stream.
              - pyxmpp2.exceptions.TLSError: Raised on TLS error during stream processing.
              - pyxmpp2.exceptions.TLSNegotiationFailed: Raised when stream TLS negotiation fails.
            - pyxmpp2.exceptions.HostMismatch: Exception raised when the connected host name is other then requested.
            - pyxmpp2.exceptions.StreamEncryptionRequired: Exception raised when stream encryption is requested, but not used.
          - pyxmpp2.exceptions.StringprepError: Exception raised when string preparation results in error.
        - exceptions.ValueError: Inappropriate argument value (of correct type).
          - pyxmpp2.exceptions.JIDError: Exception raised when invalid JID is used
            - pyxmpp2.exceptions.JIDMalformedProtocolError: Raised when invalid JID is encountered.
  - pyxmpp2.sasl.core.ClientAuthenticator: Base class for client authenticators.
    - pyxmpp2.sasl.digest_md5.DigestMD5ClientAuthenticator: Provides PLAIN SASL authentication for a client.
    - pyxmpp2.sasl.external.ExternalClientAuthenticator: Provides client-side External SASL (TLS-Identify) authentication.
    - pyxmpp2.sasl.plain.PlainClientAuthenticator: Provides PLAIN SASL authentication for a client.
  - _abcoll.Container
    - _abcoll.Mapping
      - _abcoll.MutableMapping
        - pyxmpp2.settings.XMPPSettings: Container for various parameters used all over PyXMPP.
  - pyxmpp2.etree.ElementClass: Abstract class used to reference the `ElementTree.Element` object type of the selected Element Tree implementation.
  - pyxmpp2.error.ErrorElement: Base class for both XMPP stream and stanza errors
    - pyxmpp2.error.StanzaErrorElement: Stanza error element.
    - pyxmpp2.error.StreamErrorElement: Stream error element.
  - pyxmpp2.mainloop.interfaces.Event: Base class for PyXMPP2 events.
    - pyxmpp2.streamevents.StreamEvent: Base class for all stream events.
      - pyxmpp2.streamevents.AuthenticatedEvent: Event raised after stream authentication is complete.
      - pyxmpp2.streamevents.AuthorizedEvent: Event raised after stream authentication and authorization is complete.
      - pyxmpp2.streamevents.BindingResourceEvent: Emitted when resource binding is initiated for the stream.
      - pyxmpp2.streamevents.ConnectedEvent: Emitted after the stream socket is connected, just before the actual XMPP exchange happens.
      - pyxmpp2.streamevents.ConnectingEvent: Emitted on TCP connection attempt.
      - pyxmpp2.streamevents.ConnectionAcceptedEvent: Emitted when a new TCP connection is accepted.
      - pyxmpp2.streamevents.DisconnectedEvent: Emitted when the stream is disconnected.
      - pyxmpp2.streamevents.GotFeaturesEvent: Emitted when the stream features are received.
      - pyxmpp2.streamevents.ResolvingAddressEvent: Emitted when staring to resolve an address (A or AAAA) DNS record for a hostname.
      - pyxmpp2.streamevents.ResolvingSRVEvent: Emitted when staring to resolve an SRV DNS record for a domain.
      - pyxmpp2.streamevents.StreamConnectedEvent: Emitted when the initial stream handshake (<stream:stream> tag exchange) is completed, before any authentication.
      - pyxmpp2.streamevents.StreamRestartedEvent: Emitted after stream is restarted (<stream:stream> tag exchange) e.g.
      - pyxmpp2.streamevents.TLSConnectedEvent: Emitted when the TLS layer has been established.
      - pyxmpp2.streamevents.TLSConnectingEvent: Emitted when the TLS handshake starts.
  - pyxmpp2.mainloop.events.EventDispatcher: Dispatches events from an event queue to event handlers.
  - pyxmpp2.mainloop.threads.EventDispatcherThread: Event dispatcher thread.
  - pyxmpp2.mainloop.interfaces.EventHandler: Base class for PyXMPP event handlers.
    - pyxmpp2.client.Client: Base class for an XMPP-IM client.
    - pyxmpp2.simple.FireAndForget: A minimal XMPP client that just connects to a server and runs single function.
    - pyxmpp2.session.SessionHandler: RFC 3921 session establishment implementation.
    - pyxmpp2.streamtls.StreamTLSHandler: Handler for stream TLS support.
  - pyxmpp2.mainloop.interfaces.IOHandler: Wrapper for a socket or a file descriptor to be used in event loop or for I/O threads.
    - pyxmpp2.transport.TCPTransport: XMPP over TCP with optional TLS.
  - pyxmpp2.mainloop.interfaces.IOHandlerPrepareResult: Result of the IOHandler.prepare method.
    - pyxmpp2.mainloop.interfaces.HandlerReady: Returned by the IOHandler.prepare method when the object is ready to handle I/O events and doesn't need further calls to the IOHandler.prepare method.
    - pyxmpp2.mainloop.interfaces.PrepareAgain: Returned by the IOHandler.prepare method when the method needs to be called again.
  - pyxmpp2.mainloop.threads.IOThread: Base class for ReadingThread and WrittingThread.
    - pyxmpp2.mainloop.threads.ReadingThread: A thread reading from io_handler.
    - pyxmpp2.mainloop.threads.WrittingThread: A thread reading from io_handler.
  - _abcoll.Iterable
    - _abcoll.Mapping
      - _abcoll.MutableMapping
        - pyxmpp2.settings.XMPPSettings: Container for various parameters used all over PyXMPP.
  - pyxmpp2.jid.JID: JID.
  - pyxmpp2.mainloop.interfaces.MainLoop: Base class for main loop implementations.
    - pyxmpp2.mainloop.base.MainLoopBase: Base class for main loop implementations.
      - pyxmpp2.mainloop.poll.PollMainLoop: Main event loop based on the poll() syscall.
      - pyxmpp2.mainloop.select.SelectMainLoop: Main event loop implementation based on the select.select() call.
    - pyxmpp2.mainloop.threads.ThreadPool: Thread pool object, as a replacement for an asychronous event loop.
  - pyxmpp2.xmppparser.ParserTarget: Element tree parser events handler for the XMPP stream parser.
  - pyxmpp2.sasl.core.PasswordManager: Base class for password managers.
    - pyxmpp2.streamsasl.DefaultPasswordManager: Default password manager.
  - pyxmpp2.xmppstringprep.Profile: Base class for stringprep profiles.
  - pyxmpp2.sasl.core.Reply: Base class for SASL authentication reply objects.
    - pyxmpp2.sasl.core.Challenge: The challenge SASL message (server's challenge for the client).
    - pyxmpp2.sasl.core.Failure: The failure SASL message.
    - pyxmpp2.sasl.core.Response: The response SASL message (clients's reply the the server's challenge).
    - pyxmpp2.sasl.core.Success: The success SASL message (sent by the server on authentication success).
  - pyxmpp2.interfaces.Resolver: Abstract base class for asynchronous DNS resolvers to be used with PyxMPP.
    - pyxmpp2.resolver.BlockingResolver: Blocking resolver using the DNSPython package.
    - pyxmpp2.resolver.DumbBlockingResolver: Simple blocking resolver using only the standard Python library.
    - pyxmpp2.resolver.ThreadedResolverBase: Base class for threaded resolvers.
      - pyxmpp2.resolver.ThreadedResolver: Threaded resolver implementation using the DNSPython `dns.resolver` module.
  - pyxmpp2.sasl.core.ServerAuthenticator: Base class for server authenticators.
    - pyxmpp2.sasl.digest_md5.DigestMD5ServerAuthenticator: Provides DIGEST-MD5 SASL authentication for a server.
    - pyxmpp2.sasl.plain.PlainServerAuthenticator: Provides PLAIN SASL authentication for a server.
  - _abcoll.Sized
    - _abcoll.Mapping
      - _abcoll.MutableMapping
        - pyxmpp2.settings.XMPPSettings: Container for various parameters used all over PyXMPP.
  - pyxmpp2.stanza.Stanza: Base class for all XMPP stanzas.
    - pyxmpp2.iq.Iq: <message /> stanza class.
    - pyxmpp2.message.Message: <message /> stanza class.
    - pyxmpp2.presence.Presence: <presence /> stanza.
  - pyxmpp2.interfaces.StanzaPayload: Abstract base class for stanza payload objects.
    - pyxmpp2.binding.ResourceBindingPayload: Resource binding <iq/> stanza payload.
    - pyxmpp2.stanzapayload.XMLPayload: Transparent XML payload for stanza.
  - pyxmpp2.stanzaprocessor.StanzaProcessor: Universal stanza handler/router class.
    - pyxmpp2.streambase.StreamBase: Base class for a generic XMPP stream.
      - pyxmpp2.clientstream.ClientStream: Handles XMPP-IM c2s stream.
  - pyxmpp2.interfaces.StreamFeatureHandled: Object returned by a stream feature handler for recognized and handled features.
  - pyxmpp2.interfaces.StreamFeatureHandler: Base class for stream feature handlers.
    - pyxmpp2.binding.ResourceBindingHandler: Resource binding implementation.
    - pyxmpp2.session.SessionHandler: RFC 3921 session establishment implementation.
    - pyxmpp2.streamsasl.StreamSASLHandler: SASL authentication handler XMPP streams.
    - pyxmpp2.streamtls.StreamTLSHandler: Handler for stream TLS support.
  - pyxmpp2.interfaces.StreamFeatureNotHandled: Object returned by a stream feature handler for recognized, but unhandled features.
  - pyxmpp2.xmppparser.StreamReader: XML stream reader.
  - pyxmpp2.mainloop.interfaces.TimeoutHandler: Base class for PyXMPP timeout handlers.
    - pyxmpp2.streambase.StreamBase: Base class for a generic XMPP stream.
      - pyxmpp2.clientstream.ClientStream: Handles XMPP-IM c2s stream.
  - pyxmpp2.mainloop.threads.TimeoutThread: Thread to handle TimeoutHandler methods.
  - pyxmpp2.transport.WriteJob: Base class for objects put to the TCPTransport write queue.
    - pyxmpp2.transport.ContinueConnect: Object to signal (via the write queue) a pending connect request.
    - pyxmpp2.transport.StartTLS: StartTLS request for the TCPTransport write queue.
    - pyxmpp2.transport.TLSHandshake: Object to signal (via the write queue) a pending TLS handshake.
    - pyxmpp2.transport.WriteData: Data queued for write.
  - pyxmpp2.xmppparser.XMLStreamHandler: Base class for stream handler, used as a target for XMPP parser or XMPP transports.
    - pyxmpp2.streambase.StreamBase: Base class for a generic XMPP stream.
      - pyxmpp2.clientstream.ClientStream: Handles XMPP-IM c2s stream.
  - pyxmpp2.interfaces.XMPPFeatureHandler: Base class for objects handling incoming stanzas.
    - pyxmpp2.binding.ResourceBindingHandler: Resource binding implementation.
    - pyxmpp2.session.SessionHandler: RFC 3921 session establishment implementation.
  - pyxmpp2.xmppserializer.XMPPSerializer: Implementation of the XMPP serializer.
  - pyxmpp2.interfaces.XMPPTransport: Abstract base class for XMPP transport implementations.
    - pyxmpp2.transport.TCPTransport: XMPP over TCP with optional TLS.
  - argparse._AttributeHolder: Abstract base class that provides __repr__.
    - argparse.Action: Information about how to convert command line strings to Python objects.
      - pyxmpp2.settings._YesNoAction: Custom std:argparse option to handle boolean options via '--no-' prefixes.
  - pyxmpp2.settings._SettingDefinition: A PyXMPP2 setting meta-data and defaults.
  - dict: dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list.
    - pyxmpp2.expdict.ExpiringDictionary: An extension to standard Python dictionary objects which implements item expiration.
  - type: type(object) -> the object's type type(name, bases, dict) -> a new type
    - abc.ABCMeta: Metaclass for defining Abstract Base Classes (ABCs).