]> git.tdb.fi Git - libs/net.git/blobdiff - source/http/client.h
Use std::unique_ptr for owning pointers
[libs/net.git] / source / http / client.h
index 2012498e67c79d5b6d86772993c3af48a64f169a..d79389a71d09bce9761243a56f255d019a2ddf97 100644 (file)
@@ -1,6 +1,7 @@
 #ifndef MSP_HTTP_CLIENT_H_
 #define MSP_HTTP_CLIENT_H_
 
+#include <memory>
 #include <string>
 #include <sigc++/signal.h>
 #include <msp/io/eventdispatcher.h>
@@ -30,14 +31,14 @@ private:
                void resolve_failed(unsigned, const std::exception &);
        };
 
-       Net::StreamSocket *sock = nullptr;
+       std::unique_ptr<Net::StreamSocket> sock;
        IO::EventDispatcher *event_disp = nullptr;
        Net::Resolver *resolver = nullptr;
-       ResolveListener *resolve_listener = nullptr;
+       std::unique_ptr<ResolveListener> resolve_listener;
        unsigned resolve_tag = 0;
        std::string user_agent = "libmspnet/1.0";
-       Request *request = nullptr;
-       Response *response = nullptr;
+       std::unique_ptr<Request> request;
+       std::unique_ptr<Response> response;
        std::string in_buf;
 
        Client(const Client &);
@@ -53,8 +54,8 @@ public:
        void tick();
        void wait_response();
        void abort();
-       const Request *get_request() const { return request; }
-       const Response *get_response() const { return response; }
+       const Request *get_request() const { return request.get(); }
+       const Response *get_response() const { return response.get(); }
 private:
        void address_resolved(unsigned, const Net::SockAddr &);
        void resolve_failed(unsigned, const std::exception &);