protected void checkRequirePermissions(Account account, Method method) { Collection<String> permissions = SecurityUtil.collectPermissions(method); if (!permissions.isEmpty()) { account.checkPermissions(permissions); } }
protected void checkRequireRoles(Account account, Method method) { Collection<String> roles = SecurityUtil.collectRoles(method); if (!roles.isEmpty()) { account.checkRoles(roles); } }
public static Collection<String> collectPermissions(Method method) { List<String> permissions = new ArrayList<>(); permissions.addAll(collectPermissions(method.getAnnotation(RequirePermissions.class))); if (method.isAnnotationPresent(RequirePermission.class)) { permissions.add(method.getAnnotation(RequirePermission.class).value()); } permissions.addAll(collectPermissions(method.getDeclaringClass().getAnnotation(RequirePermissions.class))); if (method.getDeclaringClass().isAnnotationPresent(RequirePermission.class)) { permissions.add(method.getDeclaringClass().getAnnotation(RequirePermission.class).value()); } return permissions; }
public static Collection<String> collectRoles(Method method) { List<String> roles = new ArrayList<>(); roles.addAll(collectRoles(method.getAnnotation(RequireRoles.class))); if (method.isAnnotationPresent(RequireRole.class)) { roles.add(method.getAnnotation(RequireRole.class).value()); } roles.addAll(collectRoles(method.getDeclaringClass().getAnnotation(RequireRoles.class))); if (method.getDeclaringClass().isAnnotationPresent(RequireRole.class)) { roles.add(method.getDeclaringClass().getAnnotation(RequireRole.class).value()); } return roles; }
public static Collection<String> collectPermissions(Method method) { List<String> permissions = new ArrayList<>(); permissions.addAll(collectPermissions(method.getAnnotation(RequirePermissions.class))); if (method.isAnnotationPresent(RequirePermission.class)) { permissions.add(method.getAnnotation(RequirePermission.class).value()); } permissions.addAll(collectPermissions(method.getDeclaringClass().getAnnotation(RequirePermissions.class))); if (method.getDeclaringClass().isAnnotationPresent(RequirePermission.class)) { permissions.add(method.getDeclaringClass().getAnnotation(RequirePermission.class).value()); } return permissions; }
public static Collection<String> collectRoles(Method method) { List<String> roles = new ArrayList<>(); roles.addAll(collectRoles(method.getAnnotation(RequireRoles.class))); if (method.isAnnotationPresent(RequireRole.class)) { roles.add(method.getAnnotation(RequireRole.class).value()); } roles.addAll(collectRoles(method.getDeclaringClass().getAnnotation(RequireRoles.class))); if (method.getDeclaringClass().isAnnotationPresent(RequireRole.class)) { roles.add(method.getDeclaringClass().getAnnotation(RequireRole.class).value()); } return roles; }
protected void checkRequirePermissions(Account account, Method method) { Collection<String> permissions = SecurityUtil.collectPermissions(method); if (!permissions.isEmpty()) { account.checkPermissions(permissions); } }
protected void checkRequireRoles(Account account, Method method) { Collection<String> roles = SecurityUtil.collectRoles(method); if (!roles.isEmpty()) { account.checkRoles(roles); } }
@Override public Object invoke(MethodInvocation invocation) throws Throwable { Collection<String> permissions = SecurityUtil.collectPermissions(invocation.getMethod()); Account account = getAccount(); account.checkPermissions(permissions); return invocation.proceed(); }
@Override public Object invoke(MethodInvocation invocation) throws Throwable { Collection<String> roles = SecurityUtil.collectRoles(invocation.getMethod()); Account account = getAccount(); account.checkRoles(roles); return invocation.proceed(); }
@Override public Object invoke(MethodInvocation invocation) throws Throwable { Collection<String> permissions = SecurityUtil.collectPermissions(invocation.getMethod()); Account account = getAccount(); account.checkPermissions(permissions); return invocation.proceed(); }
@Override public Object invoke(MethodInvocation invocation) throws Throwable { Collection<String> roles = SecurityUtil.collectRoles(invocation.getMethod()); Account account = getAccount(); account.checkRoles(roles); return invocation.proceed(); }
@Override public Object invoke(MethodInvocation invocation) throws Throwable { Collection<String> permissions = SecurityUtil.collectPermissions(invocation.getMethod()); Account account = getAccount(); account.checkPermissions(permissions); return invocation.proceed(); }
@Override public Object invoke(MethodInvocation invocation) throws Throwable { Collection<String> roles = SecurityUtil.collectRoles(invocation.getMethod()); Account account = getAccount(); account.checkRoles(roles); return invocation.proceed(); }
@Override public Object invoke(MethodInvocation invocation) throws Throwable { Collection<String> permissions = SecurityUtil.collectPermissions(invocation.getMethod()); Account account = getAccount(); account.checkPermissions(permissions); return invocation.proceed(); }
@Override public Object invoke(MethodInvocation invocation) throws Throwable { Collection<String> roles = SecurityUtil.collectRoles(invocation.getMethod()); Account account = getAccount(); account.checkRoles(roles); return invocation.proceed(); }