Recebimento de E-Mails

Utilizado para que módulos dos sistemas possam receber e-mails de uma determinada conta de e-mails especificada como parâmetro da arquitetura.

Implementação

Foram criadas as classes br.ufrn.arq.email.ReceiveMail e br.ufrn.arq.email.ReceivedEmail. A primeira tem como função baixar os e-mails de uma determinada conta de e-mails definida através de parâmetros. Ela contém um método estático chamado receive(), que retorna uma lista de objetos da segunda classe, ReceivedEmail. Esta classe guarda as informações de cada e-mail recebido.

As informações dos e-mails disponíveis na classe ReceivedEmail são:

Atributo Informação
contentType Content type do e-mail, se texto ou HTML
subject Assunto do e-mail
message Texto do e-mail
from Remetente do e-mail
attachments Anexos do e-mail

Para o recebimento de e-mails, conforme foi explicado anteriormente, foram utilizados três parâmetros: HOST_RECEBIMENTO_EMAIL (3_1_31), USERNAME_RECEBIMENTO_EMAIL (3_1_32) e PASSWORD_RECEBIMENTO_EMAIL (3_1_33). O primeiro contém o host do servidor IMAP para recebimento de e-mails; o segundo contem o nome de usuário da conta de e-mail a ter os emails baixados e o terceiro contém a senha desse usuário.

Utilização

Para utilizar o serviço de recebimento de e-mails, basta chamar o método estático receive(), da classe ReceiveMail e utilizar as informações da lista de ReceivedEmails retornada. Para o método funcionar, é necessário definir os parâmetros citados acima.

Exemplo

List<ReceivedEmail> emailsRecebidos = ReceiveMail.receive();