diff options
author | mathieui <mathieui@mathieui.net> | 2015-10-02 19:07:45 +0200 |
---|---|---|
committer | mathieui <mathieui@mathieui.net> | 2015-10-02 19:07:45 +0200 |
commit | ada9444bf84bd238238c4d22561f69184dd22cdd (patch) | |
tree | ceb4f86446b4129ec22cb348f1cb1bd7a151e2da /slixmpp/plugins/google/auth/stanza.py | |
parent | 1100ff1febf7e605e03fd9565bdac5fdaa3bf1e0 (diff) | |
parent | acc52fd935b7e74919ad748f3a630596f66c62af (diff) | |
download | slixmpp-ada9444bf84bd238238c4d22561f69184dd22cdd.tar.gz slixmpp-ada9444bf84bd238238c4d22561f69184dd22cdd.tar.bz2 slixmpp-ada9444bf84bd238238c4d22561f69184dd22cdd.tar.xz slixmpp-ada9444bf84bd238238c4d22561f69184dd22cdd.zip |
Merge branch 'sleek-merge'
Diffstat (limited to 'slixmpp/plugins/google/auth/stanza.py')
-rw-r--r-- | slixmpp/plugins/google/auth/stanza.py | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/slixmpp/plugins/google/auth/stanza.py b/slixmpp/plugins/google/auth/stanza.py new file mode 100644 index 00000000..c5c693ee --- /dev/null +++ b/slixmpp/plugins/google/auth/stanza.py @@ -0,0 +1,47 @@ +""" + Slixmpp: The Slick XMPP Library + Copyright (C) 2013 Nathanael C. Fritz, Lance J.T. Stout + This file is part of slixmpp. + + See the file LICENSE for copying permission. +""" + +from slixmpp.xmlstream import ElementBase, ET + + +class GoogleAuth(ElementBase): + name = 'auth' + namespace = 'http://www.google.com/talk/protocol/auth' + plugin_attrib = 'google' + interfaces = set(['client_uses_full_bind_result', 'service']) + + discovery_attr= '{%s}client-uses-full-bind-result' % namespace + service_attr= '{%s}service' % namespace + + def setup(self, xml): + """Don't create XML for the plugin.""" + self.xml = ET.Element('') + + def get_client_uses_full_bind_result(self): + return self.parent()._get_attr(self.discovery_attr) == 'true' + + def set_client_uses_full_bind_result(self, value): + if value in (True, 'true'): + self.parent()._set_attr(self.discovery_attr, 'true') + else: + self.parent()._del_attr(self.discovery_attr) + + def del_client_uses_full_bind_result(self): + self.parent()._del_attr(self.discovery_attr) + + def get_service(self): + return self.parent()._get_attr(self.service_attr, '') + + def set_service(self, value): + if value: + self.parent()._set_attr(self.service_attr, value) + else: + self.parent()._del_attr(self.service_attr) + + def del_service(self): + self.parent()._del_attr(self.service_attr) |