{
initialize();
Filter filter = filterExpr != null ? m_helper.filter(filterExpr) : null;
Resource[] resources;
MapToDictionary dict = new MapToDictionary(null);
Repository[] repos = listRepositories();
List matchList = new ArrayList();
for (int repoIdx = 0; (repos != null) && (repoIdx < repos.length); repoIdx++)
{
resources = repos[repoIdx].getResources();
for (int resIdx = 0; (resources != null) && (resIdx < resources.length); resIdx++)
{
dict.setSourceMap(resources[resIdx].getProperties());
if (filter == null || filter.match(dict))
{
matchList.add(resources[resIdx]);
}
}