package hu.sch.services; import hu.sch.domain.Group; import hu.sch.domain.user.User; import java.util.Date; import java.util.List; import javax.ejb.Local; /** * Search functionality. * * @author tomi */ @Local public interface SearchManagerLocal { /** * Search users based on the following properties: - full name - email - * nick name - screen name (username) - room number * * @param keyword the keyword to search for * @return the list of users that matches. */ List<User> searchUsers(String keyword, int page, int perPage); /** * Lists all the users whose birtday is the given date. * * @param date * @return */ List<User> searchBirthdayUsers(Date date); /** * Search groups by their name and shortname * @param term * @param page * @param perPage * @return */ List<Group> searchGroups(String term, int page, int perPage); /** * Count the users for a given term. * * @param term * @return */ long countUsers(String term); /** * Count the group for a given term. * * @param term * @return */ long countGroup(String term); }