diff src/plugins/plugin_exp_pipe.py @ 594:e629371a28d3

Fix pep8 support in src/plugins.
author Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
date Fri, 18 Jan 2013 17:55:35 +0100
parents beaf6bec2fcd
children 84a6e83157c2
line wrap: on
line diff
--- a/src/plugins/plugin_exp_pipe.py	Mon Jan 21 00:59:50 2013 +0100
+++ b/src/plugins/plugin_exp_pipe.py	Fri Jan 18 17:55:35 2013 +0100
@@ -23,7 +23,7 @@
 from twisted.words.xish import domish
 from twisted.words.protocols.jabber import jid
 from twisted.words.protocols.jabber import error as jab_error
-import os, os.path
+import os
 from twisted.internet import reactor
 from sat.core.exceptions import ProfileNotInCacheError
 
@@ -34,16 +34,17 @@
 PROFILE = "http://jabber.org/protocol/si/profile/" + PROFILE_NAME
 
 PLUGIN_INFO = {
-"name": "Pipe Plugin",
-"import_name": "EXP-PIPE",
-"type": "EXP",
-"protocols": ["EXP-PIPE"],
-"dependencies": ["XEP-0020", "XEP-0095", "XEP-0065", "XEP-0047"],
-"main": "Exp_Pipe",
-"handler": "no",
-"description": _("""Implementation of SI Pipe Transfer""")
+    "name": "Pipe Plugin",
+    "import_name": "EXP-PIPE",
+    "type": "EXP",
+    "protocols": ["EXP-PIPE"],
+    "dependencies": ["XEP-0020", "XEP-0095", "XEP-0065", "XEP-0047"],
+    "main": "Exp_Pipe",
+    "handler": "no",
+    "description": _("""Implementation of SI Pipe Transfer""")
 }
 
+
 class Exp_Pipe(object):
     """This is a modified version of XEP-0096 to work with named pipes instead of files"""
 
@@ -51,13 +52,13 @@
         info(_("Plugin Pipe initialization"))
         self.host = host
         self.managed_stream_m = [self.host.plugins["XEP-0065"].NAMESPACE,
-                                 self.host.plugins["XEP-0047"].NAMESPACE] #Stream methods managed
+                                 self.host.plugins["XEP-0047"].NAMESPACE]  # Stream methods managed
         self.host.plugins["XEP-0095"].registerSIProfile(PROFILE_NAME, self.transferRequest)
         host.bridge.addMethod("pipeOut", ".plugin", in_sign='ssa{ss}s', out_sign='s', method=self.pipeOut)
 
     def profileConnected(self, profile):
         client = self.host.getClient(profile)
-        client._pipe_waiting_for_approval = {} #key = id, value = [transfer data, IdelayedCall Reactor timeout,
+        client._pipe_waiting_for_approval = {}  # key = id, value = [transfer data, IdelayedCall Reactor timeout,
                                         # current stream method, [failed stream methods], profile]
 
     def _kill_id(self, approval_id, profile):
@@ -78,7 +79,7 @@
         @param si_mime_type: Mime type of the pipe (or default "application/octet-stream" if unknown)
         @param si_el: domish.Element of the request
         @param profile: %(doc_profile)s"""
-        info (_("EXP-PIPE file transfer requested"))
+        info(_("EXP-PIPE file transfer requested"))
         debug(si_el.toXml())
         client = self.host.getClient(profile)
         if not client:
@@ -95,7 +96,7 @@
             feature_el = feature_elts[0]
             form = data_form.Form.fromElement(feature_el.firstChildElement())
             try:
-                stream_method = self.host.plugins["XEP-0020"].negociate(feature_el, 'stream-method',self.managed_stream_m)
+                stream_method = self.host.plugins["XEP-0020"].negociate(feature_el, 'stream-method', self.managed_stream_m)
             except KeyError:
                 warning(_("No stream method found"))
                 self.host.plugins["XEP-0095"].sendBadRequestError(iq_id, from_jid, profile)
@@ -110,12 +111,11 @@
             return
 
         #if we are here, the transfer can start, we just need user's agreement
-        data={ "id": iq_id, "from":from_jid }
+        data = {"id": iq_id, "from": from_jid}
         client._pipe_waiting_for_approval[si_id] = [data, reactor.callLater(300, self._kill_id, si_id), stream_method, [], profile]
 
         self.host.askConfirmation(si_id, "PIPE_TRANSFER", data, self.confirmationCB, profile)
 
-
     def confirmationCB(self, sid, accepted, frontend_data, profile):
         """Called on confirmation answer
         @param sid: file transfer session id
@@ -146,13 +146,13 @@
                 return
 
             #we can send the iq result
