package org.ovirt.engine.core.bll.adbroker; import java.util.regex.Pattern; import java.util.regex.Matcher; import org.ovirt.engine.core.compat.*; import org.ovirt.engine.core.common.businessentities.*; import org.ovirt.engine.core.utils.jwin32.*; import org.ovirt.engine.core.compat.LogCompat; import org.ovirt.engine.core.compat.LogFactoryCompat; public class LUSearchUserByQueryCommand extends LUSearchGroupsByQueryCommand { private static LogCompat log = LogFactoryCompat.getLog(LUSearchUserByQueryCommand.class); public LUSearchUserByQueryCommand(LdapSearchByQueryParameters parameters) { super(parameters); } @Override protected void ExecuteQuery() { log.debug("ExecuteQuery Entry, Query=" + getQuery()); java.util.ArrayList<AdUser> users = new java.util.ArrayList<AdUser>(); Pattern p = queryToPattern(getQuery(), "givenname"); for (AdUser user : getAdUsers()) { Matcher mName = p.matcher(user.getUserName()); Matcher mFull = p.matcher(user.getName()); if (p == null || mName.matches() || mFull.matches()) { log.debug("sid=" + user.getUserId()); users.add(user); } } log.debug("ExecuteQuery Return, users.size = " + users.size()); setReturnValue(users); } }