Package com.adito.security.forms

Source Code of com.adito.security.forms.ShowAvailableRolesForm

        /*
*  Adito
*
*  Copyright (C) 2003-2006 3SP LTD. All Rights Reserved
*
*  This program is free software; you can redistribute it and/or
*  modify it under the terms of the GNU General Public License
*  as published by the Free Software Foundation; either version 2 of
*  the License, or (at your option) any later version.
*  This program is distributed in the hope that it will be useful,
*  but WITHOUT ANY WARRANTY; without even the implied warranty of
*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
*  GNU General Public License for more details.
*
*  You should have received a copy of the GNU General Public
*  License along with this program; if not, write to the Free Software
*  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
     
package com.adito.security.forms;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;

import javax.servlet.http.HttpSession;

import com.adito.security.Role;
import com.adito.security.RoleItem;
import com.adito.security.RoleItemModel;
import com.adito.table.forms.AbstractPagerForm;

/**
* Implementation of {@link AbstractPagerForm} that is used to display a list of
* configured <i>Groups</i> (previously known as <i>Roles</i>) and to allow
* the administrator to create, edit and view (if the underlying user database
* supports it).
*/
public class ShowAvailableRolesForm extends AbstractPagerForm<RoleItem> {
    /**
     * Constructor.
     */
    public ShowAvailableRolesForm() {
        super(new RoleItemModel());
    }

    /**
     * Initialise the form.
     *
     * @param roles
     * @param session session
     * @throws Exception on any error
     */
    public void initialize(Role[] roles, HttpSession session) throws Exception {
        initialize(toRoleItems(roles), session);
    }
   
    private Collection<RoleItem> toRoleItems(Role[] roles) {
        if (roles == null) {
            return Collections.emptyList();
        }
        Collection<RoleItem> items = new ArrayList<RoleItem>();
        for (Role role : roles) {
            items.add(new RoleItem(role));
        }
        return items;
    }
   
    /**
     * @param session
     * @throws Exception
     */
    public void reInitialize(HttpSession session) throws Exception {
        List<RoleItem> items = getModel().getItems();
        initialize(items, session);
    }
   
    private void initialize(Collection<RoleItem> roles, HttpSession session) throws Exception {
        super.initialize(session, "role");
        for (RoleItem roleItem : roles) {
            getModel().addItem(roleItem);
        }
        getPager().rebuild(getFilterText());
    }
}
TOP

Related Classes of com.adito.security.forms.ShowAvailableRolesForm

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.