package org.ovirt.engine.core.bll.adbroker; import java.util.regex.Matcher; import java.util.regex.Pattern; import org.ovirt.engine.core.common.businessentities.ad_groups; import org.ovirt.engine.core.compat.LogCompat; import org.ovirt.engine.core.compat.LogFactoryCompat; public class LUSearchGroupsByQueryCommand extends LUBrokerCommandBase { private static LogCompat log = LogFactoryCompat.getLog(LUSearchGroupsByQueryCommand.class); protected String getQuery() { // TODO:rgolan return ""; //return ((LdapSearchByQueryParameters) getParameters()).getQuery(); } public LUSearchGroupsByQueryCommand(LdapSearchByQueryParameters parameters) { super(parameters); } @Override protected void ExecuteQuery() { log.debug("ExecuteQuery Entry, Query=" + getQuery()); java.util.ArrayList<ad_groups> groups = new java.util.ArrayList<ad_groups>(); Pattern p = queryToPattern(getQuery(), "name"); for (ad_groups group : getAdGroups()) { Matcher mName = p.matcher(group.getname()); if (p == null || mName.matches()) { log.debug("sid=" + group.getid()); groups.add(group); } } log.debug("ExecuteQuery Return, groups.size = " + groups.size()); setReturnValue(groups); } }