Вы можете реализовать новый подкласс SearchTerm, который делает это, но в любом случае, возможно, придется получить сообщение.Я не думаю, что вы можете избежать этого.
public class ContentTypeTerm extends SearchTerm {
@Override
public boolean match(Message msg) {
try {
return msg.isMimeType("multipart/*");
} catch (MessagingException ex) {
throw new RuntimeException(ex.getMessage());
}
}
}
ОБНОВЛЕНИЕ
Вы могли бы на самом деле использовать HeaderTerm
:
SearchTerm[] terms = {
searchMessageByDate(fromDate, toDate),
new HeaderTerm("Content-Type", "multipart/.*")
};
SearchTerm andTerm = new AndTerm(terms);