You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by sm...@apache.org on 2014/11/11 21:35:20 UTC

[10/27] directory-fortress-commander git commit: change package structure and names, pom improvements, license

http://git-wip-us.apache.org/repos/asf/directory-fortress-commander/blob/547b9ccd/src/main/java/org/openldap/commander/panel/PwPolicyListPanel.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/commander/panel/PwPolicyListPanel.java b/src/main/java/org/openldap/commander/panel/PwPolicyListPanel.java
deleted file mode 100644
index d653cae..0000000
--- a/src/main/java/org/openldap/commander/panel/PwPolicyListPanel.java
+++ /dev/null
@@ -1,310 +0,0 @@
-/*
- * This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2014 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in the file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- */
-
-package org.openldap.commander.panel;
-
-import com.inmethod.grid.IGridColumn;
-import com.inmethod.grid.SizeUnit;
-import com.inmethod.grid.column.PropertyColumn;
-import com.inmethod.grid.treegrid.TreeGrid;
-import org.apache.log4j.Logger;
-import org.apache.wicket.Component;
-import org.apache.wicket.ajax.AjaxRequestTarget;
-import org.apache.wicket.ajax.attributes.AjaxCallListener;
-import org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
-import org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink;
-import org.apache.wicket.event.IEvent;
-import org.apache.wicket.markup.html.form.FormComponentPanel;
-import org.apache.wicket.markup.html.form.TextField;
-import org.apache.wicket.model.IModel;
-import org.apache.wicket.model.PropertyModel;
-import org.openldap.commander.GlobalIds;
-import org.openldap.commander.GlobalUtils;
-import org.openldap.commander.PwPolicyListModel;
-import org.openldap.commander.SaveModelEvent;
-import org.openldap.commander.SelectModelEvent;
-import org.openldap.fortress.rbac.FortEntity;
-import org.openldap.fortress.rbac.PwPolicy;
-import org.apache.wicket.markup.html.form.Form;
-import org.apache.wicket.model.Model;
-import org.openldap.fortress.util.attr.VUtil;
-
-import javax.swing.tree.DefaultMutableTreeNode;
-import javax.swing.tree.DefaultTreeModel;
-import javax.swing.tree.TreeNode;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-/**
- * User: Shawn McKinney
- * Date: 6/12/13
- */
-public class PwPolicyListPanel extends FormComponentPanel
-{
-    private static final Logger log = Logger.getLogger(PwPolicyListPanel.class.getName());
-    private Form listForm;
-    private DefaultTreeModel treeModel;
-    private DefaultMutableTreeNode node;
-    private TreeGrid<DefaultTreeModel, DefaultMutableTreeNode, String> grid;
-    private DefaultMutableTreeNode rootNode;
-    private String searchVal;
-
-    public PwPolicyListPanel(String id)
-    {
-        super(id);
-        PwPolicyListModel policyListModel = new PwPolicyListModel(new PwPolicy(""), GlobalUtils.getRbacSession( this ) );
-        setDefaultModel(policyListModel);
-        List<IGridColumn<DefaultTreeModel, DefaultMutableTreeNode, String>> columns =
-            new ArrayList<IGridColumn<DefaultTreeModel, DefaultMutableTreeNode, String>>();
-        columns.add(new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-            Model.of("Policy Name"), "userObject.name"));
-
-        PropertyColumn minAge = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Min Age"), "userObject.minAge");
-        minAge.setInitialSize(60);
-        columns.add(minAge);
-
-        PropertyColumn maxAge = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Max Age"), "userObject.maxAge");
-        maxAge.setInitialSize(75);
-        columns.add(maxAge);
-
-        PropertyColumn inHistory = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("History"), "userObject.inHistory");
-        inHistory.setInitialSize(50);
-        columns.add(inHistory);
-
-        PropertyColumn minLength = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Min Len"), "userObject.minLength");
-        minLength.setInitialSize(60);
-        columns.add(minLength);
-
-        PropertyColumn expireWarning = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Expire Warning"), "userObject.expireWarning");
-        expireWarning.setInitialSize(115);
-        columns.add(expireWarning);
-
-        PropertyColumn graceLoginLimit = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Grace"), "userObject.graceLoginLimit");
-        graceLoginLimit.setInitialSize(50);
-        columns.add(graceLoginLimit);
-
-        PropertyColumn lockout = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Lockout"), "userObject.lockout");
-        lockout.setInitialSize(60);
-        columns.add(lockout);
-
-        PropertyColumn lockoutDuration = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Lockout Duration"), "userObject.lockoutDuration");
-        lockoutDuration.setInitialSize(125);
-        columns.add(lockoutDuration);
-
-        PropertyColumn maxFailure = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Max Failure"), "userObject.maxFailure");
-        maxFailure.setInitialSize(80);
-        columns.add(maxFailure);
-
-        PropertyColumn failureCountInterval = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Interval"), "userObject.failureCountInterval");
-        failureCountInterval.setInitialSize(60);
-        columns.add(failureCountInterval);
-
-        PropertyColumn mustChange = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Must Change"), "userObject.mustChange");
-        mustChange.setInitialSize(90);
-        columns.add(mustChange);
-
-        PropertyColumn allowUserChange = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Allow Change"), "userObject.allowUserChange");
-        allowUserChange.setInitialSize(95);
-        columns.add(allowUserChange);
-
-        PropertyColumn safeModify = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Safe Modify"), "userObject.safeModify");
-        safeModify.setInitialSize(90);
-        columns.add(safeModify);
-
-/*
-        PropertyColumn checkQuality = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Check Quality"), "userObject.checkQuality");
-        checkQuality.setInitialSize(100);
-        columns.add(checkQuality);
-*/
-
-        List<PwPolicy> policies = (List<PwPolicy>) getDefaultModel().getObject();
-        treeModel = createTreeModel(policies);
-        grid = new TreeGrid<DefaultTreeModel, DefaultMutableTreeNode, String>("policytreegrid", treeModel, columns)
-        {
-            @Override
-            public void selectItem(IModel itemModel, boolean selected)
-            {
-                node = (DefaultMutableTreeNode) itemModel.getObject();
-                if(!node.isRoot())
-                {
-                    PwPolicy policy = (PwPolicy) node.getUserObject();
-                    log.debug("TreeGrid.addGrid.selectItem selected policy =" + policy.getName());
-                    if (super.isItemSelected(itemModel))
-                    {
-                        log.debug("TreeGrid.addGrid.selectItem item is selected");
-                        super.selectItem(itemModel, false);
-                    }
-                    else
-                    {
-                        super.selectItem(itemModel, true);
-                        SelectModelEvent.send(getPage(), this, policy);
-                    }
-                }
-            }
-        };
-        grid.setContentHeight(50, SizeUnit.EM);
-        grid.setAllowSelectMultiple(false);
-        grid.setClickRowToSelect(true);
-        grid.setClickRowToDeselect(false);
-        grid.setSelectToEdit(false);
-        // expand the root node
-        grid.getTreeState().expandNode((TreeNode) treeModel.getRoot());
-        this.listForm = new Form("form");
-        this.listForm.add(grid);
-        grid.setOutputMarkupId(true);
-        TextField searchValFld = new TextField(GlobalIds.SEARCH_VAL, new PropertyModel<String>(this, GlobalIds.SEARCH_VAL));
-        this.listForm.add(searchValFld);
-
-        this.listForm.add(new AjaxSubmitLink(GlobalIds.SEARCH)
-        {
-            @Override
-            protected void onSubmit(AjaxRequestTarget target, Form form)
-            {
-                log.debug(".search onSubmit");
-                info("Searching Policies...");
-                if(!VUtil.isNotNullOrEmpty(searchVal))
-                {
-                    searchVal = "";
-                }
-                PwPolicy srchPolicy = new PwPolicy(searchVal);
-                setDefaultModel(new PwPolicyListModel(srchPolicy, GlobalUtils.getRbacSession( this )));
-                treeModel.reload();
-                rootNode.removeAllChildren();
-                List<PwPolicy> policies = (List<PwPolicy>) getDefaultModelObject();
-                if(VUtil.isNotNullOrEmpty(policies))
-                {
-                    for (PwPolicy policy : policies)
-                        rootNode.add(new DefaultMutableTreeNode(policy));
-                    info("Search returned " + policies.size() + " matching objects");
-                }
-                else
-                {
-                    info("No matching objects found");
-                }
-                target.add(grid);
-            }
-
-            @Override
-            public void onError(AjaxRequestTarget target, Form form)
-            {
-                log.warn(".search.onError");
-                target.add();
-            }
-            @Override
-            protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-            {
-                super.updateAjaxAttributes( attributes );
-                AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                {
-                    @Override
-                    public CharSequence getFailureHandler( Component component )
-                    {
-                        return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                    }
-                };
-                attributes.getAjaxCallListeners().add( ajaxCallListener );
-            }
-        });
-        add(this.listForm);
-    }
-
-    @Override
-    public void onEvent(IEvent event)
-    {
-        if (event.getPayload() instanceof SaveModelEvent)
-        {
-            SaveModelEvent modelEvent = (SaveModelEvent) event.getPayload();
-            switch(modelEvent.getOperation())
-            {
-                case ADD:
-                    add(modelEvent.getEntity());
-                    break;
-                case UPDATE:
-                    modelChanged();
-                    break;
-                case DELETE:
-                    prune();
-                    break;
-                default:
-                    break;
-            }
-            AjaxRequestTarget target = ((SaveModelEvent) event.getPayload()).getAjaxRequestTarget();
-            target.add(grid);
-            log.debug(".onEvent SaveModelEvent: " + target.toString());
-        }
-    }
-
-    private void removeSelectedItems(TreeGrid<DefaultTreeModel, DefaultMutableTreeNode, String> grid)
-    {
-        Collection<IModel<DefaultMutableTreeNode>> selected = grid.getSelectedItems();
-        for (IModel<DefaultMutableTreeNode> model : selected)
-        {
-            DefaultMutableTreeNode node = model.getObject();
-            treeModel.removeNodeFromParent(node);
-            PwPolicy policy = (PwPolicy) node.getUserObject();
-            log.debug(".removeSelectedItems policy node: " + policy.getName());
-            List<PwPolicy> policies = ((List<PwPolicy>) getDefaultModel().getObject());
-            policies.remove(policy.getName());
-        }
-    }
-
-    private DefaultTreeModel createTreeModel(List<PwPolicy> policies)
-    {
-        DefaultTreeModel model;
-        PwPolicy root = new PwPolicy();
-        //root.setName("Policies");
-        rootNode = new DefaultMutableTreeNode(root);
-        model = new DefaultTreeModel(rootNode);
-        if (policies == null)
-            log.debug("no Policies found");
-        else
-        {
-            log.debug("Policies found:" + policies.size());
-            for (PwPolicy policy : policies)
-                rootNode.add(new DefaultMutableTreeNode(policy));
-        }
-        return model;
-    }
-
-    public void add(FortEntity entity)
-    {
-        if (getDefaultModelObject() != null)
-        {
-            List<PwPolicy> policies = ((List<PwPolicy>) getDefaultModelObject());
-            policies.add((PwPolicy) entity);
-            treeModel.insertNodeInto(new DefaultMutableTreeNode(entity), rootNode, policies.size());
-        }
-    }
-
-    public void prune()
-    {
-        removeSelectedItems(grid);
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-fortress-commander/blob/547b9ccd/src/main/java/org/openldap/commander/panel/PwPolicySearchModalPanel.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/commander/panel/PwPolicySearchModalPanel.java b/src/main/java/org/openldap/commander/panel/PwPolicySearchModalPanel.java
deleted file mode 100644
index fadd2d0..0000000
--- a/src/main/java/org/openldap/commander/panel/PwPolicySearchModalPanel.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- * This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2014 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in the file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- */
-package org.openldap.commander.panel;
-
-import java.util.List;
-
-import org.apache.log4j.Logger;
-import org.apache.wicket.ajax.AjaxRequestTarget;
-import org.apache.wicket.ajax.markup.html.AjaxLink;
-import org.apache.wicket.ajax.markup.html.navigation.paging.AjaxPagingNavigator;
-import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
-import org.apache.wicket.markup.html.basic.Label;
-import org.apache.wicket.markup.html.list.ListItem;
-import org.apache.wicket.markup.html.list.PageableListView;
-import org.apache.wicket.markup.html.panel.Panel;
-import org.apache.wicket.model.LoadableDetachableModel;
-import org.apache.wicket.model.PropertyModel;
-import org.apache.wicket.spring.injection.annot.SpringBean;
-import org.openldap.fortress.PwPolicyMgr;
-import org.openldap.fortress.rbac.PwPolicy;
-
-/**
- *
- * @author Shawn McKinney
- * @version $Rev$
- */
-public class PwPolicySearchModalPanel extends Panel
-{
-    @SpringBean
-    private PwPolicyMgr pwPolicyMgr;
-    private static final Logger LOG = Logger.getLogger(PwPolicySearchModalPanel.class.getName());
-    private ModalWindow window;
-    private PwPolicy policySelection;
-    private String policySearchVal;
-
-    /**
-     * @param id
-     */
-    public PwPolicySearchModalPanel( String id, ModalWindow window)
-    {
-        super( id );
-        // TODO: add later:
-        //this.pwPolicyMgr.setAdmin( GlobalUtils.getRbacSession( this ) );
-        this.window = window;
-        loadPanel();
-    }
-
-    public void loadPanel()
-    {
-        LoadableDetachableModel requests = getListViewModel();
-        PageableListView policyView = createListView( requests );
-        add( policyView );
-        add( new AjaxPagingNavigator( "policynavigator", policyView ) );
-    }
-
-    private PageableListView createListView( final LoadableDetachableModel requests )
-    {
-        final PageableListView listView = new PageableListView( "policydataview", requests, 16 )
-        {
-            @Override
-            protected void populateItem( final ListItem item )
-            {
-                final PwPolicy modelObject = ( PwPolicy ) item.getModelObject();
-                item.add( new AjaxLink<Void>( "select" )
-                {
-                    private static final long serialVersionUID = 1L;
-
-                    @Override
-                    public void onClick(AjaxRequestTarget target)
-                    {
-                        policySelection = modelObject;
-                        window.close( target );
-                    }
-                } );
-
-                item.add( new Label( "name", new PropertyModel( item.getModel(), "name" ) ) );
-                item.add( new Label( "minAge", new PropertyModel( item.getModel(), "minAge" ) ) );
-                item.add( new Label( "maxAge", new PropertyModel( item.getModel(), "maxAge" ) ) );
-                item.add( new Label( "inHistory", new PropertyModel( item.getModel(), "inHistory" ) ) );
-                item.add( new Label( "minLength", new PropertyModel( item.getModel(), "minLength" ) ) );
-                item.add( new Label( "expireWarning", new PropertyModel( item.getModel(), "expireWarning" ) ) );
-                item.add( new Label( "graceLoginLimit", new PropertyModel( item.getModel(), "graceLoginLimit" ) ) );
-                item.add( new Label( "lockout", new PropertyModel( item.getModel(), "lockout" ) ) );
-                item.add( new Label( "lockoutDuration", new PropertyModel( item.getModel(), "lockoutDuration" ) ) );
-                item.add( new Label( "maxFailure", new PropertyModel( item.getModel(), "maxFailure" ) ) );
-                item.add( new Label( "failureCountInterval", new PropertyModel( item.getModel(), "failureCountInterval" ) ) );
-                item.add( new Label( "mustChange", new PropertyModel( item.getModel(), "mustChange" ) ) );
-                item.add( new Label( "allowUserChange", new PropertyModel( item.getModel(), "allowUserChange" ) ) );
-                item.add( new Label( "safeModify", new PropertyModel( item.getModel(), "safeModify" ) ) );
-
-            }
-        };
-        return listView;
-    }
-
-    private LoadableDetachableModel getListViewModel()
-    {
-        final LoadableDetachableModel ret = new LoadableDetachableModel()
-        {
-            @Override
-            protected Object load()
-            {
-                List<PwPolicy> policies = null;
-                try
-                {
-                    policySelection = null;
-                    if(policySearchVal == null)
-                        policySearchVal = "";
-                    policies = pwPolicyMgr.search( policySearchVal );
-                }
-                catch ( org.openldap.fortress.SecurityException se )
-                {
-                    String error = "loadPanel caught SecurityException=" + se;
-                    LOG.error( error );
-                }
-                return policies;
-            }
-        };
-        return ret;
-    }
-
-    public PwPolicy getPolicySelection()
-    {
-        return policySelection;
-    }
-
-    public void setSearchVal( String searchVal )
-    {
-        this.policySearchVal = searchVal;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/directory-fortress-commander/blob/547b9ccd/src/main/java/org/openldap/commander/panel/RequestMod.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/commander/panel/RequestMod.java b/src/main/java/org/openldap/commander/panel/RequestMod.java
deleted file mode 100644
index 8a49306..0000000
--- a/src/main/java/org/openldap/commander/panel/RequestMod.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2014 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in the file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- */
-
-package org.openldap.commander.panel;
-
-import java.io.Serializable;
-
-/**
- * @author Shawn McKinney
- * @version $Rev$
- *          Date: 8/11/13
- */
-class RequestMod implements Serializable
-{
-    enum TYPE
-    {
-        ADD,
-        UPDATE,
-        DELETE,
-        UNKNOWN
-    }
-
-    private int index;
-    private TYPE type;
-    private String name;
-    private String value;
-
-    RequestMod( int index, String name, String value )
-    {
-        this.type = type;
-        this.index = index;
-        this.name = name;
-        this.value = value;
-    }
-
-    RequestMod( String name )
-    {
-        this.name = name;
-    }
-
-    public int getIndex()
-    {
-        return index;
-    }
-
-    public TYPE getType()
-    {
-        return type;
-    }
-
-    public void setType( TYPE type )
-    {
-        this.type = type;
-    }
-
-    public void setIndex( int index )
-    {
-        this.index = index;
-
-    }
-
-    public String getValue()
-    {
-        return value;
-    }
-
-    public void setValue( String value )
-    {
-        this.value = value;
-    }
-
-    public String getName()
-    {
-        return name;
-    }
-
-    public void setName( String name )
-    {
-        this.name = name;
-    }
-
-    @Override
-    public boolean equals( Object o )
-    {
-        if ( this == o )
-        {
-            return true;
-        }
-        if ( o == null || getClass() != o.getClass() )
-        {
-            return false;
-        }
-
-        RequestMod that = ( RequestMod ) o;
-
-        if ( !name.equals( that.name ) )
-        {
-            return false;
-        }
-
-        return true;
-    }
-
-    @Override
-    public int hashCode()
-    {
-        return name.hashCode();
-    }
-}

http://git-wip-us.apache.org/repos/asf/directory-fortress-commander/blob/547b9ccd/src/main/java/org/openldap/commander/panel/RoleAdminDetailPanel.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/commander/panel/RoleAdminDetailPanel.java b/src/main/java/org/openldap/commander/panel/RoleAdminDetailPanel.java
deleted file mode 100644
index 39a8b81..0000000
--- a/src/main/java/org/openldap/commander/panel/RoleAdminDetailPanel.java
+++ /dev/null
@@ -1,439 +0,0 @@
-/*
- * This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2014 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in the file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- */
-
-package org.openldap.commander.panel;
-
-import com.googlecode.wicket.kendo.ui.form.button.AjaxButton;
-import com.googlecode.wicket.kendo.ui.form.combobox.ComboBox;
-import org.apache.log4j.Logger;
-import org.apache.wicket.Component;
-import org.apache.wicket.ajax.AjaxRequestTarget;
-import org.apache.wicket.ajax.attributes.AjaxCallListener;
-import org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
-import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
-import org.apache.wicket.markup.html.form.CheckBox;
-import org.apache.wicket.markup.html.form.Form;
-import org.apache.wicket.markup.html.form.TextField;
-import org.apache.wicket.markup.html.panel.Panel;
-import org.apache.wicket.model.IModel;
-import org.apache.wicket.model.PropertyModel;
-import org.openldap.commander.GlobalIds;
-import org.openldap.fortress.rbac.AdminRole;
-import org.openldap.fortress.rbac.OrgUnit;
-import org.openldap.fortress.rbac.UserRole;
-import org.openldap.fortress.util.attr.VUtil;
-
-import java.util.List;
-
-/**
- * @author Shawn McKinney
- * @version $Rev$
- *          Date: 8/12/13
- */
-public class RoleAdminDetailPanel extends Panel
-{
-    private static final Logger LOG = Logger.getLogger( RoleAdminDetailPanel.class.getName() );
-    public static final String PERMOU_SELECTION = "permouSelection";
-    public static final String USEROU_SELECTION = "userouSelection";
-    public static final String ROLE_ASSIGN_MODAL = "role-assign-modal";
-    private List<String> permous;
-    private List<String> userous;
-    private ComboBox<String> userouCB;
-    private ComboBox<String> permouCB;
-    private TextField beginRangeTF;
-    private TextField endRangeTF;
-    private String userouSelection;
-    private String permouSelection;
-
-    public RoleAdminDetailPanel( String id, final IModel roleModel )
-    {
-        super( id, roleModel );
-
-        permouCB = new ComboBox<String>( GlobalIds.OS_P, new PropertyModel<String>( this, PERMOU_SELECTION ), permous );
-        permouCB.setOutputMarkupId( true );
-        add( permouCB );
-        addPermOUSearchModal();
-
-        userouCB = new ComboBox<String>( GlobalIds.OS_U, new PropertyModel<String>( this, USEROU_SELECTION ), userous );
-        userouCB.setOutputMarkupId( true );
-        add( userouCB );
-        addUserOUSearchModal();
-
-        beginRangeTF = new TextField( GlobalIds.BEGIN_RANGE );
-        beginRangeTF.setRequired( false );
-        beginRangeTF.setOutputMarkupId( true );
-        add( beginRangeTF );
-        addBeginRoleSearchModal();
-
-        CheckBox beginInclusiveCB = new CheckBox( GlobalIds.BEGIN_INCLUSIVE );
-        beginInclusiveCB.setRequired( false );
-        add( beginInclusiveCB );
-
-        endRangeTF = new TextField( GlobalIds.END_RANGE );
-        endRangeTF.setRequired( false );
-        endRangeTF.setOutputMarkupId( true );
-        add( endRangeTF );
-        addEndRoleSearchModal();
-
-        CheckBox endInclusiveCB = new CheckBox( GlobalIds.END_INCLUSIVE );
-        endInclusiveCB.setRequired( false );
-        add( endInclusiveCB );
-
-        setOutputMarkupId( true );
-    }
-
-    private void addPermOUSearchModal()
-    {
-        final ModalWindow permousModalWindow;
-        add( permousModalWindow = new ModalWindow( "permoumodal" ) );
-        final OUSearchModalPanel permouSearchModalPanel = new OUSearchModalPanel( permousModalWindow.getContentId(),
-            permousModalWindow, false );
-        permousModalWindow.setContent( permouSearchModalPanel );
-        permousModalWindow.setWindowClosedCallback( new ModalWindow.WindowClosedCallback()
-        {
-            @Override
-            public void onClose( AjaxRequestTarget target )
-            {
-                OrgUnit ou = permouSearchModalPanel.getSelection();
-                if ( ou != null )
-                {
-                    permouSelection = ou.getName();
-                    AdminRole adminRole = (AdminRole)getDefaultModelObject();
-                    adminRole.setOsP( permouSelection );
-                    target.add( permouCB );
-                }
-            }
-        } );
-
-        add( new AjaxButton( GlobalIds.PERMOU_SEARCH )
-        {
-            @Override
-            protected void onSubmit( AjaxRequestTarget target, Form<?> form )
-            {
-                String msg = "clicked on permission OU search";
-                msg += permouSelection != null ? ": " + permouSelection : "";
-                permouSearchModalPanel.setSearchVal( permouSelection );
-                LOG.debug( msg );
-                target.prependJavaScript( GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE );
-                permousModalWindow.show( target );
-            }
-
-            @Override
-            protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-            {
-                super.updateAjaxAttributes( attributes );
-                AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                {
-                    @Override
-                    public CharSequence getFailureHandler( Component component )
-                    {
-                        return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                    }
-                };
-                attributes.getAjaxCallListeners().add( ajaxCallListener );
-            }
-        } );
-
-        permousModalWindow.setTitle( "Perm Organization Selection Modal" );
-        permousModalWindow.setInitialWidth( 450 );
-        permousModalWindow.setInitialHeight( 450 );
-        permousModalWindow.setCookieName( "permou-modal" );
-
-        add( new AjaxButton( "permou.delete" )
-        {
-            @Override
-            protected void onSubmit( AjaxRequestTarget target, Form<?> form )
-            {
-                String msg = "clicked on permous.delete";
-                if ( VUtil.isNotNullOrEmpty( permouSelection ) )
-                {
-                    msg += " selection:" + permouSelection;
-                    AdminRole adminRole = ( AdminRole ) form.getModel().getObject();
-                    if ( adminRole.getOsP() != null )
-                    {
-                        adminRole.getOsP().remove( permouSelection );
-                        permous.remove( permouSelection );
-                        permouSelection = "";
-                        target.add( permouCB );
-                        msg += ", was removed from local, commit to persist changes on server";
-                    }
-                    else
-                    {
-                        msg += ", no action taken because org unit does not have parent set";
-                    }
-                }
-                else
-                {
-                    msg += ", no action taken because parents selection is empty";
-                }
-                LOG.debug( msg );
-            }
-
-            @Override
-            protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-            {
-                super.updateAjaxAttributes( attributes );
-                AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                {
-                    @Override
-                    public CharSequence getFailureHandler( Component component )
-                    {
-                        return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                    }
-                };
-                attributes.getAjaxCallListeners().add( ajaxCallListener );
-            }
-        } );
-    }
-
-    private void addUserOUSearchModal()
-    {
-        final ModalWindow userousModalWindow;
-        add( userousModalWindow = new ModalWindow( "useroumodal" ) );
-        final OUSearchModalPanel userouSearchModalPanel = new OUSearchModalPanel( userousModalWindow.getContentId(),
-            userousModalWindow, true );
-        userousModalWindow.setContent( userouSearchModalPanel );
-        userousModalWindow.setWindowClosedCallback( new ModalWindow.WindowClosedCallback()
-        {
-            @Override
-            public void onClose( AjaxRequestTarget target )
-            {
-                OrgUnit ou = userouSearchModalPanel.getSelection();
-                if ( ou != null )
-                {
-                    userouSelection = ou.getName();
-                    AdminRole adminRole = (AdminRole)getDefaultModelObject();
-                    adminRole.setOsU( userouSelection );
-                    target.add( userouCB );
-                }
-            }
-        } );
-
-        add( new AjaxButton( GlobalIds.USEROU_SEARCH )
-        {
-            @Override
-            protected void onSubmit( AjaxRequestTarget target, Form<?> form )
-            {
-                String msg = "clicked on user OU search";
-                msg += userouSelection != null ? ": " + userouSelection : "";
-                userouSearchModalPanel.setSearchVal( userouSelection );
-                LOG.debug( msg );
-                target.prependJavaScript( GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE );
-                userousModalWindow.show( target );
-            }
-
-            @Override
-            protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-            {
-                super.updateAjaxAttributes( attributes );
-                AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                {
-                    @Override
-                    public CharSequence getFailureHandler( Component component )
-                    {
-                        return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                    }
-                };
-                attributes.getAjaxCallListeners().add( ajaxCallListener );
-            }
-        } );
-
-        userousModalWindow.setTitle( "User Organization Selection Modal" );
-        userousModalWindow.setInitialWidth( 450 );
-        userousModalWindow.setInitialHeight( 450 );
-        userousModalWindow.setCookieName( "permou-modal" );
-
-        add( new AjaxButton( "userou.delete" )
-        {
-            @Override
-            protected void onSubmit( AjaxRequestTarget target, Form<?> form )
-            {
-                String msg = "clicked on userous.delete";
-                if ( VUtil.isNotNullOrEmpty( userouSelection ) )
-                {
-                    msg += " selection:" + userouSelection;
-                    AdminRole adminRole = ( AdminRole ) form.getModel().getObject();
-                    if ( adminRole.getOsU() != null )
-                    {
-                        adminRole.getOsU().remove( userouSelection );
-                        userous.remove( userouSelection );
-                        userouSelection = "";
-                        target.add( userouCB );
-                        msg += ", was removed from local, commit to persist changes on server";
-                    }
-                    else
-                    {
-                        msg += ", no action taken because org unit does not have parent set";
-                    }
-                }
-                else
-                {
-                    msg += ", no action taken because parents selection is empty";
-                }
-                LOG.debug( msg );
-            }
-
-            @Override
-            protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-            {
-                super.updateAjaxAttributes( attributes );
-                AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                {
-                    @Override
-                    public CharSequence getFailureHandler( Component component )
-                    {
-                        return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                    }
-                };
-                attributes.getAjaxCallListeners().add( ajaxCallListener );
-            }
-        } );
-    }
-
-    private void addBeginRoleSearchModal()
-    {
-        final ModalWindow beginRoleModalWindow;
-        add( beginRoleModalWindow = new ModalWindow( "beginrolesmodal" ) );
-        final RoleSearchModalPanel beginRoleSearchModalPanel = new RoleSearchModalPanel( beginRoleModalWindow.getContentId(), beginRoleModalWindow, false );
-        beginRoleModalWindow.setContent( beginRoleSearchModalPanel );
-        beginRoleModalWindow.setWindowClosedCallback( new ModalWindow.WindowClosedCallback()
-        {
-            @Override
-            public void onClose( AjaxRequestTarget target )
-            {
-                UserRole userRole = beginRoleSearchModalPanel.getRoleSelection();
-                if ( userRole != null )
-                {
-                    AdminRole adminRole = ( AdminRole ) getDefaultModelObject();
-                    adminRole.setBeginRange( userRole.getName() );
-                    target.add( beginRangeTF );
-                }
-            }
-        } );
-
-        add( new AjaxButton( GlobalIds.BEGIN_RANGE_SEARCH )
-        {
-            @Override
-            protected void onSubmit( AjaxRequestTarget target, Form<?> form )
-            {
-                AdminRole adminRole = ( AdminRole ) form.getModel().getObject();
-                beginRoleSearchModalPanel.setRoleSearchVal( adminRole.getBeginRange() );
-                target.prependJavaScript( GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE );
-                beginRoleModalWindow.show( target );
-            }
-
-            @Override
-            protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-            {
-                super.updateAjaxAttributes( attributes );
-                AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                {
-                    @Override
-                    public CharSequence getFailureHandler( Component component )
-                    {
-                        return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                    }
-                };
-                attributes.getAjaxCallListeners().add( ajaxCallListener );
-            }
-        } );
-
-        beginRoleModalWindow.setTitle( "Begin Range Role Selection Modal" );
-        beginRoleModalWindow.setInitialWidth( 700 );
-        beginRoleModalWindow.setInitialHeight( 450 );
-        beginRoleModalWindow.setCookieName( ROLE_ASSIGN_MODAL );
-    }
-
-    private void addEndRoleSearchModal()
-    {
-        final ModalWindow endRoleModalWindow;
-        add( endRoleModalWindow = new ModalWindow( "endrolesmodal" ) );
-        final RoleSearchModalPanel endRoleSearchModalPanel = new RoleSearchModalPanel( endRoleModalWindow.getContentId(), endRoleModalWindow, false );
-        endRoleModalWindow.setContent( endRoleSearchModalPanel );
-        endRoleModalWindow.setWindowClosedCallback( new ModalWindow.WindowClosedCallback()
-        {
-            @Override
-            public void onClose( AjaxRequestTarget target )
-            {
-                UserRole userRole = endRoleSearchModalPanel.getRoleSelection();
-                if ( userRole != null )
-                {
-                    AdminRole adminRole = ( AdminRole ) getDefaultModelObject();
-                    adminRole.setEndRange( userRole.getName() );
-                    target.add( endRangeTF );
-                }
-            }
-        } );
-
-        add( new AjaxButton( GlobalIds.END_RANGE_SEARCH )
-        {
-            @Override
-            protected void onSubmit( AjaxRequestTarget target, Form<?> form )
-            {
-                AdminRole adminRole = ( AdminRole ) form.getModel().getObject();
-                endRoleSearchModalPanel.setRoleSearchVal( adminRole.getBeginRange() );
-                endRoleSearchModalPanel.setParentSearch( true );
-                target.prependJavaScript( GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE );
-                endRoleModalWindow.show( target );
-            }
-
-            @Override
-            protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-            {
-                super.updateAjaxAttributes( attributes );
-                AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                {
-                    @Override
-                    public CharSequence getFailureHandler( Component component )
-                    {
-                        return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                    }
-                };
-                attributes.getAjaxCallListeners().add( ajaxCallListener );
-            }
-        } );
-
-        endRoleModalWindow.setTitle( "End Range Role Selection Modal" );
-        endRoleModalWindow.setInitialWidth( 700 );
-        endRoleModalWindow.setInitialHeight( 450 );
-        endRoleModalWindow.setCookieName( ROLE_ASSIGN_MODAL );
-    }
-
-    /**
-     * This api is needed for this class {@link RoleDetailPanel} to 'push' its model value into this panel's combo box.
-     *
-     * @param permous
-     */
-    void setPermous( List<String> permous )
-    {
-        this.permous = permous;
-        permouCB = new ComboBox<String>( GlobalIds.OS_P, new PropertyModel<String>( this, PERMOU_SELECTION ), permous );
-        permouSelection = "";
-        addOrReplace( permouCB );
-    }
-
-    /**
-     * This api is needed for this class {@link RoleDetailPanel} to 'push' its model value into this panel's combo box.
-     *
-     * @param userous
-     */
-    void setUserous( List<String> userous )
-    {
-        this.userous = userous;
-        userouCB = new ComboBox<String>( GlobalIds.OS_U, new PropertyModel<String>( this, USEROU_SELECTION ), userous );
-        userouSelection = "";
-        addOrReplace( userouCB );
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/directory-fortress-commander/blob/547b9ccd/src/main/java/org/openldap/commander/panel/RoleDetailPanel.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/commander/panel/RoleDetailPanel.java b/src/main/java/org/openldap/commander/panel/RoleDetailPanel.java
deleted file mode 100644
index 1d66c98..0000000
--- a/src/main/java/org/openldap/commander/panel/RoleDetailPanel.java
+++ /dev/null
@@ -1,578 +0,0 @@
-/*
- * This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2014 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in the file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- */
-
-package org.openldap.commander.panel;
-
-import com.googlecode.wicket.jquery.core.JQueryBehavior;
-import com.googlecode.wicket.kendo.ui.form.button.AjaxButton;
-import com.googlecode.wicket.kendo.ui.form.combobox.ComboBox;
-import org.apache.log4j.Logger;
-import org.apache.wicket.Component;
-import org.apache.wicket.ajax.AjaxRequestTarget;
-import org.apache.wicket.ajax.attributes.AjaxCallListener;
-import org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
-import org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink;
-import org.apache.wicket.event.IEvent;
-import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
-import org.apache.wicket.markup.html.WebMarkupContainer;
-import org.apache.wicket.markup.html.basic.Label;
-import org.apache.wicket.markup.html.form.Form;
-import org.apache.wicket.markup.html.form.TextField;
-import org.apache.wicket.markup.html.panel.Panel;
-import org.apache.wicket.model.CompoundPropertyModel;
-import org.apache.wicket.model.IModel;
-import org.apache.wicket.model.PropertyModel;
-import org.apache.wicket.spring.injection.annot.SpringBean;
-import org.openldap.commander.GlobalIds;
-import org.openldap.commander.GlobalUtils;
-import org.openldap.commander.SaveModelEvent;
-import org.openldap.commander.SecureIndicatingAjaxButton;
-import org.openldap.commander.SelectModelEvent;
-import org.openldap.fortress.AdminMgr;
-import org.openldap.fortress.DelAdminMgr;
-import org.openldap.fortress.rbac.AdminRole;
-import org.openldap.fortress.rbac.FortEntity;
-import org.openldap.fortress.rbac.Role;
-import org.openldap.fortress.rbac.UserRole;
-import org.openldap.fortress.util.attr.VUtil;
-
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Created with IntelliJ IDEA.
- * User: kpmckinn
- * Date: 2/26/13
- * Time: 9:27 PM
- * To change this template use File | Settings | File Templates.
- */
-public class RoleDetailPanel extends Panel
-{
-    @SpringBean
-    private AdminMgr adminMgr;
-    @SpringBean
-    private DelAdminMgr delAdminMgr;
-    private static final Logger log = Logger.getLogger(RoleDetailPanel.class.getName());
-    private static final String PARENTS_SELECTION = "parentsSelection";
-    private Form editForm;
-    private Displayable display;
-    private boolean isAdmin;
-    private String objName;
-
-    public Form getForm()
-    {
-        return this.editForm;
-    }
-
-    public RoleDetailPanel(String id, Displayable display, final boolean isAdmin)
-    {
-        super(id);
-        this.isAdmin = isAdmin;
-        this.adminMgr.setAdmin( GlobalUtils.getRbacSession( this ) );
-        this.delAdminMgr.setAdmin( GlobalUtils.getRbacSession( this ) );
-        if(isAdmin)
-        {
-            this.objName = GlobalIds.DEL_ADMIN_MGR;
-            this.editForm = new RoleDetailForm(GlobalIds.EDIT_FIELDS, new CompoundPropertyModel<AdminRole>(new AdminRole()));
-        }
-        else
-        {
-            this.objName = GlobalIds.ADMIN_MGR;
-            this.editForm = new RoleDetailForm(GlobalIds.EDIT_FIELDS, new CompoundPropertyModel<Role>(new Role()));
-        }
-
-        this.display = display;
-        add(editForm);
-    }
-
-    public class RoleDetailForm<T extends Serializable> extends Form
-    {
-        private static final String TEMPORAL_CONSTRAINTS_LABEL = "temporalConstraintsLabel";
-        private String temporalConstraintsLabel = "Temporal Constraints";
-        private ConstraintPanel constraintPanel;
-        private String internalId;
-        private ComboBox<String> parentsCB;
-        private Component component;
-        private String parentsSelection;
-        private List<String> parents = new ArrayList<String>();
-        private UserRole parentConstraint = new UserRole();
-        private RoleAdminDetailPanel auxPanel;
-
-        public RoleDetailForm(String id, final IModel<T> model)
-        {
-            super(id, model);
-            if(isAdmin)
-            {
-                auxPanel = new RoleAdminDetailPanel( GlobalIds.ROLEAUXPANEL, model );
-                add( auxPanel );
-            }
-            else
-            {
-                add( new WebMarkupContainer( GlobalIds.ROLEAUXPANEL ) );
-            }
-
-            this.add(new JQueryBehavior("#accordion", "accordion"));
-            constraintPanel = new ConstraintPanel("constraintpanel", model);
-            add(constraintPanel);
-            add( new Label( TEMPORAL_CONSTRAINTS_LABEL, new PropertyModel<String>( this,
-                TEMPORAL_CONSTRAINTS_LABEL ) ) );
-            TextField name = new TextField("name");
-            add(name);
-            TextField description = new TextField(GlobalIds.DESCRIPTION);
-            description.setRequired(false);
-            add(description);
-            Label iid = new Label("id");
-            add(iid);
-            parentsCB = new ComboBox<String>( GlobalIds.PARENTS, new PropertyModel<String>( this, PARENTS_SELECTION ), parents );
-            add(parentsCB);
-
-            add( new SecureIndicatingAjaxButton( GlobalIds.ADD, objName, GlobalIds.ADD_ROLE )
-            {
-                @Override
-                protected void onSubmit(AjaxRequestTarget target, Form form)
-                {
-                    log.debug(".onSubmit Add");
-                    T role = (T)form.getModel().getObject();
-                    updateEntityWithComboData((Role)role);
-                    try
-                    {
-                        String szRoleName;
-                        if(isAdmin)
-                        {
-                            delAdminMgr.addRole((AdminRole)role);
-                            szRoleName = ((AdminRole)role).getName();
-                        }
-                        else
-                        {
-                            adminMgr.addRole((Role)role);
-                            szRoleName = ((Role)role).getName();
-                        }
-
-                        parentsSelection = "";
-                        parents.add( parentsSelection );
-                        SaveModelEvent.send(getPage(), this, ( FortEntity )role, target, SaveModelEvent.Operations.ADD);
-                        component = editForm;
-                        String msg = "Role: " + szRoleName + " has been added";
-                        display.setMessage(msg);
-                    }
-                    catch (org.openldap.fortress.SecurityException se)
-                    {
-                        String error = ".onSubmit caught SecurityException=" + se;
-                        log.error(error);
-                        display.setMessage(error);
-                        display.display();
-                    }
-                }
-
-                @Override
-                public void onError(AjaxRequestTarget target, Form form)
-                {
-                    log.info("RoleDetailPanel.add.onError caught");
-                    target.add();
-                }
-                @Override
-                protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-                {
-                    super.updateAjaxAttributes( attributes );
-                    AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                    {
-                        @Override
-                        public CharSequence getFailureHandler( Component component )
-                        {
-                            return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                        }
-                    };
-                    attributes.getAjaxCallListeners().add( ajaxCallListener );
-                }
-            });
-            add( new SecureIndicatingAjaxButton( GlobalIds.COMMIT, objName, GlobalIds.UPDATE_ROLE )
-            {
-                @Override
-                protected void onSubmit(AjaxRequestTarget target, Form form)
-                {
-                    log.debug(".onSubmit Commit");
-                    T role = (T)form.getModel().getObject();
-                    updateEntityWithComboData((Role)role);
-                    try
-                    {
-                        String szRoleName;
-                        if(isAdmin)
-                        {
-                            delAdminMgr.updateRole((AdminRole)role);
-                            szRoleName = ((AdminRole)role).getName();
-                        }
-                        else
-                        {
-                            adminMgr.updateRole((Role)role);
-                            szRoleName = ((Role)role).getName();
-                        }
-                        String msg = "Role: " + szRoleName + " has been updated";
-                        SaveModelEvent.send(getPage(), this, ( FortEntity )role, target, SaveModelEvent.Operations.UPDATE);
-                        parentsSelection = "";
-                        component = editForm;
-                        display.setMessage(msg);
-                    }
-                    catch (org.openldap.fortress.SecurityException se)
-                    {
-                        String error = ".onSubmit caught SecurityException=" + se;
-                        log.error(error);
-                        display.setMessage(error);
-                        display.display();
-                    }
-                }
-
-                @Override
-                public void onError(AjaxRequestTarget target, Form form)
-                {
-                    log.warn("RoleDetailPanel.update.onError");
-                }
-                @Override
-                protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-                {
-                    super.updateAjaxAttributes( attributes );
-                    AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                    {
-                        @Override
-                        public CharSequence getFailureHandler( Component component )
-                        {
-                            return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                        }
-                    };
-                    attributes.getAjaxCallListeners().add( ajaxCallListener );
-                }
-            });
-            add( new SecureIndicatingAjaxButton( GlobalIds.DELETE, objName, GlobalIds.DELETE_ROLE )
-            {
-                @Override
-                protected void onSubmit(AjaxRequestTarget target, Form form)
-                {
-                    log.debug(".onSubmit Delete");
-                    T role = (T)form.getModel().getObject();
-                    try
-                    {
-                        String szRoleName;
-                        if(isAdmin)
-                        {
-                            delAdminMgr.deleteRole((AdminRole)role);
-                            szRoleName = ((AdminRole)role).getName();
-                            form.setModelObject( new AdminRole() );
-                        }
-                        else
-                        {
-                            adminMgr.deleteRole((Role)role);
-                            szRoleName = ((Role)role).getName();
-                            form.setModelObject( new Role() );
-                        }
-                        parentsSelection = "";
-                        parents = new ArrayList<String>();
-                        parentsCB = new ComboBox<String>( GlobalIds.PARENTS, new PropertyModel<String>( form, PARENTS_SELECTION ),parents );
-                        editForm.addOrReplace( parentsCB );
-                        modelChanged();
-                        String msg = "Role: " + szRoleName + " has been deleted";
-                        SaveModelEvent.send(getPage(), this, ( FortEntity )role, target, SaveModelEvent.Operations.DELETE);
-                        component = editForm;
-                        display.setMessage(msg);
-                    }
-                    catch (org.openldap.fortress.SecurityException se)
-                    {
-                        String error = ".onSubmit caught SecurityException=" + se;
-                        log.error(error);
-                        display.setMessage(error);
-                        display.display();
-                    }
-                }
-
-                @Override
-                public void onError(AjaxRequestTarget target, Form form)
-                {
-                    log.warn("RoleDetailPanel.delete.onError");
-                }
-                @Override
-                protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-                {
-                    super.updateAjaxAttributes( attributes );
-                    AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                    {
-                        @Override
-                        public CharSequence getFailureHandler( Component component )
-                        {
-                            return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                        }
-                    };
-                    attributes.getAjaxCallListeners().add( ajaxCallListener );
-                }
-            });
-            add(new AjaxSubmitLink(GlobalIds.CANCEL)
-            {
-                @Override
-                protected void onSubmit(AjaxRequestTarget target, Form form)
-                {
-                    if(isAdmin)
-                    {
-                        setModelObject(new AdminRole());
-                    }
-                    else
-                    {
-                        setModelObject(new Role());
-                    }
-                    parentsSelection = "";
-                    parents = new ArrayList<String>();
-                    parentsCB = new ComboBox<String>( GlobalIds.PARENTS, new PropertyModel<String>( form, PARENTS_SELECTION ),parents );
-                    modelChanged();
-                    editForm.addOrReplace( parentsCB );
-                    component = editForm;
-                    String msg = "Role cancelled input form";
-                    display.setMessage(msg);
-                }
-
-                @Override
-                public void onError(AjaxRequestTarget target, Form form)
-                {
-                    log.warn("RoleDetailPanel.cancel.onError");
-                }
-                @Override
-                protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-                {
-                    super.updateAjaxAttributes( attributes );
-                    AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                    {
-                        @Override
-                        public CharSequence getFailureHandler( Component component )
-                        {
-                            return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                        }
-                    };
-                    attributes.getAjaxCallListeners().add( ajaxCallListener );
-                }
-            });
-
-            if(isAdmin)
-            {
-                add( new Label( "roleDetailLabel", "Admin Role Detail" ) );
-            }
-            else
-            {
-                add( new Label( "roleDetailLabel", "RBAC Role Detail" ) );
-            }
-            addRoleSearchModal();
-            add( new AjaxButton( "roles.delete" )
-            {
-                private static final long serialVersionUID = 1L;
-
-                @Override
-                protected void onSubmit( AjaxRequestTarget target, Form<?> form )
-                {
-                    String msg = "clicked on roles.delete";
-                    if ( VUtil.isNotNullOrEmpty( parentsSelection ) )
-                    {
-                        msg += " selection:" + parentsSelection;
-                        Role role = ( Role ) form.getModel().getObject();
-                        if ( role.getParents() != null )
-                        {
-                            role.getParents().remove( parentsSelection );
-                            parents.remove(  parentsSelection );
-                            parentsSelection = "";
-                            component = editForm;
-                            msg += ", was removed from local, commit to persist changes on server";
-                        }
-                        else
-                        {
-                            msg += ", no action taken because role does not have parent set";
-                        }
-                    }
-                    else
-                    {
-                        msg += ", no action taken because parent selection is empty";
-                    }
-                    display.setMessage( msg );
-                    log.debug( msg );
-                }
-                @Override
-                protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-                {
-                    super.updateAjaxAttributes( attributes );
-                    AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                    {
-                        @Override
-                        public CharSequence getFailureHandler( Component component )
-                        {
-                            return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                        }
-                    };
-                    attributes.getAjaxCallListeners().add( ajaxCallListener );
-                }
-            } );
-            setOutputMarkupId(true);
-        }
-
-        private void updateEntityWithComboData(Role role)
-        {
-            if(VUtil.isNotNullOrEmpty(parentsSelection))
-            {
-                role.setParent( parentsSelection );
-                parents.add( parentsSelection );
-            }
-        }
-
-        private void addRoleSearchModal()
-        {
-            final ModalWindow rolesModalWindow;
-            add( rolesModalWindow = new ModalWindow( "parentrolesmodal" ) );
-            final RoleSearchModalPanel roleSearchModalPanel = new RoleSearchModalPanel( rolesModalWindow.getContentId(), rolesModalWindow, isAdmin );
-            rolesModalWindow.setContent( roleSearchModalPanel );
-            rolesModalWindow.setWindowClosedCallback( new ModalWindow.WindowClosedCallback()
-            {
-                @Override
-                public void onClose( AjaxRequestTarget target )
-                {
-                    parentConstraint = roleSearchModalPanel.getRoleSelection();
-                    if ( parentConstraint != null )
-                    {
-                        parentsSelection = parentConstraint.getName();
-                        Role role = (Role)getDefaultModelObject();
-                        role.setParent( parentsSelection );
-                        target.add( parentsCB );
-                        component = editForm;
-                    }
-                }
-            } );
-
-            add( new AjaxButton( GlobalIds.PARENTROLES_SEARCH )
-            {
-                private static final long serialVersionUID = 1L;
-
-                @Override
-                protected void onSubmit( AjaxRequestTarget target, Form<?> form )
-                {
-                    String msg = "clicked on parent roles search";
-                    msg += parentsSelection != null ? ": " + parentsSelection : "";
-                    roleSearchModalPanel.setRoleSearchVal( parentsSelection );
-                    display.setMessage( msg );
-                    log.debug( msg );
-                    target.prependJavaScript( GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE );
-                    rolesModalWindow.show( target );
-                }
-                @Override
-                protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-                {
-                    super.updateAjaxAttributes( attributes );
-                    AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                    {
-                        @Override
-                        public CharSequence getFailureHandler( Component component )
-                        {
-                            return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                        }
-                    };
-                    attributes.getAjaxCallListeners().add( ajaxCallListener );
-                }
-            } );
-
-            String modalLabel;
-            if(isAdmin)
-            {
-                modalLabel = "Admin Role Selection Modal";
-            }
-            else
-            {
-                modalLabel = "RBAC Role Selection Modal";
-            }
-            rolesModalWindow.setTitle( modalLabel );
-            rolesModalWindow.setInitialWidth( 700 );
-            rolesModalWindow.setInitialHeight( 450 );
-            rolesModalWindow.setCookieName( "role-assign-modal" );
-        }
-
-        @Override
-        public void onEvent(final IEvent<?> event)
-        {
-            if (event.getPayload() instanceof SelectModelEvent)
-            {
-                SelectModelEvent modelEvent = (SelectModelEvent) event.getPayload();
-                T role = (T) modelEvent.getEntity();
-                this.setModelObject( role );
-                parentsSelection = "";
-                if(VUtil.isNotNullOrEmpty(((Role)role).getParents()))
-                {
-                    parents = new ArrayList<String>(((Role)role).getParents());
-                    parentsCB = new ComboBox<String>( GlobalIds.PARENTS, new PropertyModel<String>( this, PARENTS_SELECTION ),parents );
-                }
-                else
-                {
-                    parents = new ArrayList<String>();
-                    parentsCB = new ComboBox<String>( GlobalIds.PARENTS, new PropertyModel<String>( this, PARENTS_SELECTION ),parents );
-                }
-                editForm.addOrReplace(parentsCB);
-                String msg = "Role: " + ((Role)role).getName() + " has been selected";
-                log.debug(msg);
-                display.setMessage(msg);
-                component = editForm;
-            }
-            else if (event.getPayload() instanceof AjaxRequestTarget)
-            {
-                // only add the form to ajax target if something has changed...
-                if (component != null)
-                {
-                    AjaxRequestTarget target = ((AjaxRequestTarget) event.getPayload());
-                    log.debug(".onEvent AjaxRequestTarget: " + target.toString());
-                    target.add(component);
-                    component = null;
-                }
-                display.display((AjaxRequestTarget) event.getPayload());
-            }
-        }
-
-        @Override
-        protected void onBeforeRender()
-        {
-            if(getModel() != null)
-            {
-                // push the 'changed' model down into the constraint panel:
-                constraintPanel.setDefaultModel(getModel());
-                if(isAdmin)
-                {
-                    // push the 'changed' model down into the admin role detail panel:
-                    auxPanel.setDefaultModel( getModel() );
-                    AdminRole role = (AdminRole)getModel().getObject();
-                    if(role != null)
-                    {
-                        if(role.getOsP() != null)
-                        {
-                            auxPanel.setPermous( new ArrayList<String>(role.getOsP() ) );
-                        }
-                        else
-                        {
-                            auxPanel.setPermous( new ArrayList<String>( ) );
-                        }
-                        if(role.getOsU() != null)
-                        {
-                            auxPanel.setUserous( new ArrayList<String>(role.getOsU() ) );
-                        }
-                        else
-                        {
-                            auxPanel.setUserous( new ArrayList<String>( ) );
-                        }
-                    }
-                }
-            }
-            else
-            {
-                log.info(".onBeforeRender null model object");
-            }
-            super.onBeforeRender();
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/directory-fortress-commander/blob/547b9ccd/src/main/java/org/openldap/commander/panel/RoleListPanel.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/commander/panel/RoleListPanel.java b/src/main/java/org/openldap/commander/panel/RoleListPanel.java
deleted file mode 100644
index 129cdf1..0000000
--- a/src/main/java/org/openldap/commander/panel/RoleListPanel.java
+++ /dev/null
@@ -1,301 +0,0 @@
-/*
- * This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2014 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in the file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- */
-
-package org.openldap.commander.panel;
-
-import com.inmethod.grid.IGridColumn;
-import com.inmethod.grid.SizeUnit;
-import com.inmethod.grid.column.PropertyColumn;
-import com.inmethod.grid.treegrid.TreeGrid;
-import org.apache.log4j.Logger;
-import org.apache.wicket.Component;
-import org.apache.wicket.ajax.AjaxRequestTarget;
-import org.apache.wicket.ajax.attributes.AjaxCallListener;
-import org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
-import org.apache.wicket.event.IEvent;
-import org.apache.wicket.markup.html.form.FormComponentPanel;
-import org.apache.wicket.markup.html.form.TextField;
-import org.apache.wicket.model.IModel;
-import org.apache.wicket.model.PropertyModel;
-import org.openldap.commander.GlobalIds;
-import org.openldap.commander.GlobalUtils;
-import org.openldap.commander.RoleListModel;
-import org.openldap.commander.SaveModelEvent;
-import org.openldap.commander.SecureIndicatingAjaxButton;
-import org.openldap.commander.SelectModelEvent;
-import org.openldap.fortress.rbac.AdminRole;
-import org.openldap.fortress.rbac.FortEntity;
-import org.openldap.fortress.rbac.Role;
-import org.apache.wicket.markup.html.form.Form;
-import org.apache.wicket.model.Model;
-import org.openldap.fortress.util.attr.VUtil;
-
-import javax.swing.tree.DefaultMutableTreeNode;
-import javax.swing.tree.DefaultTreeModel;
-import javax.swing.tree.TreeNode;
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-/**
- *
- * @author Shawn McKinney
- * @version $Rev$
- */
-public class RoleListPanel<T extends Serializable> extends FormComponentPanel
-{
-    private static final Logger log = Logger.getLogger(RoleListPanel.class.getName());
-    private Form listForm;
-    private DefaultTreeModel treeModel;
-    private DefaultMutableTreeNode node;
-    private TreeGrid<DefaultTreeModel, DefaultMutableTreeNode, String> grid;
-    private DefaultMutableTreeNode rootNode;
-    private String searchVal;
-    private boolean isAdmin;
-
-    public RoleListPanel(String id, final boolean isAdmin)
-    {
-        super(id);
-        this.isAdmin = isAdmin;
-        RoleListModel roleListModel = new RoleListModel(createRole(""), isAdmin, GlobalUtils.getRbacSession( this ));
-        setDefaultModel(roleListModel);
-        List<IGridColumn<DefaultTreeModel, DefaultMutableTreeNode, String>> columns =
-            new ArrayList<IGridColumn<DefaultTreeModel, DefaultMutableTreeNode, String>>();
-        columns.add(new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-            Model.of("Name"), "userObject.name"));
-
-        PropertyColumn description = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Description"), "userObject.Description");
-        description.setInitialSize(300);
-        columns.add(description);
-
-        PropertyColumn beginDate = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Begin Date"), "userObject.BeginDate");
-        beginDate.setInitialSize(80);
-        columns.add(beginDate);
-
-        PropertyColumn endDate = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("End Date"), "userObject.EndDate");
-        endDate.setInitialSize(80);
-        columns.add(endDate);
-
-        PropertyColumn beginLockDate = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Begin Lock Dt"), "userObject.BeginLockDate");
-        beginLockDate.setInitialSize(80);
-        columns.add(beginLockDate);
-
-        PropertyColumn endLockDate = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("End Lock Dt"), "userObject.EndLockDate");
-        endLockDate.setInitialSize(80);
-        columns.add(endLockDate);
-
-        PropertyColumn beginTime = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Begin Tm"), "userObject.BeginTime");
-        beginTime.setInitialSize(70);
-        columns.add(beginTime);
-
-        PropertyColumn endTime = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("End Tm"), "userObject.EndTime");
-        endTime.setInitialSize(70);
-        columns.add(endTime);
-
-        PropertyColumn dayMask = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("DayMask"), "userObject.DayMask");
-        dayMask.setInitialSize(80);
-        columns.add(dayMask);
-
-        PropertyColumn parents = new PropertyColumn<DefaultTreeModel, DefaultMutableTreeNode, String, String>(
-                    Model.of("Parents"), "userObject.parents");
-        parents.setInitialSize(250);
-        columns.add(parents);
-
-        List<T> roles = (List<T>)getDefaultModel().getObject();
-        treeModel = createTreeModel(roles);
-        grid = new TreeGrid<DefaultTreeModel, DefaultMutableTreeNode, String>("roletreegrid", treeModel, columns)
-        {
-            @Override
-            public void selectItem(IModel itemModel, boolean selected)
-            {
-                node = (DefaultMutableTreeNode) itemModel.getObject();
-                if(!node.isRoot())
-                {
-                    T role = (T)node.getUserObject();
-                    if (super.isItemSelected(itemModel))
-                    {
-                        log.debug("TreeGrid.addGrid.selectItem item is selected");
-                        super.selectItem(itemModel, false);
-                    }
-                    else
-                    {
-                        super.selectItem(itemModel, true);
-                        SelectModelEvent.send(getPage(), this, (FortEntity)role);
-                    }
-                }
-            }
-        };
-        grid.setContentHeight(50, SizeUnit.EM);
-        grid.setAllowSelectMultiple(false);
-        grid.setClickRowToSelect(true);
-        grid.setClickRowToDeselect(false);
-        grid.setSelectToEdit(false);
-        // expand the root node
-        grid.getTreeState().expandNode((TreeNode) treeModel.getRoot());
-        this.listForm = new Form("form");
-        this.listForm.add(grid);
-        grid.setOutputMarkupId(true);
-        TextField searchValFld = new TextField(GlobalIds.SEARCH_VAL, new PropertyModel<String>(this, GlobalIds.SEARCH_VAL));
-        this.listForm.add(searchValFld);
-
-        this.listForm.add( new SecureIndicatingAjaxButton( GlobalIds.SEARCH, GlobalIds.REVIEW_MGR, "findRoles" )
-        {
-            @Override
-            protected void onSubmit(AjaxRequestTarget target, Form form)
-            {
-                log.debug(".search onSubmit");
-                info("Searching Roles...");
-                if(!VUtil.isNotNullOrEmpty(searchVal))
-                {
-                    searchVal = "";
-                }
-                T srchRole = createRole(searchVal);
-                setDefaultModel(new RoleListModel(srchRole, isAdmin, GlobalUtils.getRbacSession( this )));
-                treeModel.reload();
-                rootNode.removeAllChildren();
-                List<Role> roles = (List<Role>) getDefaultModelObject();
-                if(VUtil.isNotNullOrEmpty(roles))
-                {
-                    for (T role : (List<T>)roles)
-                        rootNode.add(new DefaultMutableTreeNode(role));
-                    info("Search returned " + roles.size() + " matching objects");
-                }
-                else
-                {
-                    info("No matching objects found");
-                }
-                target.add(grid);
-            }
-
-            @Override
-            public void onError(AjaxRequestTarget target, Form form)
-            {
-                log.warn(".search.onError");
-                target.add();
-            }
-            @Override
-            protected void updateAjaxAttributes( AjaxRequestAttributes attributes )
-            {
-                super.updateAjaxAttributes( attributes );
-                AjaxCallListener ajaxCallListener = new AjaxCallListener()
-                {
-                    @Override
-                    public CharSequence getFailureHandler( Component component )
-                    {
-                        return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
-                    }
-                };
-                attributes.getAjaxCallListeners().add( ajaxCallListener );
-            }
-        });
-        add(this.listForm);
-    }
-
-    @Override
-    public void onEvent(IEvent event)
-    {
-        if (event.getPayload() instanceof SaveModelEvent)
-        {
-            SaveModelEvent modelEvent = (SaveModelEvent) event.getPayload();
-            switch(modelEvent.getOperation())
-            {
-                case ADD:
-                    add(modelEvent.getEntity());
-                    break;
-                case UPDATE:
-                    modelChanged();
-                    break;
-                case DELETE:
-                    prune();
-                    break;
-                default:
-                    break;
-            }
-            AjaxRequestTarget target = ((SaveModelEvent) event.getPayload()).getAjaxRequestTarget();
-            target.add(grid);
-            log.debug(".onEvent SaveModelEvent: " + target.toString());
-        }
-    }
-
-    public void add(FortEntity entity)
-    {
-        if (getDefaultModelObject() != null)
-        {
-             List<Role> roles = ((List<Role>) getDefaultModelObject());
-            roles.add((Role) entity);
-            treeModel.insertNodeInto(new DefaultMutableTreeNode(entity), rootNode, roles.size());
-        }
-    }
-
-    public void prune()
-    {
-        removeSelectedItems(grid);
-    }
-
-    private void removeSelectedItems(TreeGrid<DefaultTreeModel, DefaultMutableTreeNode, String> grid)
-    {
-        Collection<IModel<DefaultMutableTreeNode>> selected = grid.getSelectedItems();
-        for (IModel<DefaultMutableTreeNode> model : selected)
-        {
-            DefaultMutableTreeNode node = model.getObject();
-            treeModel.removeNodeFromParent(node);
-            Role role = (Role) node.getUserObject();
-            log.debug(".removeSelectedItems role node: " + role.getName());
-            List<Role> roles = ((List<Role>) getDefaultModel().getObject());
-            roles.remove(role.getName());
-        }
-    }
-
-    private DefaultTreeModel createTreeModel(List<T> roles)
-    {
-        DefaultTreeModel model;
-        Role root = new Role();
-        //root.setName("Roles");
-        rootNode = new DefaultMutableTreeNode(root);
-        model = new DefaultTreeModel(rootNode);
-        if (roles == null)
-            log.debug("no Roles found");
-        else
-        {
-            log.debug("Roles found:" + roles.size());
-            for (T role : roles)
-                rootNode.add(new DefaultMutableTreeNode(role));
-        }
-        return model;
-    }
-
-    private T createRole(String name)
-    {
-        T role;
-        if(isAdmin)
-        {
-            role = (T)new AdminRole(name);
-        }
-        else
-        {
-            role = (T)new Role(name);
-        }
-        return role;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/directory-fortress-commander/blob/547b9ccd/src/main/java/org/openldap/commander/panel/RoleSearchModalPanel.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/commander/panel/RoleSearchModalPanel.java b/src/main/java/org/openldap/commander/panel/RoleSearchModalPanel.java
deleted file mode 100644
index eb7b17e..0000000
--- a/src/main/java/org/openldap/commander/panel/RoleSearchModalPanel.java
+++ /dev/null
@@ -1,205 +0,0 @@
-/*
- * This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2014 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in the file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- */
-package org.openldap.commander.panel;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.log4j.Logger;
-import org.apache.wicket.ajax.AjaxRequestTarget;
-import org.apache.wicket.ajax.markup.html.AjaxLink;
-import org.apache.wicket.ajax.markup.html.navigation.paging.AjaxPagingNavigator;
-import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow;
-import org.apache.wicket.markup.html.basic.Label;
-import org.apache.wicket.markup.html.list.ListItem;
-import org.apache.wicket.markup.html.list.PageableListView;
-import org.apache.wicket.markup.html.panel.Panel;
-import org.apache.wicket.model.LoadableDetachableModel;
-import org.apache.wicket.model.PropertyModel;
-import org.apache.wicket.spring.injection.annot.SpringBean;
-import org.openldap.commander.GlobalUtils;
-import org.openldap.fortress.DelReviewMgr;
-import org.openldap.fortress.ReviewMgr;
-import org.openldap.fortress.rbac.Role;
-import org.openldap.fortress.rbac.UserAdminRole;
-import org.openldap.fortress.rbac.UserRole;
-import org.openldap.fortress.util.time.CUtil;
-import org.openldap.fortress.util.time.Constraint;
-
-/**
- *
- * @author Shawn McKinney
- * @version $Rev$
- */
-public class RoleSearchModalPanel extends Panel
-{
-    @SpringBean
-    private ReviewMgr reviewMgr;
-    @SpringBean
-    private DelReviewMgr delReviewMgr;
-    private static final Logger LOG = Logger.getLogger(RoleSearchModalPanel.class.getName());
-    private ModalWindow window;
-    private Constraint roleSelection;
-    private String roleSearchVal;
-    private boolean isAdmin;
-
-    private boolean isParentSearch;
-    /**
-     * @param id
-     */
-    public RoleSearchModalPanel( String id, ModalWindow window, boolean isAdmin)
-    {
-        super( id );
-        this.window = window;
-        this.isAdmin = isAdmin;
-        this.delReviewMgr.setAdmin( GlobalUtils.getRbacSession( this ) );
-        loadPanel();
-    }
-
-    public void loadPanel()
-    {
-        LoadableDetachableModel requests = getListViewModel();
-        PageableListView roleView = createListView( requests );
-        add( roleView );
-        add( new AjaxPagingNavigator( "navigator", roleView ) );
-    }
-
-    private PageableListView createListView( final LoadableDetachableModel requests )
-    {
-        final PageableListView listView = new PageableListView( "dataview", requests, 16 )
-        {
-            @Override
-            protected void populateItem( final ListItem item )
-            {
-                final Constraint modelObject = ( Constraint ) item.getModelObject();
-                item.add( new AjaxLink<Void>( "select" )
-                {
-                    private static final long serialVersionUID = 1L;
-
-                    @Override
-                    public void onClick(AjaxRequestTarget target)
-                    {
-                        roleSelection = modelObject;
-                        window.close( target );
-                    }
-                } );
-                item.add( new Label( "name", new PropertyModel( item.getModel(), "name" ) ) );
-                item.add( new Label( "beginTime", new PropertyModel( item.getModel(), "beginTime" ) ) );
-                item.add( new Label( "endTime", new PropertyModel( item.getModel(), "endTime" ) ) );
-                item.add( new Label( "beginDate", new PropertyModel( item.getModel(), "beginDate" ) ) );
-                item.add( new Label( "endDate", new PropertyModel( item.getModel(), "endDate" ) ) );
-                item.add( new Label( "beginLockDate", new PropertyModel( item.getModel(), "beginLockDate" ) ) );
-                item.add( new Label( "endLockDate", new PropertyModel( item.getModel(), "endLockDate" ) ) );
-                item.add( new Label( "timeout", new PropertyModel( item.getModel(), "timeout" ) ) );
-                item.add( new Label( "dayMask", new PropertyModel( item.getModel(), "dayMask" ) ) );
-            }
-        };
-        return listView;
-    }
-
-    private LoadableDetachableModel getListViewModel()
-    {
-        final LoadableDetachableModel ret = new LoadableDetachableModel()
-        {
-            @Override
-            protected Object load()
-            {
-                List<?> roles = null;
-                try
-                {
-                    roleSelection = null;
-                    if(roleSearchVal == null)
-                        roleSearchVal = "";
-
-                    if(isParentSearch)
-                     {
-                         Role childRole = reviewMgr.readRole( new Role(roleSearchVal) );
-                         if(childRole != null)
-                         {
-                             List<Role> parentRoles = new ArrayList<Role>();
-                             for(String role : childRole.getParents() )
-                             {
-                                 Role parent = reviewMgr.readRole( new Role(role) );
-                                 parentRoles.add( parent );
-                             }
-                             roles = parentRoles;
-                         }
-                     }
-                     else if(isAdmin)
-                    {
-                        roles = delReviewMgr.findRoles( roleSearchVal );
-                    }
-
-                    else
-                        roles = reviewMgr.findRoles( roleSearchVal );
-                }
-                catch ( org.openldap.fortress.SecurityException se )
-                {
-                    String error = "loadPanel caught SecurityException=" + se;
-                    LOG.error( error );
-                }
-                return roles;
-            }
-        };
-        return ret;
-    }
-
-    public UserRole getRoleSelection()
-    {
-        UserRole userRoleSelection = new UserRole(  );
-        if(this.roleSelection != null)
-        {
-            userRoleSelection.setName( this.roleSelection.getName() );
-            CUtil.copy(this.roleSelection, userRoleSelection);
-        }
-        return userRoleSelection;
-    }
-
-    public UserAdminRole getAdminRoleSelection()
-    {
-        UserAdminRole userRoleSelection = new UserAdminRole(  );
-        if(this.roleSelection != null)
-        {
-            userRoleSelection.setName( this.roleSelection.getName() );
-            CUtil.copy(this.roleSelection, userRoleSelection);
-        }
-        return userRoleSelection;
-    }
-
-    public void setRoleSearchVal( String roleSearchVal )
-    {
-        this.roleSearchVal = roleSearchVal;
-    }
-
-    public boolean isAdmin()
-    {
-        return isAdmin;
-    }
-
-    public void setAdmin( boolean admin )
-    {
-        isAdmin = admin;
-    }
-
-    public boolean isParentSearch()
-    {
-        return isParentSearch;
-    }
-
-    public void setParentSearch( boolean parentSearch )
-    {
-        isParentSearch = parentSearch;
-    }
-}
\ No newline at end of file