added SignatureType and querystring signing functionallity
This commit is contained in:
1 parent
931236561a
commit
193dcd2e25
3 files changed
+33
-2
No files matched your search
@@ -10,6 +10,7 @@ public class OAuthConfig
|
||||
private String apiKey;
|
||||
private String apiSecret;
|
||||
private String callback;
|
||||
private SignatureType signatureType;
|
||||
|
||||
public OAuthConfig(String key, String secret)
|
||||
{
|
||||
@@ -52,4 +53,14 @@ public class OAuthConfig
|
||||
{
|
||||
this.callback = callback;
|
||||
}
|
||||
|
||||
public SignatureType getSignatureType()
|
||||
{
|
||||
return signatureType != null ? signatureType : SignatureType.Header;
|
||||
}
|
||||
|
||||
public void setSignatureType(SignatureType type)
|
||||
{
|
||||
this.signatureType = type;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
package org.scribe.model;
|
||||
|
||||
public enum SignatureType
|
||||
{
|
||||
Header,
|
||||
QueryString
|
||||
}
|
||||
@@ -1,5 +1,7 @@
|
||||
package org.scribe.oauth;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import org.scribe.builder.api.*;
|
||||
import org.scribe.model.*;
|
||||
|
||||
@@ -110,7 +112,18 @@ public class OAuth10aServiceImpl implements OAuthService
|
||||
|
||||
private void addSignature(OAuthRequest request)
|
||||
{
|
||||
String oauthHeader = api.getHeaderExtractor().extract(request);
|
||||
request.addHeader(OAuthConstants.HEADER, oauthHeader);
|
||||
switch (config.getSignatureType())
|
||||
{
|
||||
case Header:
|
||||
String oauthHeader = api.getHeaderExtractor().extract(request);
|
||||
request.addHeader(OAuthConstants.HEADER, oauthHeader);
|
||||
break;
|
||||
case QueryString:
|
||||
for (Map.Entry<String, String> entry : request.getOauthParameters().entrySet())
|
||||
{
|
||||
request.addQuerystringParameter(entry.getKey(), entry.getValue());
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user