Olá pessoal, estou fazendo um cliente Webmail e estou com algumas dificuldades no que diz respeito a mensagens não lidas.
Seguinte, eu consigo pegar as mensagens do servidor e mostrá-las na tela, porém eu preciso diferenciar as mensagens “não lidas” das restantes só que a classe Flag não possui nehuma flag “UNREAD”, por exemplo. Então criei um método para separá-las:
public static boolean msgNaoLida(Message mensagem) throws MessagingException
{
boolean naoLida = false;
Flags flags = mensagem.getFlags();
Flags.Flag[] sf = flags.getSystemFlags();
for (int k = 0; k < sf.length; k++)
{
if ((sf[k] != Flags.Flag.ANSWERED) && (sf[k] != Flags.Flag.DRAFT) && (sf[k] != Flags.Flag.FLAGGED) && (sf[k] != Flags.Flag.SEEN))
{
naoLida = true;
}
}
return(naoLida);
}
O meu problema é que boa parte das mensagens que está vindo do servidor não possui nenhuma marcação de flag e com isso o método que fiz não funciona.
Gostaria de ver com vcs se tem alguma outra forma de saber se a mensagem é “não lida” ou o porquê que as mensagens estão sem marcação de flag e como faço para corrigir isso.
Desde já muito obrigado.