El API JavaMail incluye un mecanismo de filtrado encontrado en el paquete javax.mail.search para construir un SearchTerm.
Una vez construido, podemos solicitarel a una Folder qu� mensajes concuerdan, recuperar un array de objetos Message:
SearchTerm st = ...; Message[] msgs = folder.search(st);
Hay disponibles 22 clases diferentes para ayudarnos a construir un SearchTerm.
- AND (clase AndTerm)
- OR (clase OrTerm)
- NOT (clase NotTerm)
- SENT DATE (clase SentDateTerm)
- CONTENT (clase BodyTerm)
- HEADER (FromTerm / FromStringTerm, RecipientTerm/ RecipientStringTerm, SubjectTerm, etc.)
Esencialmente, construimos una expresi�n l�gica para concordar mensajes, luegos los buscamos. Por ejemplo, el siguiente t�rmino busca los mensajes con uns string (parcial) en el sibject de ADV o un campo "from" de [email protected].
Podr�amos considerar la ejecuci�n peri�dica de esta consulta y borrar autom�ticamente cualquier mensaje devuelto.
SearchTerm st =
new OrTerm(
new SubjectTerm("ADV:"),
new FromStringTerm("[email protected]"));
Message[] msgs = folder.search(st);
�Recursos
Se pueden hacer muchas m�s cosas con el API JavaMail que las descritas aqu�. Podr�s encontrarlas en las sigueintes direcciones: