scripting/source/pyprov/mailmerge.py |  920 +++++++++++++++++------------------
 1 file changed, 460 insertions(+), 460 deletions(-)

New commits:
commit 08e117def0dc8541c177a2a1a0700fac9635f0fc
Author:     Julien Nabet <serval2...@yahoo.fr>
AuthorDate: Fri Jul 12 22:01:34 2024 +0200
Commit:     Julien Nabet <serval2...@yahoo.fr>
CommitDate: Sat Jul 13 00:08:12 2024 +0200

    Reindent mailmerge.py to use 4 spaces instead of tabs
    
    No functional change.
    I used reindent.py from 
https://github.com/certik/python-3.2/blob/master/Tools/scripts/reindent.py
    
    Change-Id: I03c5425ef26131f09e0b9de56737b2e069722e7e
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170419
    Tested-by: Jenkins
    Reviewed-by: Julien Nabet <serval2...@yahoo.fr>

diff --git a/scripting/source/pyprov/mailmerge.py 
b/scripting/source/pyprov/mailmerge.py
index 3c781c52f2cb..46d1c887263c 100644
--- a/scripting/source/pyprov/mailmerge.py
+++ b/scripting/source/pyprov/mailmerge.py
@@ -56,478 +56,478 @@ g_providerImplName = 
"org.openoffice.pyuno.MailServiceProvider"
 g_messageImplName = "org.openoffice.pyuno.MailMessage"
 
 def prepareTLSContext(xComponent, xContext, isTLSRequested):
