Example usage for org.apache.shiro.authz.permission DomainPermission DomainPermission

List of usage examples for org.apache.shiro.authz.permission DomainPermission DomainPermission

Introduction

In this page you can find the example usage for org.apache.shiro.authz.permission DomainPermission DomainPermission.

Prototype

public DomainPermission(String actions) 

Source Link

Usage

From source file:org.mobicents.servlet.restcomm.entities.shiro.Realm.java

License:Open Source License

private void loadSecurityRoles(final Configuration configuration) {
    @SuppressWarnings("unchecked")
    final List<String> roleNames = (List<String>) configuration.getList("role[@name]");
    final int numberOfRoles = roleNames.size();
    if (numberOfRoles > 0) {
        for (int roleIndex = 0; roleIndex < numberOfRoles; roleIndex++) {
            StringBuilder buffer = new StringBuilder();
            buffer.append("role(").append(roleIndex).append(")").toString();
            final String prefix = buffer.toString();
            final String name = configuration.getString(prefix + "[@name]");
            @SuppressWarnings("unchecked")
            final List<String> permissions = configuration.getList(prefix + ".permission");
            final int numberOfPermissions = permissions.size();
            if (name != null) {
                if (numberOfPermissions > 0) {
                    final SimpleRole role = new SimpleRole(name);
                    for (int permissionIndex = 0; permissionIndex < numberOfPermissions; permissionIndex++) {
                        buffer = new StringBuilder();
                        buffer.append(prefix).append(".permission(").append(permissionIndex).append(")");
                        final Permission permission = new DomainPermission(buffer.toString());
                        role.add(permission);
                    }//from w  ww. ja va  2s .co  m
                    roles.put(name, role);
                }
            }
        }
    }
}