resourcehelper.java
来自「anewssystem新闻发布系统集成使用了spring hibernate f」· Java 代码 · 共 98 行
JAVA
98 行
package anni.asecurity.helper;
import java.util.List;
import java.util.Map;
import anni.asecurity.domain.Resource;
import anni.asecurity.domain.Role;
import anni.asecurity.manager.ResourceManager;
import anni.asecurity.manager.RoleManager;
import anni.core.dao.support.Page;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/**
* ��Դ������.
*
* @author Lingo
* @since 2007-09-09
*/
public class ResourceHelper {
/** * logger. */
private Log logger = LogFactory.getLog(ResourceHelper.class);
/** * resourceManager. */
private ResourceManager resourceManager = null;
/** * roleManager. */
private RoleManager roleManager = null;
/** * @param resourceManager ResourceManager. */
public void setResourceManager(ResourceManager resourceManager) {
this.resourceManager = resourceManager;
}
/** * @param roleManager RoleManager. */
public void setRoleManager(RoleManager roleManager) {
this.roleManager = roleManager;
}
/**
* ���������ҳ��ѯ.
*
* @param conditions ���
* @return ��ҳ���
*/
public Page pagedQuery(Map conditions) {
logger.info(conditions);
int start = 0;
int pageSize = 10;
int pageNo = (start / pageSize) + 1;
try {
start = Integer.parseInt(conditions.get("start").toString());
pageSize = Integer.parseInt(conditions.get("limit").toString());
pageNo = (start / pageSize) + 1;
} catch (Exception ex) {
logger.info(ex);
}
return resourceManager.pagedQuery("from Resource", pageNo, pageSize);
}
/**
* ��ݽ�ɫ����ҳ��ѯ��Դ.
*
* @param conditions ���
* @return ��ҳ���
*/
public Page getResourceForRolePage(Map conditions) {
long roleId = -1L;
try {
roleId = Long.parseLong(conditions.get("id").toString());
} catch (Exception ex) {
logger.info(ex);
}
Page page = pagedQuery(conditions);
List<Resource> list = (List<Resource>) page.getResult();
Role role = roleManager.get(roleId);
if (role != null) {
for (Resource resource : list) {
if (role.getResources().contains(resource)) {
resource.setAuthorized(true);
}
}
}
return page;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?