ApptentiveLog.v(INTERACTIONS, " - </%s>", operator.name()); return false;
@Override public boolean evaluate(FieldManager fieldManager, IndentPrinter printer) { // to compress logs we 'inline' single $and operators boolean printOperator = !LogicalOperator.$and.equals(operator) || children.size() > 1; if (printOperator) { printer.print("- %s:", operator.name()); printer.startBlock(); } try { return evaluateOperator(fieldManager, printer); } finally { if (printOperator) { printer.endBlock(); } } }
public static Clause parse(String key, Object value) throws JSONException { if (key == null) { // The Root object, and objects inside arrays should be treated as $and. key = LogicalOperator.$and.name(); } key = key.trim(); LogicalOperator operator = LogicalOperator.parse(key); switch (operator) { case $or: return new LogicalClause(key, value); case $and: return new LogicalClause(key, value); case $not: return new LogicalClause(key, value); default: { return new ConditionalClause(key, value); } } }