package fi.otavanopisto.muikku.plugins.seeker.defaultproviders; import java.util.List; import javax.inject.Inject; import fi.otavanopisto.muikku.plugins.search.SearchResultProcessor; import fi.otavanopisto.muikku.plugins.seeker.SeekerResult; import fi.otavanopisto.muikku.schooldata.entity.User; import fi.otavanopisto.muikku.search.SearchProvider; import fi.otavanopisto.muikku.search.SearchResult; import fi.otavanopisto.muikku.session.SessionController; public class UserSeekerResultProvider extends AbstractSeekerResultProvider { @Inject private SearchResultProcessor searchResultProcessor; @Inject private SessionController sessionController; @Override public List<SeekerResult> search(String searchTerm) { if (!sessionController.isLoggedIn()) return null; SearchProvider elasticSearchProvider = getProvider("elastic-search"); if (elasticSearchProvider != null) { String[] fields = new String[] { "firstName", "lastName", "nickName"}; SearchResult result = elasticSearchProvider.search(searchTerm, fields, 0, 10, User.class); return searchResultProcessor.process(result); } return null; } @Override public String getName() { return "Users"; } @Override public int getWeight() { return 1; } }