view stubs/twisted/words/protocols/jabber/jid.pyi @ 3914:4cb38c8312a1

plugin XEP-0384, xml_tools: avoid `getItems` timeout + fix empty node crash + parsing: - use `max_items` in `getItems` calls for bundles, as otherwise some pubsub service may return full nodes, which may be huge is `max_items=1` is not set on the node, possibly resulting in timeouts. - the plugin was crashing when TWOMEMO devices list node has no items at all. This is not the case anymore. - a naive parsing method has been implemented in `xml_tools` to replace the serialisation/deserialisation method. This should be more efficient and will avoid annoying `ns0:` prefixes in XML logs.
author Goffi <goffi@goffi.org>
date Sat, 24 Sep 2022 16:37:46 +0200
parents 8289ac1b34f4
children
line wrap: on
line source

from typing import Tuple, overload


User = str
Host = str
Resource = str


# Note: these typings are incomplete and evolve as needed.
class JID:
    user: User
    host: Host
    resource: Resource

    @overload
    def __init__(self, str: str, tuple: None = None) -> None:
        ...

    @overload
    def __init__(self, str: None, tuple: Tuple[User, Host, Resource]) -> None:
        ...

    def userhost(self) -> str:
        ...

    def userhostJID(self) -> "JID":
        ...

    def full(self) -> str:
        ...