/* ================================================================== * Created [2011-11-03 下午11:32:55] by Jon.King * ================================================================== * TSS * ================================================================== * mailTo:jinpujun@hotmail.com * Copyright (c) Jon.King, 2009-2012 * ================================================================== */ package com.jinhe.tss.um.permission.filter; import java.util.List; import com.jinhe.tss.core.exception.BusinessException; import com.jinhe.tss.um.permission.IResource; import com.jinhe.tss.um.permission.PermissionHelper; /** * 资源修改时的权限检查: 判断用户是否对当前节点有编辑权限 * * IResource update***( IResource obj ) */ public class PermissionFilter4Update implements IPermissionFilter { @Override public void doFilter(Object args[], Object returnValue, PermissionTag tag, PermissionHelper helper) { String application = tag.application(); String resourceType = tag.resourceType(); String updateOperation = tag.operation(); IResource resource = (IResource) args[0]; List<Long> permitedResourceIds = helper.getResourceIdsByOperation(application, resourceType, updateOperation); if( !permitedResourceIds.contains(resource.getId()) ) { throw new BusinessException("保存失败,您对保存的【名为:" + resource.getName() + " 的节点】下没有修改权限!"); } } }