All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.lambkit.component.shiro.directives.ShiroHasPermissionDirective Maven / Gradle / Ivy

The newest version!
/**
 * Copyright (c) 2015-2017, Henry Yang 杨勇 ([email protected]).
 * 

* Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at *

* http://www.apache.org/licenses/LICENSE-2.0 *

* Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.lambkit.component.shiro.directives; import com.jfinal.template.Env; import com.jfinal.template.expr.ast.Expr; import com.jfinal.template.expr.ast.ExprList; import com.jfinal.template.stat.Scope; import com.lambkit.common.util.ArrayUtils; import com.lambkit.web.directive.annotation.JFinalDirective; import com.jfinal.template.io.Writer; /** * 有相应权限 * #shiroHasPermission(permissionName) * body * #end */ @JFinalDirective("shiroHasPermission") public class ShiroHasPermissionDirective extends ShiroDirectiveBase { private Expr[] exprs; public void setExprList(ExprList exprList) { exprs = exprList.getExprArray(); } public void exec(Env env, Scope scope, Writer writer) { if (getSubject() != null && ArrayUtils.isNotEmpty(exprs)) if (getSubject().isPermitted(exprs[0].toString())) stat.exec(env, scope, writer); } public boolean hasEnd() { return true; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy