Exemple #1
0
 def test_identity(self):
     """
     Test that two interned JIDs yield the same object.
     """
     j1 = jid.internJID("user@host")
     j2 = jid.internJID("user@host")
     self.assertIdentical(j1, j2)
 def test_identity(self):
     """
     Test that two interned JIDs yield the same object.
     """
     j1 = jid.internJID("user@host")
     j2 = jid.internJID("user@host")
     self.assertIdentical(j1, j2)
 def test_userhostJID(self):
     """
     Test getting a JID object of the bare JID.
     """
     j1 = jid.JID("user@host/resource")
     j2 = jid.internJID("user@host")
     self.assertIdentical(j2, j1.userhostJID())
Exemple #4
0
    def streamStarted(self, rootElement):
        """
        Called by the XmlStream when the stream has started.

        This extends L{Authenticator.streamStarted} to extract further stream
        headers from L{rootElement}, optionally wait for stream features being
        received and then call C{initializeStream}.
        """

        Authenticator.streamStarted(self, rootElement)

        self.xmlstream.sid = rootElement.getAttribute("id")

        if rootElement.hasAttribute("from"):
            self.xmlstream.otherEntity = jid.internJID(rootElement["from"])

        # Setup observer for stream features, if applicable
        if self.xmlstream.version >= (1, 0):
            def onFeatures(element):
                features = {}
                for feature in element.elements():
                    features[(feature.uri, feature.name)] = feature

                self.xmlstream.features = features
                self.initializeStream()

            self.xmlstream.addOnetimeObserver('/features[@xmlns="%s"]' %
                                                  NS_STREAMS,
                                              onFeatures)
        else:
            self.initializeStream()
Exemple #5
0
 def test_userhostJID(self):
     """
     Test getting a JID object of the bare JID.
     """
     j1 = jid.JID("user@host/resource")
     j2 = jid.internJID("user@host")
     self.assertIdentical(j2, j1.userhostJID())
Exemple #6
0
    def streamStarted(self, rootElement):
        """
        Called by the XmlStream when the stream has started.

        This extends L{Authenticator.streamStarted} to extract further
        information from the stream headers from L{rootElement}.
        """
        Authenticator.streamStarted(self, rootElement)

        self.xmlstream.namespace = rootElement.defaultUri

        if rootElement.hasAttribute("to"):
            self.xmlstream.thisEntity = jid.internJID(rootElement["to"])

        self.xmlstream.prefixes = {}
        for prefix, uri in rootElement.localPrefixes.iteritems():
            self.xmlstream.prefixes[uri] = prefix

        self.xmlstream.sid = unicode(randbytes.secureRandom(8).encode('hex'))
Exemple #7
0
 def connectionMade(self):
     self.xmlstream.namespace = self.namespace
     self.xmlstream.otherEntity = jid.internJID(self.otherHost)
     self.xmlstream.sendHeader()