org.openpermis.editor.policy.view
Class ProblemListTool

java.lang.Object
  extended by org.openpermis.editor.policy.view.AbstractView
      extended by org.openpermis.editor.policy.view.AbstractToolView<ProblemListPresenter>
          extended by org.openpermis.editor.policy.view.ProblemListTool
All Implemented Interfaces:
PropertyChangeListener, EventListener, ListSelectionListener, ErrorReporter, Tool, View

public class ProblemListTool
extends AbstractToolView<ProblemListPresenter>
implements PropertyChangeListener, ListSelectionListener

Tool view that displays all target access rules in a policy.

Since:
0.3.0

Nested Class Summary
private  class ProblemListTool.Renderer
          Renderer for target access rules.
 
Field Summary
private static bibliothek.gui.dock.common.CLocation DEFAULT_PROBLEM_LIST_LOCATION
          The default location for the problem list tool.
private  PolicyIconRegistry iconRegistry
          The registry for policy icons to use.
private  org.jdesktop.swingx.JXList list
          The list used to render the target access rules.
 
Fields inherited from class org.openpermis.editor.policy.view.AbstractToolView
DEFAULT_LOCATION
 
Constructor Summary
ProblemListTool(org.jdesktop.application.ApplicationContext context, AdapterTrader trader, PolicyIconRegistry iconRegistry)
          Creates an target access rules tool view.
 
Method Summary
protected  void attachPresenter(ProblemListPresenter presenter, org.jdesktop.beansbinding.BindingGroup bindings)
          Attaches any listeners required to the new presenter and binds components.
 JComponent createContentPane()
          Creates the content pane of this view.
protected  void detachPresenter(ProblemListPresenter presenter)
          Unlinks any listeners from the specified old presenter.
 void editProblem()
          Command to edit the active target access rule.
 bibliothek.gui.dock.common.CLocation getDefaultLocation()
          Returns the desired default location relative to the working area for this tool view.
private  boolean isEditable(Problem problem)
          Check if an editor of the problem part can be opened.
 void propertyChange(PropertyChangeEvent event)
           
 void refresh(org.openpermis.policy.bean.PolicyBean policy, PolicyContext context)
          Instructs the tool to refresh itself with the specified policy.
protected  void updateActions()
          Prompts the tool to update its actions according to the presenter state.
 void valueChanged(ListSelectionEvent e)
           
 
Methods inherited from class org.openpermis.editor.policy.view.AbstractToolView
contentPaneCreated, createToolBar, getPresenter, getToolBar, getToolIdentifier, setPresenter
 
Methods inherited from class org.openpermis.editor.policy.view.AbstractView
attach, canClose, canEditPart, closeView, detach, editPart, getActionMap, getAdapteeTrader, getContentPane, getIcon, getResourceMap, getTitle, getTitleParameters, getViewContext, label, openView, showStatusError, toolBar, updateTitle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.openpermis.editor.policy.view.View
attach, canClose, detach, getContentPane, getIcon, getTitle
 

Field Detail

DEFAULT_PROBLEM_LIST_LOCATION

private static final bibliothek.gui.dock.common.CLocation DEFAULT_PROBLEM_LIST_LOCATION
The default location for the problem list tool.

Since:
0.3.0

list

private org.jdesktop.swingx.JXList list
The list used to render the target access rules.

Since:
0.3.0

iconRegistry

private final PolicyIconRegistry iconRegistry
The registry for policy icons to use.

Since:
0.3.0
Constructor Detail

ProblemListTool

public ProblemListTool(org.jdesktop.application.ApplicationContext context,
                       AdapterTrader trader,
                       PolicyIconRegistry iconRegistry)
Creates an target access rules tool view.

Parameters:
context - the application context used to lookup the action and resource map.
iconRegistry - the registry for policy icons.
Since:
0.3.0
Method Detail

isEditable

private boolean isEditable(Problem problem)
Check if an editor of the problem part can be opened.

Parameters:
problem - the problem for which to test, may be null.
Returns:
true if an editor can be opened.
Since:
0.3.0

editProblem

@Action
public void editProblem()
Command to edit the active target access rule.

Since:
0.3.0

refresh

public void refresh(org.openpermis.policy.bean.PolicyBean policy,
                    PolicyContext context)
Description copied from interface: Tool
Instructs the tool to refresh itself with the specified policy.

Called whenever the policy that this view renders changes.

Specified by:
refresh in interface Tool
Parameters:
policy - the policy to refresh with.
context - the policy context to use.
Since:
0.3.0

updateActions

protected void updateActions()
Description copied from class: AbstractToolView
Prompts the tool to update its actions according to the presenter state.

The default implementation does nothing.

Overrides:
updateActions in class AbstractToolView<ProblemListPresenter>
Since:
0.3.0

detachPresenter

protected void detachPresenter(ProblemListPresenter presenter)
Description copied from class: AbstractToolView
Unlinks any listeners from the specified old presenter.

This is called before a new presenter is set.

The default implementation removes any bean bindings.

Overrides:
detachPresenter in class AbstractToolView<ProblemListPresenter>
Parameters:
presenter - the presenter to unlink.
See Also:
AbstractToolView.setPresenter(Presenter)
Since:
0.3.0

attachPresenter

protected void attachPresenter(ProblemListPresenter presenter,
                               org.jdesktop.beansbinding.BindingGroup bindings)
Description copied from class: AbstractToolView
Attaches any listeners required to the new presenter and binds components.

The default implementation initializes the content pane if necessary.

Overrides:
attachPresenter in class AbstractToolView<ProblemListPresenter>
Parameters:
presenter - the new presenter to attach to.
bindings - the binding group to add bindings to.
Since:
0.3.0

getDefaultLocation

public bibliothek.gui.dock.common.CLocation getDefaultLocation()
Description copied from interface: Tool
Returns the desired default location relative to the working area for this tool view.

Specified by:
getDefaultLocation in interface Tool
Overrides:
getDefaultLocation in class AbstractToolView<ProblemListPresenter>
Returns:
the desired default location of this tool view.
Since:
0.3.0

createContentPane

public JComponent createContentPane()
Description copied from class: AbstractView
Creates the content pane of this view.

Specified by:
createContentPane in class AbstractView
Returns:
the content pane of this view, must not be null.
Since:
0.3.0

propertyChange

public void propertyChange(PropertyChangeEvent event)
Specified by:
propertyChange in interface PropertyChangeListener
Since:
0.3.0

valueChanged

public void valueChanged(ListSelectionEvent e)
Specified by:
valueChanged in interface ListSelectionListener
Since:
0.3.0


PERMIS Role Based Access Control 0.4.0 (Build 15)
2009/05/20 08:15:22
Copyright (c) 2002-2007 Ergon Informatik AG