|
![]() |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.openpermis.editor.policy.view.AbstractView
org.openpermis.editor.policy.view.ContextView
org.openpermis.editor.policy.view.PolicyView
public class PolicyView
View for a complete PolicyBean
.
The PolicyView
describes the toplevel view including menubar and toolbar for a
complete policy editor. This view will serve as a view manager for all other views used to edit
the policy attached to the PolicyView
.
Field Summary | |
---|---|
private PropertyChangeDispatcher |
commandManagerDispatcher
Dispatcher for undo/redo events. |
private org.picocontainer.PicoContainer |
container
The dependency injection container of this view. |
private ErrorStatusUpdater |
errorStatusUpdater
Updater that syncs the status bar with error messages. |
private org.picocontainer.MutablePicoContainer |
factory
The dependency injection container of this view. |
private org.jdesktop.swingx.JXFrame |
frame
The frame used by this policy view to display its contents. |
private static org.slf4j.Logger |
LOGGER
The logger object of this class. |
private JMenuBar |
menuBar
The menu bar of this policy view, lazily intialized. |
private PolicyPresenter |
presenter
The active policy presenter of this view. |
private static int |
STATUS_PROGRESS_BAR_WIDTH
Width of the progress bar in the status bar in pixels. |
private org.jdesktop.swingx.JXStatusBar |
statusBar
The status bar of this policy view, lazily intialized. |
private JToolBar |
toolBar
The tool bar of this policy view, lazily intialized. |
private static String |
TOOLS_MENU
Virtual value for the tools menu entries. |
private static String |
VIEW_MENUBAR
Resource key for the view menubar. |
private static String |
VIEW_TOOLBAR
Resource key for the view toolbar. |
Constructor Summary | |
---|---|
PolicyView(Application application,
org.jdesktop.swingx.JXFrame frame,
PolicyIconRegistry iconRegistry,
AdapterTrader trader)
Creates a policy view for the specified application context. |
Method Summary | ||
---|---|---|
void |
actionsFromWsdlImport()
Import the actions from a wsdl file. |
|
boolean |
canClose()
Prompts the view to save unsaved changes before closing. |
|
private boolean |
canCreateTypedComponent(String type)
Check if the factory can create the typed component specified. |
|
boolean |
canEditPart(org.openpermis.policy.bean.PartBean part)
Tests if the part specified can be edited. |
|
org.jdesktop.application.FrameView |
configure(org.jdesktop.application.FrameView frameView)
Configures the specified frame view for displaying this view. |
|
private void |
configureToolsMenu(JMenuBar toolsMenuBar)
Configures the tools menu of the specified menu bar. |
|
private org.picocontainer.MutablePicoContainer |
createContainer(org.picocontainer.PicoContainer parent,
Application application,
PolicyIconRegistry iconRegistry,
AdapterTrader trader)
Creates and configures a pico container for this view. |
|
private
|
createTypedComponent(String type,
Object parameter)
Factory method to create a typed component of the specified type. |
|
private void |
doSavePolicy(boolean withCurrentFilename)
Saves the current policy to a file. |
|
private String |
editorType(Class<? extends org.openpermis.policy.bean.PartBean> type)
Returns a unique string identifier for an editor that renders the specified part bean type. |
|
Editor |
editPart(org.openpermis.policy.bean.PartBean part)
Opens an editor for the specified part. |
|
void |
editRedo()
Redo one action. |
|
void |
editUndo()
Undo one action. |
|
void |
fileClose()
Closes the currently edited policy. |
|
void |
fileNew()
Creates a new policy. |
|
void |
fileOpen()
Opens an existing policy. |
|
void |
fileQuit()
Quits the policy editor. |
|
void |
fileRoleAssignment()
Creates an attribute certificate assigning roles to a subject. |
|
void |
fileSave()
Saves the policy editor. |
|
void |
fileSaveAs()
Saves the policy editor. |
|
void |
fileSignedExport()
Signs a policy. |
|
void |
fileSignedImport()
Imports a signed policy. |
|
void |
fileValidate()
Validates a policy. |
|
private JMenuBar |
getMenuBar()
Returns the menu bar for this policy view. |
|
private org.jdesktop.swingx.JXStatusBar |
getStatusBar()
Returns the status bar for this policy view. |
|
private JToolBar |
getToolBar()
Returns the tool bar for this policy view. |
|
void |
loadPolicy()
Opens a file chooser to load a policy. |
|
void |
loadPolicy(File file)
Loads the specified policy from a file. |
|
private void |
loadPolicy(Reader reader,
File file,
boolean setLastFilename)
|
|
void |
loadSignedPolicy()
|
|
private String |
mapString(String msg)
Maps a string in given ResourceMap. |
|
private String |
presenterType(Class<? extends org.openpermis.policy.bean.PartBean> type)
Returns a unique string identifier for a presenter that holds the specified part bean type. |
|
void |
redoChanged(CommandManager commandManager,
String property,
boolean oldValue,
boolean newValue)
Called if the command manager changes. |
|
protected void |
refresh(org.openpermis.policy.bean.PolicyBean policy,
PolicyContext context)
Notifies all registered tools that the policy and the dispatcher have changed. |
|
void |
savePolicy()
Saves the current policy to a file. |
|
void |
savePolicy(File file)
Saves the policy to given file. |
|
void |
savePolicyAs()
Saves the current policy to a file. |
|
void |
setPresenter(PolicyPresenter presenter)
Sets the policy presenter of this view. |
|
void |
showStatusError(String message)
Shows an error message. |
|
void |
undoChanged(CommandManager commandManager,
String property,
boolean oldValue,
boolean newValue)
Called if the command manager changes. |
Methods inherited from class org.openpermis.editor.policy.view.ContextView |
---|
activateEditor, addViewContextListener, closeView, createContentPane, getEditorViews, openView, removeViewContextListener, updateViewTitle, viewActivated, viewClosed, viewDeactivated, viewOpened |
Methods inherited from class org.openpermis.editor.policy.view.AbstractView |
---|
attach, contentPaneCreated, detach, getActionMap, getAdapteeTrader, getContentPane, getIcon, getResourceMap, getTitle, getTitleParameters, getViewContext, label, toolBar, updateTitle |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static final org.slf4j.Logger LOGGER
private static final String VIEW_MENUBAR
"View.menubar"
private static final String VIEW_TOOLBAR
"View.toolbar"
private static final String TOOLS_MENU
Use this value in the menu configuration of the view resources.
""
private static final int STATUS_PROGRESS_BAR_WIDTH
100
private final org.jdesktop.swingx.JXFrame frame
private JToolBar toolBar
getToolBar()
private JMenuBar menuBar
getMenuBar()
private org.jdesktop.swingx.JXStatusBar statusBar
getStatusBar()
private ErrorStatusUpdater errorStatusUpdater
private final org.picocontainer.MutablePicoContainer factory
createContainer(org.picocontainer.PicoContainer, org.openpermis.editor.policy.Application, org.openpermis.editor.policy.gui.PolicyIconRegistry, org.openpermis.editor.policy.adapter.AdapterTrader)
private final org.picocontainer.PicoContainer container
createContainer(org.picocontainer.PicoContainer, org.openpermis.editor.policy.Application, org.openpermis.editor.policy.gui.PolicyIconRegistry, org.openpermis.editor.policy.adapter.AdapterTrader)
private PropertyChangeDispatcher commandManagerDispatcher
private PolicyPresenter presenter
Constructor Detail |
---|
public PolicyView(Application application, org.jdesktop.swingx.JXFrame frame, PolicyIconRegistry iconRegistry, AdapterTrader trader)
application
- the application that this policy view belongs to.frame
- the frame to attach this policy view to.iconRegistry
- the icon registry to use.Method Detail |
---|
private String editorType(Class<? extends org.openpermis.policy.bean.PartBean> type)
type
- the type of part bean.
private String presenterType(Class<? extends org.openpermis.policy.bean.PartBean> type)
type
- the type of part bean.
private final <M> M createTypedComponent(String type, Object parameter)
M
- the type of the component to create.type
- the unique string identifier of its type.parameter
- the paramter for the component to create.
null
if it cannot be created.private final boolean canCreateTypedComponent(String type)
type
- the type to test.
true
if components of the specified type can be created,
false
otherwise.private final org.picocontainer.MutablePicoContainer createContainer(org.picocontainer.PicoContainer parent, Application application, PolicyIconRegistry iconRegistry, AdapterTrader trader)
The container will provide views and presenters in the context of this view.
parent
- the parent container of the container to create.application
- the application that delivers the context and state.iconRegistry
- the icon registry to use.
public org.jdesktop.application.FrameView configure(org.jdesktop.application.FrameView frameView)
frameView
- the frame view to configure.
private void configureToolsMenu(JMenuBar toolsMenuBar)
toolsMenuBar
- the menu bar to configure.private JMenuBar getMenuBar()
private JToolBar getToolBar()
private org.jdesktop.swingx.JXStatusBar getStatusBar()
public void setPresenter(PolicyPresenter presenter)
presenter
- the presenter to set.private String mapString(String msg)
msg
- String to map.
@Action public void fileValidate()
@Action public void editRedo()
@Action public void editUndo()
@Action public void fileClose()
@Action public void fileOpen()
@Action public void fileQuit()
@Action public void fileSave()
@Action public void fileSaveAs()
@Action public void fileSignedImport()
@Action public void fileSignedExport()
@Action public void fileRoleAssignment()
@Action public void actionsFromWsdlImport()
@Action public void fileNew()
public Editor editPart(org.openpermis.policy.bean.PartBean part)
ViewContext
If there is already an editor open, the editor will be shown.
editPart
in interface ViewContext
editPart
in class ContextView
part
- the part to edit.
null
if the part cannot be edited.public boolean canEditPart(org.openpermis.policy.bean.PartBean part)
ViewContext
There are part types for which there may be no editor type registered, in such a case
the part is not editable and calling ViewContext.editPart(PartBean)
will yield a null
editor. Use this method if you want to test prior to actually creating the editor.
canEditPart
in interface ViewContext
canEditPart
in class ContextView
part
- the part to test.
true
if the part can be edited, false
otherwise.protected void refresh(org.openpermis.policy.bean.PolicyBean policy, PolicyContext context)
In contrast to the superclass version this method will update the tools regardless if they are showing or not.
refresh
in class ContextView
policy
- the new policy that is active.context
- the policy context to use.public void showStatusError(String message)
ErrorReporter
showStatusError
in interface ErrorReporter
showStatusError
in class AbstractView
message
- the message to display.public boolean canClose()
View
canClose
in interface View
canClose
in class AbstractView
true
if the view may be closed, false
otherwise.public void loadPolicy(File file)
PolicyLoader
loadPolicy
in interface PolicyLoader
file
- the file to load the policy from.public void loadPolicy()
PolicyLoader
loadPolicy
in interface PolicyLoader
public void loadSignedPolicy()
private void loadPolicy(Reader reader, File file, boolean setLastFilename)
public void savePolicy()
savePolicy
in interface PolicySaver
public void savePolicyAs()
savePolicyAs
in interface PolicySaver
private void doSavePolicy(boolean withCurrentFilename)
withCurrentFilename
- save the policy with current filename, if existspublic void savePolicy(File file)
PolicySaver
savePolicy
in interface PolicySaver
file
- the file to store the policy to.public void undoChanged(CommandManager commandManager, String property, boolean oldValue, boolean newValue)
public void redoChanged(CommandManager commandManager, String property, boolean oldValue, boolean newValue)
|
![]() |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
PERMIS Role Based Access Control 0.3.0 (Build 14)
2009/05/08 09:06:48
Copyright (c) 2002-2007 Ergon Informatik AG