You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@abdera.apache.org by jm...@apache.org on 2007/04/18 23:49:49 UTC
svn commit: r530172 - in /incubator/abdera/java/trunk:
client/src/main/java/org/apache/abdera/protocol/client/
extensions/src/main/java/org/apache/abdera/ext/gdata/
extensions/src/main/java/org/apache/abdera/ext/wsse/
Author: jmsnell
Date: Wed Apr 18 14:49:48 2007
New Revision: 530172
URL: http://svn.apache.org/viewvc?view=rev&rev=530172
Log:
Make it a bit easier to register alternative auth schemes
Modified:
incubator/abdera/java/trunk/client/src/main/java/org/apache/abdera/protocol/client/CommonsClient.java
incubator/abdera/java/trunk/extensions/src/main/java/org/apache/abdera/ext/gdata/GoogleLoginAuthScheme.java
incubator/abdera/java/trunk/extensions/src/main/java/org/apache/abdera/ext/wsse/WSSEAuthScheme.java
Modified: incubator/abdera/java/trunk/client/src/main/java/org/apache/abdera/protocol/client/CommonsClient.java
URL: http://svn.apache.org/viewvc/incubator/abdera/java/trunk/client/src/main/java/org/apache/abdera/protocol/client/CommonsClient.java?view=diff&rev=530172&r1=530171&r2=530172
==============================================================================
--- incubator/abdera/java/trunk/client/src/main/java/org/apache/abdera/protocol/client/CommonsClient.java (original)
+++ incubator/abdera/java/trunk/client/src/main/java/org/apache/abdera/protocol/client/CommonsClient.java Wed Apr 18 14:49:48 2007
@@ -88,6 +88,7 @@
HttpClientParams.USE_EXPECT_CONTINUE, true);
client.getParams().setCookiePolicy(
CookiePolicy.BROWSER_COMPATIBILITY);
+ setAuthenticationSchemeDefaults();
}
/**
@@ -225,11 +226,20 @@
scope, credentials);
}
+ public void setAuthenticationSchemeDefaults() {
+ List authPrefs = AuthPolicy.getDefaultAuthPrefs();
+ client.getParams().setParameter(AuthPolicy.AUTH_SCHEME_PRIORITY, authPrefs);
+ }
+
public void setAuthenticationSchemePriority(String... scheme) {
List authPrefs = java.util.Arrays.asList(scheme);
client.getParams().setParameter(
AuthPolicy.AUTH_SCHEME_PRIORITY,
authPrefs);
+ }
+
+ public List getAuthenticationSchemePriority() {
+ return (List)client.getParams().getParameter(AuthPolicy.AUTH_SCHEME_PRIORITY);
}
/**
Modified: incubator/abdera/java/trunk/extensions/src/main/java/org/apache/abdera/ext/gdata/GoogleLoginAuthScheme.java
URL: http://svn.apache.org/viewvc/incubator/abdera/java/trunk/extensions/src/main/java/org/apache/abdera/ext/gdata/GoogleLoginAuthScheme.java?view=diff&rev=530172&r1=530171&r2=530172
==============================================================================
--- incubator/abdera/java/trunk/extensions/src/main/java/org/apache/abdera/ext/gdata/GoogleLoginAuthScheme.java (original)
+++ incubator/abdera/java/trunk/extensions/src/main/java/org/apache/abdera/ext/gdata/GoogleLoginAuthScheme.java Wed Apr 18 14:49:48 2007
@@ -55,8 +55,12 @@
extends RFC2617Scheme
implements AuthScheme {
- public static void register() {
+ public static void register(Client client, boolean exclusive) {
Client.registerScheme("GoogleLogin", GoogleLoginAuthScheme.class);
+ if (exclusive)
+ ((CommonsClient)client).setAuthenticationSchemePriority("GoogleLogin");
+ else
+ ((CommonsClient)client).setAuthenticationSchemeDefaults();
}
private String service = null;
Modified: incubator/abdera/java/trunk/extensions/src/main/java/org/apache/abdera/ext/wsse/WSSEAuthScheme.java
URL: http://svn.apache.org/viewvc/incubator/abdera/java/trunk/extensions/src/main/java/org/apache/abdera/ext/wsse/WSSEAuthScheme.java?view=diff&rev=530172&r1=530171&r2=530172
==============================================================================
--- incubator/abdera/java/trunk/extensions/src/main/java/org/apache/abdera/ext/wsse/WSSEAuthScheme.java (original)
+++ incubator/abdera/java/trunk/extensions/src/main/java/org/apache/abdera/ext/wsse/WSSEAuthScheme.java Wed Apr 18 14:49:48 2007
@@ -22,6 +22,8 @@
import java.util.Date;
import org.apache.abdera.model.AtomDate;
+import org.apache.abdera.protocol.client.Client;
+import org.apache.abdera.protocol.client.CommonsClient;
import org.apache.commons.codec.binary.Base64;
import org.apache.commons.codec.binary.Hex;
import org.apache.commons.httpclient.Credentials;
@@ -42,6 +44,14 @@
implements AuthScheme {
private final int NONCE_LENGTH = 16;
+
+ public static void register(Client client, boolean exclusive) {
+ Client.registerScheme("WSSE", WSSEAuthScheme.class);
+ if (exclusive)
+ ((CommonsClient)client).setAuthenticationSchemePriority("WSSE");
+ else
+ ((CommonsClient)client).setAuthenticationSchemeDefaults();
+ }
@Override
public String authenticate(