Package org.openstreetmap.josm.gui.oauth
Class OAuthAuthorizationWizard
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Dialog
-
- javax.swing.JDialog
-
- org.openstreetmap.josm.gui.oauth.OAuthAuthorizationWizard
-
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
,RootPaneContainer
,WindowConstants
public class OAuthAuthorizationWizard extends JDialog
This wizard walks the user to the necessary steps to retrieve an OAuth Access Token which allows JOSM to access the OSM API on the users behalf.- Since:
- 2746
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) class
OAuthAuthorizationWizard.AcceptAccessTokenAction
(package private) class
OAuthAuthorizationWizard.CancelAction
(package private) class
OAuthAuthorizationWizard.WindowEventHandler
-
Nested classes/interfaces inherited from class javax.swing.JDialog
JDialog.AccessibleJDialog
-
Nested classes/interfaces inherited from class java.awt.Dialog
Dialog.AccessibleAWTDialog, Dialog.ModalExclusionType, Dialog.ModalityType
-
Nested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.Type
-
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
-
Field Summary
Fields Modifier and Type Field Description private String
apiUrl
private boolean
canceled
private Executor
executor
private FullyAutomaticAuthorizationUI
pnlFullyAutomaticAuthorisationUI
private ManualAuthorizationUI
pnlManualAuthorisationUI
private SemiAutomaticAuthorizationUI
pnlSemiAutomaticAuthorisationUI
private AuthorizationProcedure
procedure
private JScrollPane
spAuthorisationProcedureUI
-
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
-
Fields inherited from class java.awt.Dialog
DEFAULT_MODALITY_TYPE
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
-
-
Constructor Summary
Constructors Constructor Description OAuthAuthorizationWizard(Component parent, AuthorizationProcedure procedure, String apiUrl, Executor executor)
Creates the wizard.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
build()
builds the UIprotected JPanel
buildButtonRow()
Builds the row with the action buttonsprotected JPanel
buildHeaderInfoPanel()
Builds the panel with general information in the headerOAuthToken
getAccessToken()
Replies the Access Token entered using the wizardprotected AbstractAuthorizationUI
getCurrentAuthorisationUI()
OAuthParameters
getOAuthParameters()
Replies the current OAuth parameters.void
initFromPreferences()
Initializes the dialog with values from the preferencesboolean
isCanceled()
Replies true if the dialog was canceledboolean
isSaveAccessTokenToPreferences()
Replies true if the currently selected Access Token shall be saved to the preferences.static void
obtainAccessToken(URL serverUrl)
Obtains an OAuth access token for the connection.protected void
refreshAuthorisationProcedurePanel()
Refreshes the view of the authorisation panel, depending on the authorisation procedure currently selectedprotected void
setCanceled(boolean canceled)
void
setVisible(boolean visible)
void
showDialog()
Launches the wizard,sets the token
andsaves to preferences
.-
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
-
Methods inherited from class java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, show, toBack
-
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, 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, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, 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, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
canceled
private boolean canceled
-
procedure
private final AuthorizationProcedure procedure
-
pnlFullyAutomaticAuthorisationUI
private FullyAutomaticAuthorizationUI pnlFullyAutomaticAuthorisationUI
-
pnlSemiAutomaticAuthorisationUI
private SemiAutomaticAuthorizationUI pnlSemiAutomaticAuthorisationUI
-
pnlManualAuthorisationUI
private ManualAuthorizationUI pnlManualAuthorisationUI
-
spAuthorisationProcedureUI
private JScrollPane spAuthorisationProcedureUI
-
-
Constructor Detail
-
OAuthAuthorizationWizard
public OAuthAuthorizationWizard(Component parent, AuthorizationProcedure procedure, String apiUrl, Executor executor)
Creates the wizard.- Parameters:
parent
- the component relative to which the dialog is displayedprocedure
- the authorization procedure to useapiUrl
- the API URL. Must not be null.executor
- the executor used for running the HTTP requests for the authorization- Throws:
IllegalArgumentException
- if apiUrl is null
-
-
Method Detail
-
showDialog
public void showDialog() throws UserCancelException
Launches the wizard,sets the token
andsaves to preferences
.- Throws:
UserCancelException
- if user cancels the operation
-
buildButtonRow
protected JPanel buildButtonRow()
Builds the row with the action buttons- Returns:
- panel with buttons
-
buildHeaderInfoPanel
protected JPanel buildHeaderInfoPanel()
Builds the panel with general information in the header- Returns:
- panel with information display
-
refreshAuthorisationProcedurePanel
protected void refreshAuthorisationProcedurePanel()
Refreshes the view of the authorisation panel, depending on the authorisation procedure currently selected
-
build
protected final void build()
builds the UI
-
isCanceled
public boolean isCanceled()
Replies true if the dialog was canceled- Returns:
- true if the dialog was canceled
-
getCurrentAuthorisationUI
protected AbstractAuthorizationUI getCurrentAuthorisationUI()
-
getAccessToken
public OAuthToken getAccessToken()
Replies the Access Token entered using the wizard- Returns:
- the access token. May be null if the wizard was canceled.
-
getOAuthParameters
public OAuthParameters getOAuthParameters()
Replies the current OAuth parameters.- Returns:
- the current OAuth parameters.
-
isSaveAccessTokenToPreferences
public boolean isSaveAccessTokenToPreferences()
Replies true if the currently selected Access Token shall be saved to the preferences.- Returns:
- true if the currently selected Access Token shall be saved to the preferences
-
initFromPreferences
public void initFromPreferences()
Initializes the dialog with values from the preferences
-
setVisible
public void setVisible(boolean visible)
- Overrides:
setVisible
in classDialog
-
setCanceled
protected void setCanceled(boolean canceled)
-
obtainAccessToken
public static void obtainAccessToken(URL serverUrl) throws InvocationTargetException, InterruptedException
Obtains an OAuth access token for the connection. Afterwards, the token is accessible viaOAuthAccessTokenHolder
.- Parameters:
serverUrl
- the URL to OSM server- Throws:
InterruptedException
- if we're interrupted while waiting for the event dispatching thread to finish OAuth authorization taskInvocationTargetException
- if an exception is thrown while running OAuth authorization task- Since:
- 12803
-
-