package org.agnitas.service; import java.io.Serializable; import java.util.concurrent.Callable; import org.agnitas.beans.BlackListEntry; import org.agnitas.beans.impl.PaginatedListImpl; import org.agnitas.dao.BlacklistDao; /** * wrapper for a long sql query. It will be used for asynchronous tasks * @author ms * */ public class BlacklistQueryWorker implements Callable<PaginatedListImpl<BlackListEntry>>, Serializable { private static final long serialVersionUID = -3047853894976634885L; private BlacklistDao blacklistDao; private String sort; private String direction; private int page; private int rownums; private int companyID; public BlacklistQueryWorker(BlacklistDao dao, int companyID, String sort, String direction, int page, int rownums ) { this.blacklistDao = dao; this.sort = sort; this.direction = direction; this.page = page; this.rownums = rownums; this.companyID = companyID; } public PaginatedListImpl<BlackListEntry> call() throws Exception { return blacklistDao.getBlacklistedRecipients(companyID, sort, direction, page, rownums); } public static long getSerialVersionUID() { return serialVersionUID; } public BlacklistDao getBlacklistDao() { return blacklistDao; } public String getSort() { return sort; } public String getDirection() { return direction; } public int getPage() { return page; } public int getRownums() { return rownums; } public int getCompanyID() { return companyID; } }