From 438aa6c9c7a414416e99357954d2bb1e65b0f2ea Mon Sep 17 00:00:00 2001 From: lxnay Date: Fri, 24 Oct 2008 09:58:30 +0000 Subject: [PATCH] Entropy/EmailSender: - add support for specifying SMTP host and port PackageInterface: - check if download path is available on the db when requesting a fetch action, if not, warn the user and step over git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2560 cd1c1023-2f26-0410-ae45-c471fc1f0318 --- libraries/entropy.py | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/libraries/entropy.py b/libraries/entropy.py index 94466ed23..dba461ee5 100644 --- a/libraries/entropy.py +++ b/libraries/entropy.py @@ -5268,6 +5268,15 @@ class PackageInterface: return rc return 0 + def fetch_not_available_step(self): + self.Entropy.updateProgress( + blue(_("Fetch for the chosen package is not available, unknown error.")), + importance = 1, + type = "info", + header = red(" ## ") + ) + return 0 + def vanished_step(self): self.Entropy.updateProgress( blue(_("Installed package in queue vanished, skipping.")), @@ -5517,6 +5526,12 @@ class PackageInterface: rc = self.vanished_step() return rc + if self.infoDict.has_key('fetch_not_available'): + self.xterm_title += ' Fetch not available' + self.Entropy.setTitle(self.xterm_title) + rc = self.fetch_not_available_step() + return rc + rc = 0 for step in self.infoDict['steps']: self.xterm_title = xterm_header @@ -5872,6 +5887,11 @@ class PackageInterface: self.infoDict['atom'] = dbconn.retrieveAtom(idpackage) self.infoDict['checksum'] = dbconn.retrieveDigest(idpackage) self.infoDict['download'] = dbconn.retrieveDownloadURL(idpackage) + + if not self.infoDict['download']: + self.infoDict['fetch_not_available'] = True + return 0 + self.infoDict['verified'] = False self.infoDict['steps'] = [] if not repository.endswith(etpConst['packagesext']): @@ -34330,6 +34350,8 @@ class EmailSender: from email import encoders from email.message import Message import mimetypes + self.smtphost = 'localhost' + self.smtpport = 25 self.text = MIMEText self.mimefile = MIMEBase self.audio = MIMEAudio @@ -34341,7 +34363,7 @@ class EmailSender: self.Message = Message def smtp_send(self, sender, destinations, message): - s = self.smtplib.SMTP() + s = self.smtplib.SMTP(self.smtphost,self.smtpport) s.connect() s.sendmail(sender, destinations, message) s.close()