def doIt(_): try: self.model = self.domain.get(self.params.model) except DomainKeyError: raise errors.AttributeKeyException, self.params.model if not IModel.providedBy(self.model): raise errors.NotAModelError, self.params.model self.message = self.params.message.getMessage(self.domain) if self.params.text_attribute is None: self.params.text_attribute = 'text' try: self.text = self.message[self.params.text_attribute].value() except AttributeNotFoundError: raise errors.MessageAttributeKeyException, self.params.text_attribute
def analyze(self, domain, message, attribute="text"): """ Анализ сообщения. @param domain: домен, относительно которого идёт анализ @type domain: L{IDomain} @param message: сообщение @type message: L{spamfighter.interfaces.IMessage} @param attribute: имя атрибута сообщения, содержащего текст @type attribute: C{str} """ try: self.model = domain.get(self.modelName) except DomainKeyError: raise errors.AttributeKeyException, self.modelName if not IModel.providedBy(self.model): raise errors.NotAModelError, self.modelName try: self.text = message[attribute].value() except AttributeNotFoundError: raise errors.MessageAttributeKeyException, attribute