def validate(self):

        if not (self.recipients or self.cc or self.bcc):
            raise InvalidMessage("No recipients have been added")

        if not self.body and not self.html:
            raise InvalidMessage("No body has been set")

        if not self.sender:
            raise InvalidMessage("No sender address has been set")

        if self.is_bad_headers():
            raise BadHeaders
Retrieve an object from S3 using the name of the Key object as the
dataset/ETHPy150Open Pylons/pyramid_mailer/pyramid_mailer/message.py/Message.validate--crossover with--dataset/ETHPy150Open yyuu/botornado/botornado/s3/key.py/AsyncKey.get_contents_as_string