Revision 9516

View differences:

org.gvsig.online/trunk/org.gvsig.online/org.gvsig.online.swing/org.gvsig.online.swing.scribejava/src/main/java/org/gvsig/online/swing/scribejava/keycloak/UserIdentificationKeycloak.java
21 21
 */
22 22
package org.gvsig.online.swing.scribejava.keycloak;
23 23

  
24
import org.gvsig.online.swing.scribejava.keycloak.callbacks.CallbackAuthorizationHandler;
25
import javax.swing.SwingUtilities;
26
import org.apache.commons.lang3.mutable.MutableBoolean;
27
import org.gvsig.online.lib.api.OnlineUserIdentificationRequester;
28

  
29 24
import com.github.scribejava.apis.KeycloakApi;
30 25
import com.github.scribejava.core.builder.ServiceBuilder;
31 26
import com.github.scribejava.core.model.OAuthRequest;
32 27
import com.github.scribejava.core.model.Response;
33 28
import com.github.scribejava.core.model.Verb;
34 29
import com.github.scribejava.core.oauth.OAuth20Service;
35
import java.awt.Desktop;
36 30
import java.awt.Frame;
37

  
38 31
import java.io.IOException;
39 32
import java.net.URI;
40 33
import java.net.URISyntaxException;
41 34
import java.util.UUID;
42 35
import java.util.concurrent.ExecutionException;
43 36
import javax.json.JsonObject;
37
import javax.swing.SwingUtilities;
44 38
import org.apache.commons.codec.net.URLCodec;
45 39
import org.apache.commons.lang.StringUtils;
40
import org.apache.commons.lang3.mutable.MutableBoolean;
41
import org.gvsig.desktopopen.DesktopOpen;
46 42
import org.gvsig.json.Json;
43
import org.gvsig.online.lib.api.OnlineUserIdentificationRequester;
44
import org.gvsig.online.swing.scribejava.keycloak.callbacks.CallbackAuthorizationHandler;
47 45
import org.gvsig.online.swing.scribejava.keycloak.callbacks.CallbackLogoutHandler;
48 46
import org.gvsig.tools.library.impl.DefaultLibrariesInitializer;
47
import org.gvsig.tools.util.ToolsUtilLocator;
49 48
import org.slf4j.Logger;
50 49
import org.slf4j.LoggerFactory;
51 50

  
......
148 147
        try {
149 148
            factory.addCallback(config, contextPath, callbackHandler);
150 149
            final String authorizationUrl = service.getAuthorizationUrl();
151
            Desktop.getDesktop().browse(new URI(authorizationUrl));
150
            browse(authorizationUrl);
152 151
            this.waitForResponse();
153 152
        } catch(Exception e) {
154 153
            LOGGER.warn("Can't authorize",e);
......
173 172
            
174 173
            factory.addCallback(config, contextPath, callbackHandler);
175 174
            String logoutUrl = String.format(
176
                    "%s/auth/realms/%s/protocol/openid-connect/logout?post_logout_redirect_uri=%s&client_id=%s",
175
//                    "%s/auth/realms/%s/protocol/openid-connect/logout?post_logout_redirect_uri=%s&client_id=%s",
176
                    "%s/auth/realms/%s/protocol/openid-connect/logout?redirect_uri=%s&client_id=%s",
177 177
                    config.getBaseurl(),
178 178
                    realm,
179 179
                    redirect_uri,
180 180
                    client_id
181 181
            );
182 182
            
183
            Desktop.getDesktop().browse(new URI(logoutUrl));
183
            browse(logoutUrl);
184 184
            this.waitForResponse();
185 185
        } catch(Exception e) {
186 186
            LOGGER.warn("Can't logout",e);
......
191 191
//            LOGGER.info("logout finally2 "+requestId);
192 192
        }
193 193
    }
194
    
195
    private void browse(String url) throws URISyntaxException, IOException {
196
//        Desktop.getDesktop().browse(new URI(url));
197
        DesktopOpen desktop = ToolsUtilLocator.getToolsUtilManager().createDesktopOpen();
198
        desktop.browse(new URI(url));
199
    }
194 200

  
195 201
    public JsonObject  userInfo(OAuth20Service service) throws InterruptedException, IOException, ExecutionException {
196 202
//        LOGGER.info("userInfo");
......
256 262

  
257 263
        UserIdentificationKeycloakConfig conf = factory.create("https://devel.gvsigonline.com/gvsigonline");
258 264

  
259
        conf.setLocalPort(8888);
265
        conf.setLocalPort(8889);
260 266
        conf.setBaseurl("https://keycloak.scolab.eu");
261 267
        conf.setRealm("joaquin");
262 268

  
org.gvsig.online/trunk/org.gvsig.online/org.gvsig.online.swing/org.gvsig.online.swing.scribejava/src/main/java/org/gvsig/online/swing/scribejava/keycloak/UserIdentificationKeycloakConfig.java
39 39
    private String realm;
40 40
    private String baseurl;
41 41
    private int localPort;
42

  
43
    public UserIdentificationKeycloakConfig() {
44
        super((UserIdentificationKeycloakFactory)null, null);
45
    }
42 46
    
43 47
    public UserIdentificationKeycloakConfig(UserIdentificationKeycloakFactory factory, String urlOnline) {
44 48
        super(factory,urlOnline);
org.gvsig.online/trunk/org.gvsig.online/org.gvsig.online.swing/org.gvsig.online.swing.scribejava/src/main/java/org/gvsig/online/swing/scribejava/keycloak/UserIdentificationKeycloakConfigPanel.java
10 10
import org.apache.commons.lang3.StringUtils;
11 11
import org.gvsig.tools.ToolsLocator;
12 12
import org.gvsig.tools.bookmarksandhistory.Bookmarks;
13
import org.gvsig.tools.bookmarksandhistory.BookmarksAndHistoryManager;
14 13
import org.gvsig.tools.bookmarksandhistory.History;
15 14
import org.gvsig.tools.swing.api.ToolsSwingLocator;
16 15
import org.gvsig.tools.swing.api.ToolsSwingManager;
......
28 27
public class UserIdentificationKeycloakConfigPanel 
29 28
    extends UserIdentificationKeycloakConfigPanelView {
30 29
    
31
    private static final String BOOKMARKSANDHISTORY_NAME = "online_keykloak_config";
30
    private static final String BOOKMARKSANDHISTORY_NAME = "online_keycloak_config";
32 31
    
33 32
    private UserIdentificationKeycloakFactory factory;
34 33
//    private TextFieldWithHistoryAndBookmarkController urlKeycloakController;

Also available in: Unified diff