Mercurial > dive4elements > river
view flys-client/src/main/java/de/intevation/flys/client/server/auth/was/Authenticator.java @ 4132:f6c73ee1b7f1
#543 Validate date range in client gauge time range selection state.
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Mon, 15 Oct 2012 09:29:25 +0200 |
parents | 23095983c249 |
children | 5041105d2edd |
line wrap: on
line source
package de.intevation.flys.client.server.auth.was; import java.io.IOException; import java.security.GeneralSecurityException; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.client.HttpClient; import org.apache.http.conn.scheme.Scheme; import org.apache.http.conn.ssl.SSLSocketFactory; import org.apache.http.impl.client.DefaultHttpClient; import de.intevation.flys.client.server.GGInATrustStrategy; import de.intevation.flys.client.server.auth.Authentication; import de.intevation.flys.client.server.auth.AuthenticationException; import de.intevation.flys.client.server.features.Features; public class Authenticator implements de.intevation.flys.client.server.auth.Authenticator { @Override public Authentication auth( String username, String password, String encoding, Features features ) throws AuthenticationException, IOException { try { SSLSocketFactory sf = new SSLSocketFactory( new GGInATrustStrategy()); Scheme https = new Scheme("https", 443, sf); HttpClient httpclient = new DefaultHttpClient(); httpclient.getConnectionManager().getSchemeRegistry().register( https); Request httpget = new Request("https://geoportal.bafg.de/" + "administration/WAS", username, password, encoding); HttpResponse response = httpclient.execute(httpget); HttpEntity entity = response.getEntity(); if (entity == null) { //FIXME throw AuthenticationException return null; } else { return new Response(entity, username, password, features); } } catch(GeneralSecurityException e) { throw new AuthenticationException(e); } } }