.. java:import:: java.util Set .. java:import:: java.util HashSet .. java:import:: org.json JSONArray Permissions =========== .. java:package:: io.aalam.common :noindex: .. java:type:: public class Permissions This class defines the permissions for urls and will an object of this class will be used for every URL registration. Fields ------ condition ^^^^^^^^^ .. java:field:: String condition :outertype: Permissions deny_anon ^^^^^^^^^ .. java:field:: boolean deny_anon :outertype: Permissions deny_exc ^^^^^^^^ .. java:field:: Set deny_exc :outertype: Permissions log ^^^ .. java:field:: static final Logger log :outertype: Permissions permissions ^^^^^^^^^^^ .. java:field:: String[] permissions :outertype: Permissions Constructors ------------ Permissions ^^^^^^^^^^^ .. java:constructor:: public Permissions() :outertype: Permissions Intialize an empty permissions object Methods ------- all ^^^ .. java:method:: public static Permissions all(String... args) :outertype: Permissions Initialize a new permissions object with a condition 'all'. :param args: List of permissions in the format "permission-group-name/permission-name" any ^^^ .. java:method:: public static Permissions any(String... args) :outertype: Permissions Initialize a new permissions object with a condition 'all'. :param args: List of permissions in the format "permission-group-name/permission-name" breakPermission ^^^^^^^^^^^^^^^ .. java:method:: public static String[] breakPermission(String permission) :outertype: Permissions Breaks the fully qualified permission name. :param permission: - Fully qualiified permission name :return: list of elements in the permission name check ^^^^^ .. java:method:: public boolean check(HttpRequest request) :outertype: Permissions This method is used internall in the framework and the application has no use for this method. deny_anon ^^^^^^^^^ .. java:method:: public Permissions deny_anon() :outertype: Permissions Deny anonymous requests on a URL :return: Returns 'this' object so that you can chain like Permissions.any("pg1/p1", "pg2/p2").deny_anon() deny_exc ^^^^^^^^ .. java:method:: public Permissions deny_exc(String... args) :outertype: Permissions Deny request from any source except the apps mentioned in the args :param args: List of apps in the format 'provider-code/app-code' :return: Returns 'this' object so that you can chain like Permissions.any("pg1/p1", "pg2/p2").deny_anon().deny_exc('aalam/base') framePermission ^^^^^^^^^^^^^^^ .. java:method:: public static String framePermission(String provider, String app, String permissionGroup, String permission) :outertype: Permissions Returns the fully qualified permission name. Fully qualified permission name will identify a permission to which app and which permission group in the app that this permission belongs to.