-/* $Id$
-
-This file is part of libmsphttp
-Copyright © 2008 Mikkosoft Productions, Mikko Rasa
-Distributed under the LGPL
-*/
-
#ifndef MSP_HTTP_CLIENT_H_
#define MSP_HTTP_CLIENT_H_
class Client
{
+public:
+ sigc::signal<void, const Response &> signal_response_complete;
+ sigc::signal<void, const std::exception *> signal_socket_error;
+
private:
Net::StreamSocket *sock;
IO::EventDispatcher *event_disp;
+ std::string user_agent;
Request *request;
Response *response;
std::string in_buf;
-public:
- sigc::signal<void, const Response &> signal_response_complete;
- sigc::signal<void, int> signal_socket_error;
-
-private:
Client(const Client &);
Client &operator=(const Client &);
public:
~Client();
void use_event_dispatcher(IO::EventDispatcher *);
+ void set_user_agent(const std::string &);
void start_request(const Request &);
- void get_url(const std::string &);
+ const Response *get_url(const std::string &);
void tick();
void wait_response();
void abort();
const Request *get_request() const { return request; }
const Response *get_response() const { return response; }
private:
- void connect_finished(int);
+ void connect_finished(const std::exception *);
void data_available();
};