public final class ANDTerm extends SearchTerm<SearchTerm<?>[]>
Constructor and Description |
---|
ANDTerm(SearchTerm<?> firstTerm,
SearchTerm<?> secondTerm)
Initializes a new
ANDTerm |
Modifier and Type | Method and Description |
---|---|
void |
accept(SearchTermVisitor visitor)
Handles given visitor for this search term.
|
void |
addMailField(java.util.Collection<MailField> col)
Adds the addressed MailField to specified collection
|
boolean |
containsWildcard()
Checks if this search term's pattern contains wildcard characters
'*' and '?' |
SearchTerm<?> |
filter(java.util.Set<java.lang.Class<? extends SearchTerm>> filterSet)
Generates a search term with the unsupported search terms specified through
filter removed. |
javax.mail.search.SearchTerm |
getJavaMailSearchTerm()
Generates the corresponding JavaMail instance of
SearchTerm from this search term |
javax.mail.search.SearchTerm |
getNonWildcardJavaMailSearchTerm()
Generates the corresponding instance of
SearchTerm from this search term without any wildcard characters. |
SearchTerm<?>[] |
getPattern()
Gets the search terms that should be linked with an AND as an array of
SearchTerm with length 2 . |
boolean |
isAscii()
Checks if this search term's pattern only consists of ASCII 7 bit characters.
|
boolean |
matches(MailMessage mailMessage)
Checks if specified mail message matches this search term
|
boolean |
matches(javax.mail.Message msg)
Checks if given message matches this search term
|
void |
setFirstTerm(SearchTerm<?> firstTerm)
Sets the first search term
|
void |
setSecondTerm(SearchTerm<?> secondTerm)
Sets the second search term
|
filter
public ANDTerm(SearchTerm<?> firstTerm, SearchTerm<?> secondTerm)
ANDTerm
public void accept(SearchTermVisitor visitor)
SearchTerm
accept
in class SearchTerm<SearchTerm<?>[]>
visitor
- The visitorpublic SearchTerm<?>[] getPattern()
SearchTerm
with length 2
.getPattern
in class SearchTerm<SearchTerm<?>[]>
public void setFirstTerm(SearchTerm<?> firstTerm)
firstTerm
- The first search termpublic void setSecondTerm(SearchTerm<?> secondTerm)
secondTerm
- The second search termpublic void addMailField(java.util.Collection<MailField> col)
SearchTerm
addMailField
in class SearchTerm<SearchTerm<?>[]>
col
- The collection which gathers addressed fieldspublic javax.mail.search.SearchTerm getJavaMailSearchTerm()
SearchTerm
SearchTerm
from this search termgetJavaMailSearchTerm
in class SearchTerm<SearchTerm<?>[]>
SearchTerm
public javax.mail.search.SearchTerm getNonWildcardJavaMailSearchTerm()
SearchTerm
SearchTerm
from this search term without any wildcard characters.
This is useful to preselect possible positives and to manually filtering out false positives.
getNonWildcardJavaMailSearchTerm
in class SearchTerm<SearchTerm<?>[]>
SearchTerm
without any wildcard characters.SearchTerm.containsWildcard()
public boolean matches(javax.mail.Message msg) throws com.openexchange.exception.OXException
SearchTerm
matches
in class SearchTerm<SearchTerm<?>[]>
msg
- The message to checktrue
if message matches this search term; otherwise false
com.openexchange.exception.OXException
- If check failspublic boolean matches(MailMessage mailMessage) throws com.openexchange.exception.OXException
SearchTerm
matches
in class SearchTerm<SearchTerm<?>[]>
mailMessage
- The mail message to checktrue
if specified mail message matches this search term; otherwise false
com.openexchange.exception.OXException
- If checking mail message against search term failspublic SearchTerm<?> filter(java.util.Set<java.lang.Class<? extends SearchTerm>> filterSet)
SearchTerm
filter
removed.
For each search term contained in this search term the following rule is applied:
ORTerm
or ANDTerm
replace the unsupported with:
BooleanTerm.FALSE
for ORTerm
and
BooleanTerm.TRUE
for ANDTerm
BooleanTerm.FALSE
for both ORTerm
and ANDTerm
BooleanTerm.FALSE
Note: Only a shallow copy is generated; meaning further working on this search term may influence return value's search term.
filter
in class SearchTerm<SearchTerm<?>[]>
filterSet
- The filter set containing classes unsupported search termspublic boolean isAscii()
SearchTerm
This method implies that this search is some kind of string search term. Returns true
if not appropriate.
isAscii
in class SearchTerm<SearchTerm<?>[]>
true
if search term's pattern only consists of ASCII 7 bit characters; otherwise false
public boolean containsWildcard()
SearchTerm
'*'
and '?'
.
This method implies that this search is some kind of string search term. Returns false
if not appropriate.
containsWildcard
in class SearchTerm<SearchTerm<?>[]>
true
if this search term's pattern contains wildcard characters; otherwise false