diff options
Diffstat (limited to 'src/io/HttpURLConnectionPostRequestAdapter.java')
-rw-r--r-- | src/io/HttpURLConnectionPostRequestAdapter.java | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/io/HttpURLConnectionPostRequestAdapter.java b/src/io/HttpURLConnectionPostRequestAdapter.java new file mode 100644 index 0000000..51cbc7c --- /dev/null +++ b/src/io/HttpURLConnectionPostRequestAdapter.java @@ -0,0 +1,34 @@ +package io; + +import java.io.ByteArrayInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.net.HttpURLConnection; +import oauth.signpost.basic.HttpURLConnectionRequestAdapter; +import org.apache.commons.io.Charsets; + +/** + * Adapts a HttpUrlConnection instance with the POST method for use with OAuth + * signing. + * + * @author Peter Wu + */ +public class HttpURLConnectionPostRequestAdapter extends + HttpURLConnectionRequestAdapter { + + private final String postData; + + public HttpURLConnectionPostRequestAdapter(HttpURLConnection connection, + String postData) { + super(connection); + this.postData = postData; + } + + @Override + public InputStream getMessagePayload() throws IOException { + // the super function returned null because it was unable to get the + // post data... + byte[] buf = postData.getBytes(Charsets.UTF_8); + return new ByteArrayInputStream(buf); + } +} |