-            feature_elt = self.host.plugins["XEP-0020"].chooseOption({'stream-method':stream_method})
+            feature_elt = self.host.plugins["XEP-0020"].chooseOption({'stream-method': stream_method})
             misc_elts = []
             misc_elts.append(domish.Element((PROFILE, "file")))
             self.host.plugins["XEP-0095"].acceptStream(data["id"], data['from'], feature_elt, misc_elts, profile)
         else:
-            debug (_("Transfer [%s] refused"), sid)
-            self.host.plugins["XEP-0095"].sendRejectedError (data["id"], data['from'], profile=profile)
+            debug(_("Transfer [%s] refused"), sid)
+            self.host.plugins["XEP-0095"].sendRejectedError(data["id"], data['from'], profile=profile)
             del(client._pipe_waiting_for_approval[sid])
 
     def _transferSucceeded(self, sid, file_obj, stream_method, profile):
@@ -173,8 +173,8 @@
         if not client:
             raise ProfileNotInCacheError
         data, timeout, stream_method, failed_methods, profile = client._pipe_waiting_for_approval[sid]
-        warning(_('Transfer %(id)s failed with stream method %(s_method)s') % { 'id': sid,
-                                                                                 's_method': stream_method })
+        warning(_('Transfer %(id)s failed with stream method %(s_method)s') % {'id': sid,
+                                                                               's_method': stream_method})
         filepath = file_obj.name
         file_obj.close()
         #TODO: session remenber (within a time limit) when a stream method fail, and avoid that stream method with full jid for the rest of the session
@@ -211,15 +211,15 @@
             return
 
         if stream_method == self.host.plugins["XEP-0065"].NAMESPACE:
-           #fd = os.open(filepath, os.O_RDONLY | os.O_NONBLOCK) #XXX: non blocking openingl cause issues with XEP-0065's FileSender
-           #file_obj = os.fdopen(fd, 'r')
-           file_obj = open(filepath, 'r') #XXX: we have to be sure that filepath is well opened, as reading can block it
-           self.host.plugins["XEP-0065"].startStream(file_obj, jid.JID(IQ['from']), sid, None, self.sendSuccessCb, self.sendFailureCb, None, profile)
+            #fd = os.open(filepath, os.O_RDONLY | os.O_NONBLOCK) #XXX: non blocking openingl cause issues with XEP-0065's FileSender
+            #file_obj = os.fdopen(fd, 'r')
+            file_obj = open(filepath, 'r')  # XXX: we have to be sure that filepath is well opened, as reading can block it
+            self.host.plugins["XEP-0065"].startStream(file_obj, jid.JID(IQ['from']), sid, None, self.sendSuccessCb, self.sendFailureCb, None, profile)
         elif stream_method == self.host.plugins["XEP-0047"].NAMESPACE:
-           #fd = os.open(filepath, os.O_RDONLY | os.O_NONBLOCK) #XXX: non blocking openingl cause issues with XEP-0065's FileSender
-           #file_obj = os.fdopen(fd, 'r')
-           file_obj = open(filepath, 'r') #XXX: we have to be sure that filepath is well opened, as reading can block it
-           self.host.plugins["XEP-0047"].startStream(file_obj, jid.JID(IQ['from']), sid, None, self.sendSuccessCb, self.sendFailureCb, None, profile)
+            #fd = os.open(filepath, os.O_RDONLY | os.O_NONBLOCK) #XXX: non blocking openingl cause issues with XEP-0065's FileSender
+            #file_obj = os.fdopen(fd, 'r')
+            file_obj = open(filepath, 'r')  # XXX: we have to be sure that filepath is well opened, as reading can block it
+            self.host.plugins["XEP-0047"].startStream(file_obj, jid.JID(IQ['from']), sid, None, self.sendSuccessCb, self.sendFailureCb, None, profile)
         else:
             warning(_("Invalid stream method received"))
 
@@ -242,7 +242,7 @@
         pipe_elt = domish.Element((PROFILE, 'pipe'))
         pipe_transfer_elts.append(pipe_elt)
 
-        sid, offer = self.host.plugins["XEP-0095"].proposeStream(jid.JID(to_jid), PROFILE, feature_elt, pipe_transfer_elts, profile_key = profile)
+        sid, offer = self.host.plugins["XEP-0095"].proposeStream(jid.JID(to_jid), PROFILE, feature_elt, pipe_transfer_elts, profile_key=profile)
         offer.addCallback(self.pipeCb, filepath, sid, profile)
         return sid
 
@@ -252,5 +252,4 @@
 
     def sendFailureCb(self, sid, file_obj, stream_method, reason, profile):
         file_obj.close()
-        warning(_('Transfer %(id)s failed with stream method %(s_method)s %(profile)s') % { 'id': sid, "s_method": stream_method, "profile": profile })
-
+        warning(_('Transfer %(id)s failed with stream method %(s_method)s %(profile)s') % {'id': sid, "s_method": stream_method, "profile": profile})