/** * Defines filter for BCC field. * * @param bccAddress BCC address. * @return this */ public EmailFilter bcc(final String bccAddress) { final SearchTerm toTerm = new RecipientStringTerm(RecipientType.BCC, bccAddress); concat(toTerm); return this; }
return recipient(rterm.getRecipientType(), rterm.getPattern(), charset);
public boolean match(Message message) { try { Address from[] = message.getRecipients(type); for (int i = 0; i < from.length; i++) { Address address = from[i]; if (match(address)) { return true; } } return false; } catch (MessagingException e) { return false; } }
return recipient(rterm.getRecipientType(), rterm.getPattern(), charset);
public boolean match(Message message) { try { Address from[] = message.getRecipients(type); if (from == null) { return false; } for (int i = 0; i < from.length; i++) { Address address = from[i]; if (match(address)) { return true; } } return false; } catch (MessagingException e) { return false; } }
/** * append IMAP search term information from a RecipientStringTerm item. * * @param term The source RecipientStringTerm * @param charset target charset for the search information (can be null). */ protected void appendRecipient(RecipientStringTerm term, String charset) throws MessagingException { appendAtom(recipientType(term.getRecipientType())); // this may require encoding appendString(term.getPattern(), charset); }
/** * Defines filter for TO field. * * @param toAddress The TO address. * @return this */ public EmailFilter to(final String toAddress) { final SearchTerm toTerm = new RecipientStringTerm(RecipientType.TO, toAddress); concat(toTerm); return this; }
return recipient(rterm.getRecipientType(), rterm.getPattern(), charset);
/** * Defines filter for CC field. * * @param ccAddress CC addreses. * @return this */ public EmailFilter cc(final String ccAddress) { final SearchTerm toTerm = new RecipientStringTerm(RecipientType.CC, ccAddress); concat(toTerm); return this; }
return recipient(rterm.getRecipientType(), rterm.getPattern(), charset);
/** * Set filter on receipient. * * @param receipient * messages will be filtered on receipient */ public void setReceipientTerm( String receipient ) { if ( !Utils.isEmpty( receipient ) ) { addSearchTerm( new RecipientStringTerm( Message.RecipientType.TO, receipient ) ); } }
return recipient(rterm.getRecipientType(), rterm.getPattern(), charset);
@Test void testAnd2() { final EmailFilter emailFilter = filter() .from(FROM) .to(TO); final SearchTerm expected = new AndTerm( new FromStringTerm(FROM), new RecipientStringTerm(Message.RecipientType.TO, TO) ); assertEquals(expected, emailFilter.searchTerm); }
return recipient(rterm.getRecipientType(), rterm.getPattern(), charset);
@Test void testOr2Alt() { final EmailFilter emailFilter = filter().or() .from(FROM) .to(TO); final SearchTerm expected = new OrTerm( new FromStringTerm(FROM), new RecipientStringTerm(Message.RecipientType.TO, TO) ); assertEquals(expected, emailFilter.searchTerm); }
return recipient(rterm.getRecipientType(), rterm.getPattern(), charset);
@Test void testOr2() { final EmailFilter emailFilter = filter().or( filter().from(FROM), filter().to(TO) ); final SearchTerm expected = new OrTerm( new FromStringTerm(FROM), new RecipientStringTerm(Message.RecipientType.TO, TO) ); assertEquals(expected, emailFilter.searchTerm); }
return recipient(rterm.getRecipientType(), rterm.getPattern(), charset);
@Test void testAndOrNot() { final EmailFilter emailFilter = filter() .from(FROM) .to(TO) .or() .not() .subject(SUBJECT) .from(FROM_2); final SearchTerm expected = new OrTerm( new OrTerm( new AndTerm( new FromStringTerm(FROM), new RecipientStringTerm(Message.RecipientType.TO, TO) ), new NotTerm( new SubjectTerm(SUBJECT) ) ), new FromStringTerm(FROM_2) ); assertEquals(expected, emailFilter.searchTerm); }
@Test void testAndOrNotAlt() { final EmailFilter emailFilter = filter() .or( filter().and( filter().from(FROM), filter().to(TO) ), filter().not(filter().subject(SUBJECT)), filter().from(FROM_2) ); final SearchTerm expected = new OrTerm( new SearchTerm[]{ new AndTerm( new FromStringTerm(FROM), new RecipientStringTerm(Message.RecipientType.TO, TO) ), new NotTerm( new SubjectTerm(SUBJECT) ), new FromStringTerm(FROM_2) } ); assertEquals(expected, emailFilter.searchTerm); }