-       xConfigProvider = 
xContext.ServiceManager.createInstance("com.sun.star.configuration.ConfigurationProvider")
-       prop = uno.createUnoStruct('com.sun.star.beans.PropertyValue')
-       prop.Name = "nodepath"
-       prop.Value = "/org.openoffice.Office.Security/Net"
-       xSettings = 
xConfigProvider.createInstanceWithArguments("com.sun.star.configuration.ConfigurationAccess",
-               (prop,))
-       isAllowedInsecure = xSettings.getByName("AllowInsecureProtocols")
-       tlscontext = None
-       if isTLSRequested:
-               if dbg:
-                       print("SSL config: " + 
str(ssl.get_default_verify_paths()), file=sys.stderr)
-               tlscontext = ssl.create_default_context()
-               # SSLv2/v3 is already disabled by default.
-               # This check does not work, because OpenSSL 3 defines 
SSL_OP_NO_SSLv2
-               # as 0, so even though _ssl__SSLContext_impl() tries to set it,
-               # getting the value from SSL_CTX_get_options() doesn't lead to 
setting
-               # the python-level flag.
-               #assert (tlscontext.options & ssl.Options.OP_NO_SSLv2) != 0
-               assert (tlscontext.options & ssl.Options.OP_NO_SSLv3) != 0
-       if not(isAllowedInsecure):
-               if not(isTLSRequested):
-                       if dbg:
-                               print("mailmerge.py: insecure connection not 
allowed by configuration", file=sys.stderr)
-                       raise IllegalArgumentException("insecure connection not 
allowed by configuration", xComponent, 1)
-               tlscontext.options |= ssl.Options.OP_NO_TLSv1 | 
ssl.Options.OP_NO_TLSv1_1
-       return tlscontext
+    xConfigProvider = 
xContext.ServiceManager.createInstance("com.sun.star.configuration.ConfigurationProvider")
+    prop = uno.createUnoStruct('com.sun.star.beans.PropertyValue')
+    prop.Name = "nodepath"
+    prop.Value = "/org.openoffice.Office.Security/Net"
+    xSettings = 
xConfigProvider.createInstanceWithArguments("com.sun.star.configuration.ConfigurationAccess",
+            (prop,))
+    isAllowedInsecure = xSettings.getByName("AllowInsecureProtocols")
+    tlscontext = None
+    if isTLSRequested:
+        if dbg:
+            print("SSL config: " + str(ssl.get_default_verify_paths()), 
file=sys.stderr)
+        tlscontext = ssl.create_default_context()
+        # SSLv2/v3 is already disabled by default.
+        # This check does not work, because OpenSSL 3 defines SSL_OP_NO_SSLv2
+        # as 0, so even though _ssl__SSLContext_impl() tries to set it,
+        # getting the value from SSL_CTX_get_options() doesn't lead to setting
+        # the python-level flag.
+        #assert (tlscontext.options & ssl.Options.OP_NO_SSLv2) != 0
+        assert (tlscontext.options & ssl.Options.OP_NO_SSLv3) != 0
+    if not(isAllowedInsecure):
+        if not(isTLSRequested):
+            if dbg:
+                print("mailmerge.py: insecure connection not allowed by 
configuration", file=sys.stderr)
+            raise IllegalArgumentException("insecure connection not allowed by 
configuration", xComponent, 1)
+        tlscontext.options |= ssl.Options.OP_NO_TLSv1 | 
ssl.Options.OP_NO_TLSv1_1
+    return tlscontext
 
 class PyMailSMTPService(unohelper.Base, XSmtpService):
-       def __init__( self, ctx ):
-               self.ctx = ctx
-               self.listeners = []
-               self.supportedtypes = ('Insecure', 'Ssl')
-               self.server = None
-               self.connectioncontext = None
-               self.notify = EventObject(self)
-               if dbg:
-                       print("PyMailSMTPService init", file=sys.stderr)
-                       print("python version is: " + sys.version, 
file=sys.stderr)
-       def addConnectionListener(self, xListener):
-               if dbg:
-                       print("PyMailSMTPService addConnectionListener", 
file=sys.stderr)
-               self.listeners.append(xListener)
-       def removeConnectionListener(self, xListener):
-               if dbg:
-                       print("PyMailSMTPService removeConnectionListener", 
file=sys.stderr)
-               self.listeners.remove(xListener)
-       def getSupportedConnectionTypes(self):
-               if dbg:
-                       print("PyMailSMTPService getSupportedConnectionTypes", 
file=sys.stderr)
-               return self.supportedtypes
-       def connect(self, xConnectionContext, xAuthenticator):
-               self.connectioncontext = xConnectionContext
-               if dbg:
-                       print("PyMailSMTPService connect", file=sys.stderr)
-               server = xConnectionContext.getValueByName("ServerName").strip()
-               if dbg:
-                       print("ServerName: " + server, file=sys.stderr)
-               port = int(xConnectionContext.getValueByName("Port"))
-               if dbg:
-                       print("Port: " + str(port), file=sys.stderr)
-               tout = xConnectionContext.getValueByName("Timeout")
-               if dbg:
-                       print(isinstance(tout,int), file=sys.stderr)
-               if not isinstance(tout,int):
-                       tout = _GLOBAL_DEFAULT_TIMEOUT
-               if dbg:
-                       print("Timeout: " + str(tout), file=sys.stderr)
-               connectiontype = 
xConnectionContext.getValueByName("ConnectionType")
-               if dbg:
-                       print("ConnectionType: " + connectiontype, 
file=sys.stderr)
-               tlscontext = prepareTLSContext(self, self.ctx, 
connectiontype.upper() == 'SSL' or port == 465)
-               if port == 465:
-                       self.server = smtplib.SMTP_SSL(server, port, 
timeout=tout, context=tlscontext)
-               else:
-                       self.server = smtplib.SMTP(server, port,timeout=tout)
-
-               if dbg:
-                       self.server.set_debuglevel(1)
-
-               if connectiontype.upper() == 'SSL' and port != 465:
-                       # STRIPTLS: smtplib raises an exception if result is 
not 220
-                       self.server.starttls(context=tlscontext)
-
-               user = xAuthenticator.getUserName()
-               password = xAuthenticator.getPassword()
-               if user != '':
-                       if dbg:
-                               print("Logging in, username of: " + user, 
file=sys.stderr)
-                       self.server.login(user, password)
-
-               for listener in self.listeners:
-                       listener.connected(self.notify)
-       def disconnect(self):
-               if dbg:
-                       print("PyMailSMTPService disconnect", file=sys.stderr)
-               if self.server:
-                       self.server.quit()
-                       self.server = None
-               for listener in self.listeners:
-                       listener.disconnected(self.notify)
-       def isConnected(self):
-               if dbg:
-                       print("PyMailSMTPService isConnected", file=sys.stderr)
-               return self.server != None
-       def getCurrentConnectionContext(self):
-               if dbg:
-                       print("PyMailSMTPService getCurrentConnectionContext", 
file=sys.stderr)
-               return self.connectioncontext
-       def sendMailMessage(self, xMailMessage):
-               COMMASPACE = ', '
-
-               if dbg:
-                       print("PyMailSMTPService sendMailMessage", 
file=sys.stderr)
-               recipients = xMailMessage.getRecipients()
-               sendermail = xMailMessage.SenderAddress
-               sendername = xMailMessage.SenderName
-               subject = xMailMessage.Subject
-               ccrecipients = xMailMessage.getCcRecipients()
-               bccrecipients = xMailMessage.getBccRecipients()
-               if dbg:
-                       print("PyMailSMTPService subject: " + subject, 
file=sys.stderr)
-                       print("PyMailSMTPService from:  " + sendername, 
file=sys.stderr)
-                       print("PyMailSMTPService from:  " + sendermail, 
file=sys.stderr)
-                       print("PyMailSMTPService send to: %s" % (recipients,), 
file=sys.stderr)
-
-               attachments = xMailMessage.getAttachments()
-
-               textmsg = Message()
-
-               content = xMailMessage.Body
-               flavors = content.getTransferDataFlavors()
-               if dbg:
-                       print("PyMailSMTPService flavors len: %d" % 
(len(flavors),), file=sys.stderr)
-
-               #Use first flavor that's sane for an email body
-               for flavor in flavors:
-                       if flavor.MimeType.find('text/html') != -1 or 
flavor.MimeType.find('text/plain') != -1:
-                               if dbg:
-                                       print("PyMailSMTPService mimetype is: " 
+ flavor.MimeType, file=sys.stderr)
-                               textbody = content.getTransferData(flavor)
-
-                               if len(textbody):
-                                       mimeEncoding = re.sub("charset=.*", 
"charset=UTF-8", flavor.MimeType)
-                                       if mimeEncoding.find('charset=UTF-8') 
== -1:
-                                               mimeEncoding = mimeEncoding + 
"; charset=UTF-8"
-                                       textmsg['Content-Type'] = mimeEncoding
-                                       textmsg['MIME-Version'] = '1.0'
-
-                                       try:
-                                               #it's a string, get it as utf-8 
bytes
-                                               textbody = 
textbody.encode('utf-8')
-                                       except:
-                                               #it's a bytesequence, get raw 
bytes
-                                               textbody = textbody.value
-                                       textbody = textbody.decode('utf-8')
-                                       c = Charset('utf-8')
-                                       c.body_encoding = QP
-                                       textmsg.set_payload(textbody, c)
-
-                               break
-
-               if (len(attachments)):
-                       msg = MIMEMultipart()
-                       msg.epilogue = ''
-                       msg.attach(textmsg)
-               else:
-                       msg = textmsg
-
-               hdr = Header(sendername, 'utf-8')
-               hdr.append('<'+sendermail+'>','us-ascii')
-               msg['Subject'] = subject
-               msg['From'] = hdr
-               msg['To'] = COMMASPACE.join(recipients)
-               if len(ccrecipients):
-                       msg['Cc'] = COMMASPACE.join(ccrecipients)
-               if xMailMessage.ReplyToAddress != '':
-                       msg['Reply-To'] = xMailMessage.ReplyToAddress
-
-               mailerstring = "LibreOffice via Caolan's mailmerge component"
-               try:
-                       ctx = uno.getComponentContext()
-                       aConfigProvider = 
ctx.ServiceManager.createInstance("com.sun.star.configuration.ConfigurationProvider")
-                       prop = 
uno.createUnoStruct('com.sun.star.beans.PropertyValue')
-                       prop.Name = "nodepath"
-                       prop.Value = "/org.openoffice.Setup/Product"
-                       aSettings = 
aConfigProvider.createInstanceWithArguments("com.sun.star.configuration.ConfigurationAccess",
-                               (prop,))
-                       mailerstring = aSettings.getByName("ooName") + " " + \
-                               aSettings.getByName("ooSetupVersion") + " via 
Caolan's mailmerge component"
-               except:
-                       pass
-
-               msg['X-Mailer'] = mailerstring
-               msg['Date'] = formatdate(localtime=True)
-
-               for attachment in attachments:
-                       content = attachment.Data
-                       flavors = content.getTransferDataFlavors()
-                       flavor = flavors[0]
-                       ctype = flavor.MimeType
-                       maintype, subtype = ctype.split('/', 1)
-                       msgattachment = MIMEBase(maintype, subtype)
-                       data = content.getTransferData(flavor)
-                       msgattachment.set_payload(data.value)
-                       encode_base64(msgattachment)
-                       fname = attachment.ReadableName
-                       try:
-                               msgattachment.add_header('Content-Disposition', 
'attachment', \
-                                       filename=fname)
-                       except:
-                               msgattachment.add_header('Content-Disposition', 
'attachment', \
-                                       filename=('utf-8','',fname))
-                       if dbg:
-                               print(("PyMailSMTPService attachmentheader: ", 
str(msgattachment)), file=sys.stderr)
-
-                       msg.attach(msgattachment)
-
-               uniquer = {}
-               for key in recipients:
-                       uniquer[key] = True
-               if len(ccrecipients):
-                       for key in ccrecipients:
-                               uniquer[key] = True
-               if len(bccrecipients):
-                       for key in bccrecipients:
-                               uniquer[key] = True
-               truerecipients = uniquer.keys()
-
-               if dbg:
-                       print(("PyMailSMTPService recipients are: ", 
truerecipients), file=sys.stderr)
-
-               self.server.sendmail(sendermail, truerecipients, 
msg.as_string())
+    def __init__( self, ctx ):
+        self.ctx = ctx
+        self.listeners = []
+        self.supportedtypes = ('Insecure', 'Ssl')
+        self.server = None
+        self.connectioncontext = None
+        self.notify = EventObject(self)
+        if dbg:
+            print("PyMailSMTPService init", file=sys.stderr)
+            print("python version is: " + sys.version, file=sys.stderr)
+    def addConnectionListener(self, xListener):
+        if dbg:
+            print("PyMailSMTPService addConnectionListener", file=sys.stderr)
+        self.listeners.append(xListener)
+    def removeConnectionListener(self, xListener):
+        if dbg:
+            print("PyMailSMTPService removeConnectionListener", 
file=sys.stderr)
+        self.listeners.remove(xListener)
+    def getSupportedConnectionTypes(self):
+        if dbg:
+            print("PyMailSMTPService getSupportedConnectionTypes", 
file=sys.stderr)
+        return self.supportedtypes
+    def connect(self, xConnectionContext, xAuthenticator):
+        self.connectioncontext = xConnectionContext
+        if dbg:
+            print("PyMailSMTPService connect", file=sys.stderr)
+        server = xConnectionContext.getValueByName("ServerName").strip()
+        if dbg:
+            print("ServerName: " + server, file=sys.stderr)
+        port = int(xConnectionContext.getValueByName("Port"))
+        if dbg:
+            print("Port: " + str(port), file=sys.stderr)
+        tout = xConnectionContext.getValueByName("Timeout")
+        if dbg:
+            print(isinstance(tout,int), file=sys.stderr)
+        if not isinstance(tout,int):
+            tout = _GLOBAL_DEFAULT_TIMEOUT
+        if dbg:
+            print("Timeout: " + str(tout), file=sys.stderr)
+        connectiontype = xConnectionContext.getValueByName("ConnectionType")
+        if dbg:
+            print("ConnectionType: " + connectiontype, file=sys.stderr)
+        tlscontext = prepareTLSContext(self, self.ctx, connectiontype.upper() 
== 'SSL' or port == 465)
+        if port == 465:
+            self.server = smtplib.SMTP_SSL(server, port, timeout=tout, 
context=tlscontext)
+        else:
+            self.server = smtplib.SMTP(server, port,timeout=tout)
+
+        if dbg:
+            self.server.set_debuglevel(1)
+
+        if connectiontype.upper() == 'SSL' and port != 465:
+            # STRIPTLS: smtplib raises an exception if result is not 220
+            self.server.starttls(context=tlscontext)
+
+        user = xAuthenticator.getUserName()
+        password = xAuthenticator.getPassword()
+        if user != '':
+            if dbg:
+                print("Logging in, username of: " + user, file=sys.stderr)
+            self.server.login(user, password)
+
+        for listener in self.listeners:
+            listener.connected(self.notify)
+    def disconnect(self):
+        if dbg:
+            print("PyMailSMTPService disconnect", file=sys.stderr)
+        if self.server:
+            self.server.quit()
+            self.server = None
+        for listener in self.listeners:
+            listener.disconnected(self.notify)
+    def isConnected(self):
+        if dbg:
+            print("PyMailSMTPService isConnected", file=sys.stderr)
+        return self.server != None
+    def getCurrentConnectionContext(self):
+        if dbg:
+            print("PyMailSMTPService getCurrentConnectionContext", 
file=sys.stderr)
+        return self.connectioncontext
+    def sendMailMessage(self, xMailMessage):
+        COMMASPACE = ', '
+
+        if dbg:
+            print("PyMailSMTPService sendMailMessage", file=sys.stderr)
+        recipients = xMailMessage.getRecipients()
+        sendermail = xMailMessage.SenderAddress
+        sendername = xMailMessage.SenderName
+        subject = xMailMessage.Subject
+        ccrecipients = xMailMessage.getCcRecipients()
+        bccrecipients = xMailMessage.getBccRecipients()
+        if dbg:
+            print("PyMailSMTPService subject: " + subject, file=sys.stderr)
+            print("PyMailSMTPService from:  " + sendername, file=sys.stderr)
+            print("PyMailSMTPService from:  " + sendermail, file=sys.stderr)
+            print("PyMailSMTPService send to: %s" % (recipients,), 
file=sys.stderr)
+
+        attachments = xMailMessage.getAttachments()
+
+        textmsg = Message()
+
+        content = xMailMessage.Body
+        flavors = content.getTransferDataFlavors()
+        if dbg:
+            print("PyMailSMTPService flavors len: %d" % (len(flavors),), 
file=sys.stderr)
+
+        #Use first flavor that's sane for an email body
+        for flavor in flavors:
+            if flavor.MimeType.find('text/html') != -1 or 
flavor.MimeType.find('text/plain') != -1:
+                if dbg:
+                    print("PyMailSMTPService mimetype is: " + flavor.MimeType, 
file=sys.stderr)
+                textbody = content.getTransferData(flavor)
+
+                if len(textbody):
+                    mimeEncoding = re.sub("charset=.*", "charset=UTF-8", 
flavor.MimeType)
+                    if mimeEncoding.find('charset=UTF-8') == -1:
+                        mimeEncoding = mimeEncoding + "; charset=UTF-8"
+                    textmsg['Content-Type'] = mimeEncoding
+                    textmsg['MIME-Version'] = '1.0'
+
+                    try:
+                        #it's a string, get it as utf-8 bytes
+                        textbody = textbody.encode('utf-8')
+                    except:
+                        #it's a bytesequence, get raw bytes
+                        textbody = textbody.value
+                    textbody = textbody.decode('utf-8')
+                    c = Charset('utf-8')
+                    c.body_encoding = QP
+                    textmsg.set_payload(textbody, c)
+
+                break
+
+        if (len(attachments)):
+            msg = MIMEMultipart()
+            msg.epilogue = ''
+            msg.attach(textmsg)
+        else:
+            msg = textmsg
+
+        hdr = Header(sendername, 'utf-8')
+        hdr.append('<'+sendermail+'>','us-ascii')
+        msg['Subject'] = subject
+        msg['From'] = hdr
+        msg['To'] = COMMASPACE.join(recipients)
+        if len(ccrecipients):
+            msg['Cc'] = COMMASPACE.join(ccrecipients)
+        if xMailMessage.ReplyToAddress != '':
+            msg['Reply-To'] = xMailMessage.ReplyToAddress
+
+        mailerstring = "LibreOffice via Caolan's mailmerge component"
+        try:
+            ctx = uno.getComponentContext()
+            aConfigProvider = 
ctx.ServiceManager.createInstance("com.sun.star.configuration.ConfigurationProvider")
+            prop = uno.createUnoStruct('com.sun.star.beans.PropertyValue')
+            prop.Name = "nodepath"
+            prop.Value = "/org.openoffice.Setup/Product"
+            aSettings = 
aConfigProvider.createInstanceWithArguments("com.sun.star.configuration.ConfigurationAccess",
+                    (prop,))
+            mailerstring = aSettings.getByName("ooName") + " " + \
+                    aSettings.getByName("ooSetupVersion") + " via Caolan's 
mailmerge component"
+        except:
+            pass
+
+        msg['X-Mailer'] = mailerstring
+        msg['Date'] = formatdate(localtime=True)
+
+        for attachment in attachments:
+            content = attachment.Data
+            flavors = content.getTransferDataFlavors()
+            flavor = flavors[0]
+            ctype = flavor.MimeType
+            maintype, subtype = ctype.split('/', 1)
+            msgattachment = MIMEBase(maintype, subtype)
+            data = content.getTransferData(flavor)
+            msgattachment.set_payload(data.value)
+            encode_base64(msgattachment)
+            fname = attachment.ReadableName
+            try:
+                msgattachment.add_header('Content-Disposition', 'attachment', \
+                        filename=fname)
+            except:
+                msgattachment.add_header('Content-Disposition', 'attachment', \
+                        filename=('utf-8','',fname))
+            if dbg:
+                print(("PyMailSMTPService attachmentheader: ", 
str(msgattachment)), file=sys.stderr)
+
+            msg.attach(msgattachment)
+
+        uniquer = {}
+        for key in recipients:
+            uniquer[key] = True
+        if len(ccrecipients):
+            for key in ccrecipients:
+                uniquer[key] = True
+        if len(bccrecipients):
+            for key in bccrecipients:
+                uniquer[key] = True
+        truerecipients = uniquer.keys()
+
+        if dbg:
+            print(("PyMailSMTPService recipients are: ", truerecipients), 
file=sys.stderr)
+
+        self.server.sendmail(sendermail, truerecipients, msg.as_string())
 
 class PyMailIMAPService(unohelper.Base, XMailService):
-       def __init__( self, ctx ):
-               self.ctx = ctx
-               self.listeners = []
-               self.supportedtypes = ('Insecure', 'Ssl')
-               self.server = None
-               self.connectioncontext = None
-               self.notify = EventObject(self)
-               if dbg:
-                       print("PyMailIMAPService init", file=sys.stderr)
-       def addConnectionListener(self, xListener):
-               if dbg:
-                       print("PyMailIMAPService addConnectionListener", 
file=sys.stderr)
-               self.listeners.append(xListener)
-       def removeConnectionListener(self, xListener):
-               if dbg:
-                       print("PyMailIMAPService removeConnectionListener", 
file=sys.stderr)
-               self.listeners.remove(xListener)
-       def getSupportedConnectionTypes(self):
-               if dbg:
-                       print("PyMailIMAPService getSupportedConnectionTypes", 
file=sys.stderr)
-               return self.supportedtypes
-       def connect(self, xConnectionContext, xAuthenticator):
-               if dbg:
-                       print("PyMailIMAPService connect", file=sys.stderr)
-
-               self.connectioncontext = xConnectionContext
-               server = xConnectionContext.getValueByName("ServerName")
-               if dbg:
-                       print(server, file=sys.stderr)
-               port = int(xConnectionContext.getValueByName("Port"))
-               if dbg:
-                       print(port, file=sys.stderr)
-               connectiontype = 
xConnectionContext.getValueByName("ConnectionType")
-               if dbg:
-                       print(connectiontype, file=sys.stderr)
-               tlscontext = prepareTLSContext(self, self.ctx, 
connectiontype.upper() == 'SSL')
-               print("BEFORE", file=sys.stderr)
-               if connectiontype.upper() == 'SSL':
-                       self.server = imaplib.IMAP4_SSL(server, port, 
ssl_context=tlscontext)
-               else:
-                       self.server = imaplib.IMAP4(server, port)
-               print("AFTER", file=sys.stderr)
-
-               user = xAuthenticator.getUserName()
-               password = xAuthenticator.getPassword()
-               if user != '':
-                       if dbg:
-                               print("Logging in, username of: " + user, 
file=sys.stderr)
-                       self.server.login(user, password)
-
-               for listener in self.listeners:
-                       listener.connected(self.notify)
-       def disconnect(self):
-               if dbg:
-                       print("PyMailIMAPService disconnect", file=sys.stderr)
-               if self.server:
-                       self.server.logout()
-                       self.server = None
-               for listener in self.listeners:
-                       listener.disconnected(self.notify)
-       def isConnected(self):
-               if dbg:
-                       print("PyMailIMAPService isConnected", file=sys.stderr)
-               return self.server != None
-       def getCurrentConnectionContext(self):
-               if dbg:
-                       print("PyMailIMAPService getCurrentConnectionContext", 
file=sys.stderr)
-               return self.connectioncontext
+    def __init__( self, ctx ):
+        self.ctx = ctx
+        self.listeners = []
+        self.supportedtypes = ('Insecure', 'Ssl')
+        self.server = None
+        self.connectioncontext = None
+        self.notify = EventObject(self)
+        if dbg:
+            print("PyMailIMAPService init", file=sys.stderr)
+    def addConnectionListener(self, xListener):
+        if dbg:
+            print("PyMailIMAPService addConnectionListener", file=sys.stderr)
+        self.listeners.append(xListener)
+    def removeConnectionListener(self, xListener):
+        if dbg:
+            print("PyMailIMAPService removeConnectionListener", 
file=sys.stderr)
+        self.listeners.remove(xListener)
+    def getSupportedConnectionTypes(self):
+        if dbg:
+            print("PyMailIMAPService getSupportedConnectionTypes", 
file=sys.stderr)
+        return self.supportedtypes
+    def connect(self, xConnectionContext, xAuthenticator):
+        if dbg:
+            print("PyMailIMAPService connect", file=sys.stderr)
+
+        self.connectioncontext = xConnectionContext
+        server = xConnectionContext.getValueByName("ServerName")
+        if dbg:
+            print(server, file=sys.stderr)
+        port = int(xConnectionContext.getValueByName("Port"))
+        if dbg:
+            print(port, file=sys.stderr)
+        connectiontype = xConnectionContext.getValueByName("ConnectionType")
+        if dbg:
+            print(connectiontype, file=sys.stderr)
+        tlscontext = prepareTLSContext(self, self.ctx, connectiontype.upper() 
== 'SSL')
+        print("BEFORE", file=sys.stderr)
+        if connectiontype.upper() == 'SSL':
+            self.server = imaplib.IMAP4_SSL(server, port, 
ssl_context=tlscontext)
+        else:
+            self.server = imaplib.IMAP4(server, port)
+        print("AFTER", file=sys.stderr)
+
+        user = xAuthenticator.getUserName()
+        password = xAuthenticator.getPassword()
+        if user != '':
+            if dbg:
+                print("Logging in, username of: " + user, file=sys.stderr)
+            self.server.login(user, password)
+
+        for listener in self.listeners:
+            listener.connected(self.notify)
+    def disconnect(self):
+        if dbg:
+            print("PyMailIMAPService disconnect", file=sys.stderr)
+        if self.server:
+            self.server.logout()
+            self.server = None
+        for listener in self.listeners:
+            listener.disconnected(self.notify)
+    def isConnected(self):
+        if dbg:
+            print("PyMailIMAPService isConnected", file=sys.stderr)
+        return self.server != None
+    def getCurrentConnectionContext(self):
+        if dbg:
+            print("PyMailIMAPService getCurrentConnectionContext", 
file=sys.stderr)
+        return self.connectioncontext
 
 class PyMailPOP3Service(unohelper.Base, XMailService):
-       def __init__( self, ctx ):
-               self.ctx = ctx
-               self.listeners = []
-               self.supportedtypes = ('Insecure', 'Ssl')
-               self.server = None
-               self.connectioncontext = None
-               self.notify = EventObject(self)
-               if dbg:
-                       print("PyMailPOP3Service init", file=sys.stderr)
-       def addConnectionListener(self, xListener):
-               if dbg:
-                       print("PyMailPOP3Service addConnectionListener", 
file=sys.stderr)
-               self.listeners.append(xListener)
-       def removeConnectionListener(self, xListener):
-               if dbg:
-                       print("PyMailPOP3Service removeConnectionListener", 
file=sys.stderr)
-               self.listeners.remove(xListener)
-       def getSupportedConnectionTypes(self):
-               if dbg:
-                       print("PyMailPOP3Service getSupportedConnectionTypes", 
file=sys.stderr)
-               return self.supportedtypes
-       def connect(self, xConnectionContext, xAuthenticator):
-               if dbg:
-                       print("PyMailPOP3Service connect", file=sys.stderr)
-
-               self.connectioncontext = xConnectionContext
-               server = xConnectionContext.getValueByName("ServerName")
-               if dbg:
-                       print(server, file=sys.stderr)
-               port = int(xConnectionContext.getValueByName("Port"))
-               if dbg:
-                       print(port, file=sys.stderr)
-               connectiontype = 
xConnectionContext.getValueByName("ConnectionType")
-               if dbg:
-                       print(connectiontype, file=sys.stderr)
-               tlscontext = prepareTLSContext(self, self.ctx, 
connectiontype.upper() == 'SSL')
-               print("BEFORE", file=sys.stderr)
-               if connectiontype.upper() == 'SSL':
-                       self.server = poplib.POP3_SSL(server, port, 
context=tlscontext)
-               else:
-                       tout = xConnectionContext.getValueByName("Timeout")
-                       if dbg:
-                               print(isinstance(tout,int), file=sys.stderr)
-                       if not isinstance(tout,int):
-                               tout = _GLOBAL_DEFAULT_TIMEOUT
-                       if dbg:
-                               print("Timeout: " + str(tout), file=sys.stderr)
-                       self.server = poplib.POP3(server, port, timeout=tout)
-               print("AFTER", file=sys.stderr)
-
-               user = xAuthenticator.getUserName()
-               password = xAuthenticator.getPassword()
-               if dbg:
-                       print("Logging in, username of: " + user, 
file=sys.stderr)
-               self.server.user(user)
-               self.server.pass_(password)
-
-               for listener in self.listeners:
-                       listener.connected(self.notify)
-       def disconnect(self):
-               if dbg:
-                       print("PyMailPOP3Service disconnect", file=sys.stderr)
-               if self.server:
-                       self.server.quit()
-                       self.server = None
-               for listener in self.listeners:
-                       listener.disconnected(self.notify)
-       def isConnected(self):
-               if dbg:
-                       print("PyMailPOP3Service isConnected", file=sys.stderr)
-               return self.server != None
-       def getCurrentConnectionContext(self):
-               if dbg:
-                       print("PyMailPOP3Service getCurrentConnectionContext", 
file=sys.stderr)
-               return self.connectioncontext
+    def __init__( self, ctx ):
+        self.ctx = ctx
+        self.listeners = []
+        self.supportedtypes = ('Insecure', 'Ssl')
+        self.server = None
+        self.connectioncontext = None
+        self.notify = EventObject(self)
+        if dbg:
+            print("PyMailPOP3Service init", file=sys.stderr)
+    def addConnectionListener(self, xListener):
+        if dbg:
+            print("PyMailPOP3Service addConnectionListener", file=sys.stderr)
+        self.listeners.append(xListener)
+    def removeConnectionListener(self, xListener):
+        if dbg:
+            print("PyMailPOP3Service removeConnectionListener", 
file=sys.stderr)
+        self.listeners.remove(xListener)
+    def getSupportedConnectionTypes(self):
+        if dbg:
+            print("PyMailPOP3Service getSupportedConnectionTypes", 
file=sys.stderr)
+        return self.supportedtypes
+    def connect(self, xConnectionContext, xAuthenticator):
+        if dbg:
+            print("PyMailPOP3Service connect", file=sys.stderr)
+
+        self.connectioncontext = xConnectionContext
+        server = xConnectionContext.getValueByName("ServerName")
+        if dbg:
+            print(server, file=sys.stderr)
+        port = int(xConnectionContext.getValueByName("Port"))
+        if dbg:
+            print(port, file=sys.stderr)
+        connectiontype = xConnectionContext.getValueByName("ConnectionType")
+        if dbg:
+            print(connectiontype, file=sys.stderr)
+        tlscontext = prepareTLSContext(self, self.ctx, connectiontype.upper() 
== 'SSL')
+        print("BEFORE", file=sys.stderr)
+        if connectiontype.upper() == 'SSL':
+            self.server = poplib.POP3_SSL(server, port, context=tlscontext)
+        else:
+            tout = xConnectionContext.getValueByName("Timeout")
+            if dbg:
+                print(isinstance(tout,int), file=sys.stderr)
+            if not isinstance(tout,int):
+                tout = _GLOBAL_DEFAULT_TIMEOUT
+            if dbg:
+                print("Timeout: " + str(tout), file=sys.stderr)
+            self.server = poplib.POP3(server, port, timeout=tout)
+        print("AFTER", file=sys.stderr)
+
+        user = xAuthenticator.getUserName()
+        password = xAuthenticator.getPassword()
+        if dbg:
+            print("Logging in, username of: " + user, file=sys.stderr)
+        self.server.user(user)
+        self.server.pass_(password)
+
+        for listener in self.listeners:
+            listener.connected(self.notify)
+    def disconnect(self):
+        if dbg:
+            print("PyMailPOP3Service disconnect", file=sys.stderr)
+        if self.server:
+            self.server.quit()
+            self.server = None
+        for listener in self.listeners:
+            listener.disconnected(self.notify)
+    def isConnected(self):
+        if dbg:
+            print("PyMailPOP3Service isConnected", file=sys.stderr)
+        return self.server != None
+    def getCurrentConnectionContext(self):
+        if dbg:
+            print("PyMailPOP3Service getCurrentConnectionContext", 
file=sys.stderr)
+        return self.connectioncontext
 
 class PyMailServiceProvider(unohelper.Base, XMailServiceProvider, 
XServiceInfo):
-       def __init__( self, ctx ):
-               if dbg:
-                       print("PyMailServiceProvider init", file=sys.stderr)
-               self.ctx = ctx
-       def create(self, aType):
-               if dbg:
-                       print("PyMailServiceProvider create with", aType, 
file=sys.stderr)
-               if aType == SMTP:
-                       return PyMailSMTPService(self.ctx);
-               elif aType == POP3:
-                       return PyMailPOP3Service(self.ctx);
-               elif aType == IMAP:
-                       return PyMailIMAPService(self.ctx);
-               else:
-                       print("PyMailServiceProvider, unknown TYPE " + aType, 
file=sys.stderr)
-
-       def getImplementationName(self):
-               return g_providerImplName
-
-       def supportsService(self, ServiceName):
-               return 
g_ImplementationHelper.supportsService(g_providerImplName, ServiceName)
-
-       def getSupportedServiceNames(self):
-               return 
g_ImplementationHelper.getSupportedServiceNames(g_providerImplName)
+    def __init__( self, ctx ):
+        if dbg:
+            print("PyMailServiceProvider init", file=sys.stderr)
+        self.ctx = ctx
+    def create(self, aType):
+        if dbg:
+            print("PyMailServiceProvider create with", aType, file=sys.stderr)
+        if aType == SMTP:
+            return PyMailSMTPService(self.ctx);
+        elif aType == POP3:
+            return PyMailPOP3Service(self.ctx);
+        elif aType == IMAP:
+            return PyMailIMAPService(self.ctx);
+        else:
+            print("PyMailServiceProvider, unknown TYPE " + aType, 
file=sys.stderr)
+
+    def getImplementationName(self):
+        return g_providerImplName
+
+    def supportsService(self, ServiceName):
+        return g_ImplementationHelper.supportsService(g_providerImplName, 
ServiceName)
+
+    def getSupportedServiceNames(self):
+        return 
g_ImplementationHelper.getSupportedServiceNames(g_providerImplName)
 
 class PyMailMessage(unohelper.Base, XMailMessage):
-       def __init__( self, ctx, sTo='', sFrom='', Subject='', Body=None, 
aMailAttachment=None ):
-               if dbg:
-                       print("PyMailMessage init", file=sys.stderr)
-               self.ctx = ctx
-
-               self.recipients = [sTo]
-               self.ccrecipients = []
-               self.bccrecipients = []
-               self.aMailAttachments = []
-               if aMailAttachment != None:
-                       self.aMailAttachments.append(aMailAttachment)
-
-               self.SenderName, self.SenderAddress = parseaddr(sFrom)
-               self.ReplyToAddress = sFrom
-               self.Subject = Subject
-               self.Body = Body
-               if dbg:
-                       print("post PyMailMessage init", file=sys.stderr)
-       def addRecipient( self, recipient ):
-               if dbg:
-                       print("PyMailMessage.addRecipient: " + recipient, 
file=sys.stderr)
-               self.recipients.append(recipient)
-       def addCcRecipient( self, ccrecipient ):
-               if dbg:
-                       print("PyMailMessage.addCcRecipient: " + ccrecipient, 
file=sys.stderr)
-               self.ccrecipients.append(ccrecipient)
-       def addBccRecipient( self, bccrecipient ):
-               if dbg:
-                       print("PyMailMessage.addBccRecipient: " + bccrecipient, 
file=sys.stderr)
-               self.bccrecipients.append(bccrecipient)
-       def getRecipients( self ):
-               if dbg:
-                       print("PyMailMessage.getRecipients: " + 
str(self.recipients), file=sys.stderr)
-               return tuple(self.recipients)
-       def getCcRecipients( self ):
-               if dbg:
-                       print("PyMailMessage.getCcRecipients: " + 
str(self.ccrecipients), file=sys.stderr)
-               return tuple(self.ccrecipients)
-       def getBccRecipients( self ):
-               if dbg:
-                       print("PyMailMessage.getBccRecipients: " + 
str(self.bccrecipients), file=sys.stderr)
-               return tuple(self.bccrecipients)
-       def addAttachment( self, aMailAttachment ):
-               if dbg:
-                       print("PyMailMessage.addAttachment", file=sys.stderr)
-               self.aMailAttachments.append(aMailAttachment)
-       def getAttachments( self ):
-               if dbg:
-                       print("PyMailMessage.getAttachments", file=sys.stderr)
-               return tuple(self.aMailAttachments)
-
-       def getImplementationName(self):
-               return g_messageImplName
-
-       def supportsService(self, ServiceName):
-               return 
g_ImplementationHelper.supportsService(g_messageImplName, ServiceName)
-
-       def getSupportedServiceNames(self):
-               return 
g_ImplementationHelper.getSupportedServiceNames(g_messageImplName)
+    def __init__( self, ctx, sTo='', sFrom='', Subject='', Body=None, 
aMailAttachment=None ):
+        if dbg:
+            print("PyMailMessage init", file=sys.stderr)
+        self.ctx = ctx
+
+        self.recipients = [sTo]
+        self.ccrecipients = []
+        self.bccrecipients = []
+        self.aMailAttachments = []
+        if aMailAttachment != None:
+            self.aMailAttachments.append(aMailAttachment)
+
+        self.SenderName, self.SenderAddress = parseaddr(sFrom)
+        self.ReplyToAddress = sFrom
+        self.Subject = Subject
+        self.Body = Body
+        if dbg:
+            print("post PyMailMessage init", file=sys.stderr)
+    def addRecipient( self, recipient ):
+        if dbg:
+            print("PyMailMessage.addRecipient: " + recipient, file=sys.stderr)
+        self.recipients.append(recipient)
+    def addCcRecipient( self, ccrecipient ):
+        if dbg:
+            print("PyMailMessage.addCcRecipient: " + ccrecipient, 
file=sys.stderr)
+        self.ccrecipients.append(ccrecipient)
+    def addBccRecipient( self, bccrecipient ):
+        if dbg:
+            print("PyMailMessage.addBccRecipient: " + bccrecipient, 
file=sys.stderr)
+        self.bccrecipients.append(bccrecipient)
+    def getRecipients( self ):
+        if dbg:
+            print("PyMailMessage.getRecipients: " + str(self.recipients), 
file=sys.stderr)
+        return tuple(self.recipients)
+    def getCcRecipients( self ):
+        if dbg:
+            print("PyMailMessage.getCcRecipients: " + str(self.ccrecipients), 
file=sys.stderr)
+        return tuple(self.ccrecipients)
+    def getBccRecipients( self ):
+        if dbg:
+            print("PyMailMessage.getBccRecipients: " + 
str(self.bccrecipients), file=sys.stderr)
+        return tuple(self.bccrecipients)
+    def addAttachment( self, aMailAttachment ):
+        if dbg:
+            print("PyMailMessage.addAttachment", file=sys.stderr)
+        self.aMailAttachments.append(aMailAttachment)
+    def getAttachments( self ):
+        if dbg:
+            print("PyMailMessage.getAttachments", file=sys.stderr)
+        return tuple(self.aMailAttachments)
+
+    def getImplementationName(self):
+        return g_messageImplName
+
+    def supportsService(self, ServiceName):
+        return g_ImplementationHelper.supportsService(g_messageImplName, 
ServiceName)
+
+    def getSupportedServiceNames(self):
+        return 
g_ImplementationHelper.getSupportedServiceNames(g_messageImplName)
 
 g_ImplementationHelper.addImplementation( \
-       PyMailServiceProvider, g_providerImplName,
-               ("com.sun.star.mail.MailServiceProvider",),)
+        PyMailServiceProvider, g_providerImplName,
+                ("com.sun.star.mail.MailServiceProvider",),)
 g_ImplementationHelper.addImplementation( \
-       PyMailMessage, g_messageImplName,
-               ("com.sun.star.mail.MailMessage",),)
+        PyMailMessage, g_messageImplName,
+                ("com.sun.star.mail.MailMessage",),)
 
 # vim: set shiftwidth=4 softtabstop=4 expandtab:

Reply via email to