String fieldName = String.valueOf(INews.STATE);
Occur occur = condition.getSpecifier().isNegation() ? Occur.MUST_NOT : Occur.SHOULD;
EnumSet<INews.State> newsStates = (EnumSet<State>) condition.getValue();
for (INews.State state : newsStates) {
String value = String.valueOf(state.ordinal());
TermQuery stateQuery = new TermQuery(new Term(fieldName, value));
statesQuery.add(new BooleanClause(stateQuery, occur));
}
/* Check if the match-all-docs query is required */
if (condition.getSpecifier().isNegation())