IAIK PKCS#11 Provider API Documentation
version 1.6

iaik.apps.util.passphrase
Class PassphraseFrameDialog

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by iaik.apps.util.passphrase.PassphraseFrameDialog
All Implemented Interfaces:
PassphraseInterfacce, PassphrasePrompt, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public final class PassphraseFrameDialog
extends javax.swing.JFrame
implements PassphrasePrompt

A simple dialog for prompting a passphrase.

Author:
Karl Scheibelhofer
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.BaselineResizeBehavior
 
Field Summary
static java.lang.String LINE_SEPARATOR
          The separator used to separate lines in the message component.
 
Fields inherited from class javax.swing.JFrame
EXIT_ON_CLOSE
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
PassphraseFrameDialog()
          Empty constructor.
PassphraseFrameDialog(java.lang.String title)
          Construct a new PasswordDialog with the specified dialog title.
PassphraseFrameDialog(java.lang.String title, java.lang.Object promptMessageObject)
          Construct a new PasswordDialog with the specified dialog title and the specified message as label for the passphrase field.
 
Method Summary
 void dispose()
          Overridden to catch the call to this method.
 char[] getPassphrase()
          Gets the passphrase that was entered by the user and delete the internal copy of the password afterwards.
 boolean isCancelAllowed()
          Check, if the user can cancel this dialog; e.g. close it without entering a password.
static void main(java.lang.String[] args)
          For testing only.
 void paint(java.awt.Graphics g)
          We have overridden this method to set the input focus to the password field when the dialog is painted the first time.
 char[] promptPassphrase()
          Show this dialog and return the entered password.
 void setCancelAllowed(boolean allowCancel)
          Set, if the user is allowed to cancel this dialog without entering a password.
 void setMessage(java.lang.Object promptMessageObject)
          Set the message to be displayed by this dialog.
 void setProtectedResourceInfo(java.lang.Object protectedResourceInfo)
          Set the object that represents the protected resources; i.e. the resource for which a password or PIN is required e.g. a smart card.
 void show()
          Show this dialog.
 
Methods inherited from class javax.swing.JFrame
getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setTransferHandler, update
 
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, dispatchEvent, enable, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

LINE_SEPARATOR

public static final java.lang.String LINE_SEPARATOR
The separator used to separate lines in the message component.

Constructor Detail

PassphraseFrameDialog

public PassphraseFrameDialog()
Empty constructor.


PassphraseFrameDialog

public PassphraseFrameDialog(java.lang.String title)
Construct a new PasswordDialog with the specified dialog title.

Parameters:
title - The title of the dialog box.

PassphraseFrameDialog

public PassphraseFrameDialog(java.lang.String title,
                             java.lang.Object promptMessageObject)
Construct a new PasswordDialog with the specified dialog title and the specified message as label for the passphrase field.

Parameters:
title - The title of the dialog box.
promptMessageObject - The label text object for the passphrase field.
Method Detail

setMessage

public void setMessage(java.lang.Object promptMessageObject)
Set the message to be displayed by this dialog. Per default, this method calls toString() of this object.

Specified by:
setMessage in interface PassphraseInterfacce
Parameters:
promptMessageObject - The message object.

setProtectedResourceInfo

public void setProtectedResourceInfo(java.lang.Object protectedResourceInfo)
Set the object that represents the protected resources; i.e. the resource for which a password or PIN is required e.g. a smart card. This implementation can handle TokenInfo objects, for wich it displays the token label after the prompt message. For other tpyes, it will just call toString().

Specified by:
setProtectedResourceInfo in interface PassphraseInterfacce
Parameters:
protectedResourceInfo - The resource info object.

show

public void show()
Show this dialog.

Overrides:
show in class java.awt.Window

paint

public void paint(java.awt.Graphics g)
We have overridden this method to set the input focus to the password field when the dialog is painted the first time.

Overrides:
paint in class java.awt.Window
Parameters:
g - see Container.paint(java.awt.Graphics).

getPassphrase

public char[] getPassphrase()
Gets the passphrase that was entered by the user and delete the internal copy of the password afterwards. Notice that the application can call this method just once. After the first call the password will be no longer available in this dialog object.

Returns:
The passphrase or null, if the user canceled the dialog.

isCancelAllowed

public boolean isCancelAllowed()
Check, if the user can cancel this dialog; e.g. close it without entering a password.

Specified by:
isCancelAllowed in interface PassphraseInterfacce
Returns:
True, if the user is allowed to cancel the dialog.

setCancelAllowed

public void setCancelAllowed(boolean allowCancel)
Set, if the user is allowed to cancel this dialog without entering a password.

Specified by:
setCancelAllowed in interface PassphraseInterfacce
Parameters:
allowCancel - True, to allow the user to cancel the dialog.

promptPassphrase

public char[] promptPassphrase()
Show this dialog and return the entered password. After this method returned, the password cannot be retrieved using the getPassphrase() method, because this method already calls this method.

Specified by:
promptPassphrase in interface PassphrasePrompt
Returns:
The password entered by the user or null, if the user canceled the dialog.

dispose

public void dispose()
Overridden to catch the call to this method. A call this this method calls the superclass and then exits the modal mode of this dialog.

Overrides:
dispose in class java.awt.Window

main

public static void main(java.lang.String[] args)
For testing only.


IAIK PKCS#11 Provider API Documentation
version 1.6

IAIK JavaSecurity Website http://jce.iaik.tugraz.at/

IAIK at Graz University of Technology, Austria, Europe
Copyright 2001-2004, IAIK, Graz University of Technology, Inffeldgasse 16a, 8010 Graz, Austria. All Rights Reserved.
version 1.6