From 3a12cdbd131e5bb98f192c077faa6bdda8fd95c7 Mon Sep 17 00:00:00 2001 From: Dann Martens Date: Thu, 13 Jan 2011 08:40:53 +0100 Subject: Introduced new XEP-0009 into develop. --- sleekxmpp/plugins/xep_0009/stanza/RPC.py | 68 +++++++++++++++++++++++++++ sleekxmpp/plugins/xep_0009/stanza/__init__.py | 9 ++++ 2 files changed, 77 insertions(+) create mode 100644 sleekxmpp/plugins/xep_0009/stanza/RPC.py create mode 100644 sleekxmpp/plugins/xep_0009/stanza/__init__.py (limited to 'sleekxmpp/plugins/xep_0009/stanza') diff --git a/sleekxmpp/plugins/xep_0009/stanza/RPC.py b/sleekxmpp/plugins/xep_0009/stanza/RPC.py new file mode 100644 index 00000000..24f2efd8 --- /dev/null +++ b/sleekxmpp/plugins/xep_0009/stanza/RPC.py @@ -0,0 +1,68 @@ +""" + SleekXMPP: The Sleek XMPP Library + Copyright (C) 2011 Nathanael C. Fritz, Dann Martens (TOMOTON). + This file is part of SleekXMPP. + + See the file LICENSE for copying permission. +""" + +from sleekxmpp.xmlstream.stanzabase import ElementBase +from xml.etree import cElementTree as ET + + +class RPCQuery(ElementBase): + name = 'query' + namespace = 'jabber:iq:rpc' + plugin_attrib = 'rpc_query' + interfaces = set(()) + subinterfaces = set(()) + plugin_attrib_map = {} + plugin_tag_map = {} + + + +class MethodCall(ElementBase): + name = 'methodCall' + namespace = 'jabber:iq:rpc' + plugin_attrib = 'method_call' + interfaces = set(('method_name', 'params')) + subinterfaces = set(()) + plugin_attrib_map = {} + plugin_tag_map = {} + + + def get_method_name(self): + return self._get_sub_text('methodName') + + def set_method_name(self, value): + return self._set_sub_text('methodName', value) + + def get_params(self): + return self.xml.find('{%s}params' % self.namespace) + + def set_params(self, params): + self.append(params) + + + +class MethodResponse(ElementBase): + name = 'methodResponse' + namespace = 'jabber:iq:rpc' + plugin_attrib = 'method_response' + interfaces = set(('params', 'fault')) + subinterfaces = set(()) + plugin_attrib_map = {} + plugin_tag_map = {} + + + def get_params(self): + return self.xml.find('{%s}params' % self.namespace) + + def set_params(self, params): + self.append(params) + + def get_fault(self): + return self.xml.find('{%s}fault' % self.namespace) + + def set_fault(self, fault): + self.append(fault) diff --git a/sleekxmpp/plugins/xep_0009/stanza/__init__.py b/sleekxmpp/plugins/xep_0009/stanza/__init__.py new file mode 100644 index 00000000..0b902238 --- /dev/null +++ b/sleekxmpp/plugins/xep_0009/stanza/__init__.py @@ -0,0 +1,9 @@ +""" + SleekXMPP: The Sleek XMPP Library + Copyright (C) 2011 Nathanael C. Fritz, Dann Martens (TOMOTON). + This file is part of SleekXMPP. + + See the file LICENSE for copying permission. +""" + +from RPC import RPCQuery, MethodCall, MethodResponse -- cgit v1.2.3 From 4b71fba64c8675aa891fd6a92eb6f0f045e4a48e Mon Sep 17 00:00:00 2001 From: Florent Le Coz Date: Wed, 9 Feb 2011 09:45:45 +0800 Subject: Fix the xep_0009 import (no more relatives) Also, remove trailing spaces in all files of this plugin --- sleekxmpp/plugins/xep_0009/stanza/RPC.py | 24 ++++++++++-------------- sleekxmpp/plugins/xep_0009/stanza/__init__.py | 2 +- 2 files changed, 11 insertions(+), 15 deletions(-) (limited to 'sleekxmpp/plugins/xep_0009/stanza') diff --git a/sleekxmpp/plugins/xep_0009/stanza/RPC.py b/sleekxmpp/plugins/xep_0009/stanza/RPC.py index 24f2efd8..3d1c77a2 100644 --- a/sleekxmpp/plugins/xep_0009/stanza/RPC.py +++ b/sleekxmpp/plugins/xep_0009/stanza/RPC.py @@ -14,55 +14,51 @@ class RPCQuery(ElementBase): name = 'query' namespace = 'jabber:iq:rpc' plugin_attrib = 'rpc_query' - interfaces = set(()) + interfaces = set(()) subinterfaces = set(()) plugin_attrib_map = {} plugin_tag_map = {} - class MethodCall(ElementBase): name = 'methodCall' namespace = 'jabber:iq:rpc' plugin_attrib = 'method_call' - interfaces = set(('method_name', 'params')) + interfaces = set(('method_name', 'params')) subinterfaces = set(()) plugin_attrib_map = {} - plugin_tag_map = {} - + plugin_tag_map = {} def get_method_name(self): return self._get_sub_text('methodName') def set_method_name(self, value): return self._set_sub_text('methodName', value) - + def get_params(self): return self.xml.find('{%s}params' % self.namespace) - + def set_params(self, params): self.append(params) - - + class MethodResponse(ElementBase): name = 'methodResponse' namespace = 'jabber:iq:rpc' plugin_attrib = 'method_response' - interfaces = set(('params', 'fault')) + interfaces = set(('params', 'fault')) subinterfaces = set(()) plugin_attrib_map = {} plugin_tag_map = {} - - + def get_params(self): return self.xml.find('{%s}params' % self.namespace) - + def set_params(self, params): self.append(params) def get_fault(self): return self.xml.find('{%s}fault' % self.namespace) - + def set_fault(self, fault): self.append(fault) diff --git a/sleekxmpp/plugins/xep_0009/stanza/__init__.py b/sleekxmpp/plugins/xep_0009/stanza/__init__.py index 0b902238..5dcbf330 100644 --- a/sleekxmpp/plugins/xep_0009/stanza/__init__.py +++ b/sleekxmpp/plugins/xep_0009/stanza/__init__.py @@ -6,4 +6,4 @@ See the file LICENSE for copying permission. """ -from RPC import RPCQuery, MethodCall, MethodResponse +from sleekxmpp.plugins.xep_0009.stanza.RPC import RPCQuery, MethodCall, MethodResponse -- cgit v1.2.3