class Attribute implements Serializable, Cloneable {

    public boolean isPermitted(Request request) {
        if (roles == null || roles.isEmpty()) {
            return true;
        }

        boolean retValue = false;

        for (Iterator<String> roleIt = roles.iterator(); roleIt.hasNext()
                && !retValue;) {
            retValue = request.isUserInRole(roleIt.next());
        }

        return retValue;
    }

    public  Attribute();
    public  Attribute(Object value);
    public  Attribute(Attribute attribute);
    public  Attribute(Object value, String role);
    public  Attribute(Object value, Expression expression, String role, String rendererName);

}