summaryrefslogtreecommitdiff
path: root/plugins/BlogspamNetPlugin.php
diff options
context:
space:
mode:
authorBrion Vibber <brion@pobox.com>2009-10-28 15:29:20 -0400
committerBrion Vibber <brion@pobox.com>2009-11-02 06:31:28 -0800
commitfa37967858c3c29000797e510e5f98aca8ab558f (patch)
tree994b75c5651431c99ff38bc4f9fc3f48d7d389a6 /plugins/BlogspamNetPlugin.php
parent8e64723813525f3911e3402f4ccf84d8813ce25a (diff)
Rebuilt HTTPClient class as an extension of PEAR HTTP_Request2 package, adding redirect handling and convenience functions.
Caching support will be added in future work after unit tests have been added. * extlib: add PEAR HTTP_Request2 0.4.1 alpha * extlib: update PEAR Net_URL2 to 0.3.0 beta for HTTP_Request2 compatibility * moved direct usage of CURL and file_get_contents to HTTPClient class, excluding external-sourced libraries Note some plugins haven't been tested yet.
Diffstat (limited to 'plugins/BlogspamNetPlugin.php')
-rw-r--r--plugins/BlogspamNetPlugin.php17
1 files changed, 9 insertions, 8 deletions
diff --git a/plugins/BlogspamNetPlugin.php b/plugins/BlogspamNetPlugin.php
index c14569746..3bdc73556 100644
--- a/plugins/BlogspamNetPlugin.php
+++ b/plugins/BlogspamNetPlugin.php
@@ -22,6 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
+ * @author Brion Vibber <brion@status.net>
* @copyright 2009 StatusNet, Inc.
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
@@ -69,14 +70,14 @@ class BlogspamNetPlugin extends Plugin
{
$args = $this->testArgs($notice);
common_debug("Blogspamnet args = " . print_r($args, TRUE));
- $request = xmlrpc_encode_request('testComment', array($args));
- $context = stream_context_create(array('http' => array('method' => "POST",
- 'header' =>
- "Content-Type: text/xml\r\n".
- "User-Agent: " . $this->userAgent(),
- 'content' => $request)));
- $file = file_get_contents($this->baseUrl, false, $context);
- $response = xmlrpc_decode($file);
+ $requestBody = xmlrpc_encode_request('testComment', array($args));
+
+ $request = new HTTPClient($this->baseUrl, HTTP_Request2::METHOD_POST);
+ $request->addHeader('Content-Type: text/xml');
+ $request->setBody($requestBody);
+ $httpResponse = $request->send();
+
+ $response = xmlrpc_decode($httpResponse->getBody());
if (xmlrpc_is_fault($response)) {
throw new ServerException("$response[faultString] ($response[faultCode])", 500);
} else {