diff options
Diffstat (limited to 'plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/util/CheckedOptions.java')
-rw-r--r-- | plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/util/CheckedOptions.java | 93 |
1 files changed, 48 insertions, 45 deletions
diff --git a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/util/CheckedOptions.java b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/util/CheckedOptions.java index 98a6751aa61..5e24238559d 100644 --- a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/util/CheckedOptions.java +++ b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/search/util/CheckedOptions.java @@ -10,74 +10,77 @@ *******************************************************************************/ package org.eclipse.osee.orcs.db.internal.search.util; -import org.eclipse.osee.framework.core.enums.CaseType; -import org.eclipse.osee.framework.core.enums.MatchTokenCountType; -import org.eclipse.osee.framework.core.enums.OptionVisitor; import org.eclipse.osee.framework.core.enums.QueryOption; -import org.eclipse.osee.framework.core.enums.TokenDelimiterMatch; -import org.eclipse.osee.framework.core.enums.TokenOrderType; /** * @author John Misinco */ -public class CheckedOptions implements OptionVisitor { +public class CheckedOptions { - private TokenOrderType orderType; - private CaseType caseType; - private MatchTokenCountType countType; - private TokenDelimiterMatch delimiter; + private QueryOption orderType; + private QueryOption caseType; + private QueryOption countType; + private QueryOption delimiter; + private QueryOption exists; - public CheckedOptions() { - initialize(); + public CheckedOptions(QueryOption... options) { + initialize(options); } - private void initialize() { - orderType = TokenOrderType.ANY_ORDER; - caseType = CaseType.IGNORE_CASE; - countType = MatchTokenCountType.IGNORE_TOKEN_COUNT; - delimiter = TokenDelimiterMatch.ANY; + private void initialize(QueryOption... options) { + orderType = QueryOption.TOKEN_MATCH_ORDER__ANY; + caseType = QueryOption.CASE__IGNORE; + countType = QueryOption.TOKEN_COUNT__IGNORE; + delimiter = QueryOption.TOKEN_DELIMITER__ANY; + exists = QueryOption.EXISTANCE__EXISTS; + + for (QueryOption option : options) { + switch (option) { + case CASE__MATCH: + case CASE__IGNORE: + caseType = option; + break; + case EXISTANCE__EXISTS: + case EXISTANCE__NOT_EXISTS: + exists = option; + break; + case TOKEN_COUNT__MATCH: + case TOKEN_COUNT__IGNORE: + countType = option; + break; + case TOKEN_DELIMITER__EXACT: + case TOKEN_DELIMITER__WHITESPACE: + case TOKEN_DELIMITER__ANY: + delimiter = option; + break; + case TOKEN_MATCH_ORDER__ANY: + case TOKEN_MATCH_ORDER__MATCH: + orderType = option; + break; + default: + + } + } } - public TokenOrderType getOrderType() { + public QueryOption getOrderType() { return orderType; } - public CaseType getCaseType() { + public QueryOption getCaseType() { return caseType; } - public MatchTokenCountType getCountType() { + public QueryOption getCountType() { return countType; } - public TokenDelimiterMatch getDelimiter() { + public QueryOption getDelimiter() { return delimiter; } - public void accept(QueryOption... options) { - initialize(); - for (QueryOption option : options) { - option.accept(this); - } + public QueryOption getExists() { + return exists; } - @Override - public void asCaseType(CaseType option) { - caseType = option; - } - - @Override - public void asTokenOrderType(TokenOrderType option) { - orderType = option; - } - - @Override - public void asMatchTokenCountType(MatchTokenCountType option) { - countType = option; - } - - @Override - public void asTokenDelimiterMatch(TokenDelimiterMatch delimiter) { - this.delimiter = delimiter; - } };
\ No newline at end of file |