svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.plugin / org.gvsig.downloader / org.gvsig.downloader.swing / org.gvsig.downloader.swing.scribejava / src / main / java / org / gvsig / downloader / swing / scribejava / keycloak / DownloaderAuthenticationKeycloakConfigPanel.java @ 47828
History | View | Annotate | Download (5.17 KB)
1 |
package org.gvsig.downloader.swing.scribejava.keycloak; |
---|---|
2 |
|
3 |
import java.awt.event.ActionEvent; |
4 |
import java.awt.event.ActionListener; |
5 |
import org.apache.commons.lang3.StringUtils; |
6 |
import org.gvsig.tools.ToolsLocator; |
7 |
import org.gvsig.tools.bookmarksandhistory.Bookmarks; |
8 |
import org.gvsig.tools.bookmarksandhistory.History; |
9 |
import org.gvsig.tools.swing.api.ToolsSwingLocator; |
10 |
import org.gvsig.tools.swing.api.ToolsSwingManager; |
11 |
import org.gvsig.tools.swing.api.bookmarkshistory.ActionEventWithCurrentValue; |
12 |
import static org.gvsig.tools.swing.api.bookmarkshistory.ActionEventWithCurrentValue.ID_GETVALUE; |
13 |
import static org.gvsig.tools.swing.api.bookmarkshistory.ActionEventWithCurrentValue.ID_SETVALUE; |
14 |
import org.gvsig.tools.swing.api.bookmarkshistory.BookmarksController; |
15 |
import org.gvsig.tools.swing.api.bookmarkshistory.HistoryController; |
16 |
import org.gvsig.tools.swing.api.documentfilters.IntegerDocumentFilter; |
17 |
|
18 |
/**
|
19 |
*
|
20 |
* @author jjdelcerro
|
21 |
*/
|
22 |
public class DownloaderAuthenticationKeycloakConfigPanel |
23 |
extends DownloaderAuthenticationKeycloakConfigPanelView {
|
24 |
|
25 |
private static final String BOOKMARKSANDHISTORY_NAME = "downloader_keycloak_config"; |
26 |
|
27 |
private DownloaderAuthenticationKeycloakFactory factory;
|
28 |
// private TextFieldWithHistoryAndBookmarkController urlKeycloakController;
|
29 |
private final Bookmarks bookmarks; |
30 |
private final History history; |
31 |
private BookmarksController bookmarksController;
|
32 |
private HistoryController historyController;
|
33 |
|
34 |
|
35 |
|
36 |
public DownloaderAuthenticationKeycloakConfigPanel() {
|
37 |
this.bookmarks = ToolsLocator.getBookmarksAndHistoryManager().getBookmarksGroup(BOOKMARKSANDHISTORY_NAME);
|
38 |
this.history = ToolsLocator.getBookmarksAndHistoryManager().getHistoryGroup(BOOKMARKSANDHISTORY_NAME);
|
39 |
initComponents(); |
40 |
} |
41 |
|
42 |
public void put(DownloaderAuthenticationKeycloakConfig config) { |
43 |
this.factory = config.getFactory();
|
44 |
this.txtServiceUrl.setText(config.getServiceUrl());
|
45 |
this.txtUrlKeycloak.setText(config.getBaseurl());
|
46 |
this.txtRealm.setText(config.getRealm());
|
47 |
this.txtScope.setText(config.getScope());
|
48 |
this.txtClientid.setText(config.getClientid());
|
49 |
this.txtLocalPort.setText(String.valueOf(config.getLocalPort())); |
50 |
} |
51 |
|
52 |
public DownloaderAuthenticationKeycloakConfig fetch(DownloaderAuthenticationKeycloakConfig config) {
|
53 |
if( config == null ) { |
54 |
config = this.factory.create(this.txtServiceUrl); |
55 |
} |
56 |
config.setBaseurl(StringUtils.defaultIfBlank(this.txtUrlKeycloak.getText(), null)); |
57 |
config.setRealm(StringUtils.defaultIfBlank(this.txtRealm.getText(), null)); |
58 |
config.setClientid(StringUtils.defaultIfBlank(this.txtClientid.getText(), null)); |
59 |
config.setScope(StringUtils.defaultIfBlank(this.txtScope.getText(), null)); |
60 |
config.setLocalPort(Integer.parseInt(this.txtLocalPort.getText())); |
61 |
this.history.add(config);
|
62 |
return config;
|
63 |
} |
64 |
|
65 |
private void initComponents() { |
66 |
ToolsSwingManager toolsSwingManager = ToolsSwingLocator.getToolsSwingManager(); |
67 |
|
68 |
this.bookmarksController = ToolsSwingLocator.getToolsSwingManager().createBookmarksController(this.bookmarks, btnConfigKeycloakBookmarks); |
69 |
this.historyController = ToolsSwingLocator.getToolsSwingManager().createHistoryController(this.history, btnConfigKeycloakHistory); |
70 |
|
71 |
this.historyController.setFilter(null); |
72 |
|
73 |
ActionListener bookmarksAndHistoryListener = (ActionEvent e) -> { |
74 |
ActionEventWithCurrentValue<DownloaderAuthenticationKeycloakConfig> event = (ActionEventWithCurrentValue<DownloaderAuthenticationKeycloakConfig>) e; |
75 |
switch (event.getID()) {
|
76 |
case ID_GETVALUE:
|
77 |
event.setCurrentValue(fetch(null));
|
78 |
break;
|
79 |
case ID_SETVALUE:
|
80 |
put(event.getCurrentValue()); |
81 |
break;
|
82 |
} |
83 |
}; |
84 |
this.historyController.addActionListener(bookmarksAndHistoryListener);
|
85 |
this.bookmarksController.addActionListener(bookmarksAndHistoryListener);
|
86 |
|
87 |
|
88 |
toolsSwingManager.translate(lblLocalPort); |
89 |
toolsSwingManager.translate(lblRealm); |
90 |
toolsSwingManager.translate(lblClientid); |
91 |
toolsSwingManager.translate(lblScope); |
92 |
toolsSwingManager.translate(lblUrlKeycloak); |
93 |
toolsSwingManager.translate(lblServiceUrl); |
94 |
|
95 |
this.txtServiceUrl.setEditable(false); |
96 |
|
97 |
toolsSwingManager.addClearButton(this.txtRealm);
|
98 |
toolsSwingManager.addClearButton(this.txtScope);
|
99 |
toolsSwingManager.addClearButton(this.txtScope);
|
100 |
toolsSwingManager.addClearButton(this.txtLocalPort);
|
101 |
toolsSwingManager.addClearButton(this.txtUrlKeycloak);
|
102 |
|
103 |
toolsSwingManager.setDefaultPopupMenu(this.txtRealm);
|
104 |
toolsSwingManager.setDefaultPopupMenu(this.txtScope);
|
105 |
toolsSwingManager.setDefaultPopupMenu(this.txtClientid);
|
106 |
toolsSwingManager.setDefaultPopupMenu(this.txtLocalPort);
|
107 |
toolsSwingManager.setDefaultPopupMenu(this.txtUrlKeycloak);
|
108 |
|
109 |
IntegerDocumentFilter.install(txtLocalPort); |
110 |
} |
111 |
|
112 |
} |
113 |
|