Ricardo Aráoz wrote: > Ok, here is a corrected new version, I hope. > > Kent, the fact that Mensaje.__init__ reads the message configuration is > by design (it's a feature, not a bug ;c) ).
You misunderstood my suggestion. I would add a method to Mensaje that creates the email.MIMEMultipart.MIMEMultipart() currently done by Correo.__init__(). Almost every line of Correo.__init__() is reading data from attributes of mensaje. This is a code smell called Feature Envy and is a clear sign that the code is in the wrong place. In Mensaje you could have def createMessage(self): messg = email.MIMEMultipart.MIMEMultipart() messg['From'] = self.De messg['To'] = self.Para messg['Subject'] = self.Encabezado messg['Reply-To'] = self.ResponderA messg.preamble = 'This is a multi-part message in MIME format' messg.attach(email.MIMEText.MIMEText(self.html, 'html')) Then in Correo.__init__() you would have self.messg = mensaje.createMessage() It doesn't change the functionality but it is a better design. Kent _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor