package org.ovirt.engine.core.searchbackend; import java.util.Collections; public class AdUserConditionFieldAutoCompleter extends BaseConditionFieldAutoCompleter { public static final String NAME = "NAME"; public static final String USERNAME = "USERNAME"; public static final String ALLNAMES = "ALLNAMES"; public static final String LASTNAME = "LASTNAME"; public static final String DEPARTMENT = "DEPARTMENT"; public static final String TITLE = "TITLE"; public static final String LDAP = "LDAP"; public AdUserConditionFieldAutoCompleter() { // Building the basic vervs Dict verbs.add(NAME); verbs.add(USERNAME); verbs.add(ALLNAMES); // Building the types dict getTypeDictionary().put(NAME, String.class); getTypeDictionary().put(USERNAME, String.class); // building the ColumnName Dict columnNameDict.put(NAME, "$GIVENNAME"); columnNameDict.put(USERNAME, "$SAMACCOUNTNAME"); if (LDAP.equalsIgnoreCase(SyntaxCheckerFactory.getConfigAuthenticationMethod())) { verbs.add(LASTNAME); verbs.add(DEPARTMENT); verbs.add(TITLE); getTypeDictionary().put(LASTNAME, String.class); getTypeDictionary().put(DEPARTMENT, String.class); getTypeDictionary().put(TITLE, String.class); columnNameDict.put(LASTNAME, "$SN"); columnNameDict.put(DEPARTMENT, "$DEPARTMENT"); columnNameDict.put(TITLE, "$TITLE"); } // Building the autoCompletion Dict buildCompletions(); // Building the validation dict for (String key : verbs) { validationDict.put(key, Collections.singletonList(validCharacters)); } } @Override public IAutoCompleter getFieldRelationshipAutoCompleter(String fieldName) { return StringConditionRelationAutoCompleter.INSTANCE; } }