blob: a69a76c2ea8e94cbd488a06504d128f5543c96e7 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2012, 2020 Original authors and others.
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Original authors and others - initial API and implementation
******************************************************************************/
package org.eclipse.nebula.widgets.nattable.filterrow;
/**
* Represents the result of parsing the filter text typed into the text box in
* the filter row.
*/
public class ParseResult {
/**
* Comparison tokens
*/
public enum MatchType {
EQUAL("="), //$NON-NLS-1$
NOT_EQUAL("<>"), //$NON-NLS-1$
GREATER_THAN(">"), //$NON-NLS-1$
GREATER_THAN_OR_EQUAL(">="), //$NON-NLS-1$
LESS_THAN_OR_EQUAL("<="), //$NON-NLS-1$
LESS_THAN("<"), //$NON-NLS-1$
NONE(""); //$NON-NLS-1$
private String symbol;
private MatchType(String symbol) {
this.symbol = symbol;
}
public String getSymbol() {
return this.symbol;
}
public static MatchType parse(String symbol) {
if ("=".equals(symbol)) { //$NON-NLS-1$
return EQUAL;
} else if ("<>".equals(symbol)) { //$NON-NLS-1$
return NOT_EQUAL;
} else if (">".equals(symbol)) { //$NON-NLS-1$
return GREATER_THAN;
} else if ("<".equals(symbol)) { //$NON-NLS-1$
return LESS_THAN;
} else if (">=".equals(symbol)) { //$NON-NLS-1$
return GREATER_THAN_OR_EQUAL;
} else if ("<=".equals(symbol)) { //$NON-NLS-1$
return LESS_THAN_OR_EQUAL;
}
return NONE;
}
};
private MatchType matchType = MatchType.NONE;
private String valueToMatch;
public MatchType getMatchOperation() {
return this.matchType;
}
public String getValueToMatch() {
return this.valueToMatch;
}
public void setMatchType(MatchType matchType) {
this.matchType = matchType;
}
public void setValueToMatch(String valueToMatch) {
this.valueToMatch = valueToMatch;
}
}