@@ -251,6 +251,13 @@ struct RetryPolicy
251251class Request
252252{
253253public:
254+ Request () = default ;
255+
256+ Request (const Request &) = delete ;
257+ Request (Request &&) = delete ;
258+ Request &operator =(const Request &) = delete ;
259+ Request &operator =(Request &&) = delete ;
260+
254261 virtual void SetMethod (Method method) noexcept = 0;
255262
256263 virtual void SetUri (nostd::string_view uri) noexcept = 0;
@@ -277,6 +284,13 @@ class Request
277284class Response
278285{
279286public:
287+ Response () = default ;
288+
289+ Response (const Response &) = delete ;
290+ Response (Response &&) = delete ;
291+ Response &operator =(const Response &) = delete ;
292+ Response &operator =(Response &&) = delete ;
293+
280294 virtual const Body &GetBody () const noexcept = 0;
281295
282296 virtual bool ForEachHeader (
@@ -344,6 +358,13 @@ class Result
344358class EventHandler
345359{
346360public:
361+ EventHandler () = default ;
362+
363+ EventHandler (const EventHandler &) = delete ;
364+ EventHandler (EventHandler &&) = delete ;
365+ EventHandler &operator =(const EventHandler &) = delete ;
366+ EventHandler &operator =(EventHandler &&) = delete ;
367+
347368 virtual void OnResponse (Response &) noexcept = 0;
348369
349370 virtual void OnEvent (SessionState, nostd::string_view) noexcept = 0;
@@ -354,6 +375,13 @@ class EventHandler
354375class Session
355376{
356377public:
378+ Session () = default ;
379+
380+ Session (const Session &) = delete ;
381+ Session (Session &&) = delete ;
382+ Session &operator =(const Session &) = delete ;
383+ Session &operator =(Session &&) = delete ;
384+
357385 virtual std::shared_ptr<Request> CreateRequest () noexcept = 0;
358386
359387 virtual void SendRequest (std::shared_ptr<EventHandler>) noexcept = 0;
@@ -370,6 +398,13 @@ class Session
370398class HttpClient
371399{
372400public:
401+ HttpClient () = default ;
402+
403+ HttpClient (const HttpClient &) = delete ;
404+ HttpClient (HttpClient &&) = delete ;
405+ HttpClient &operator =(const HttpClient &) = delete ;
406+ HttpClient &operator =(HttpClient &&) = delete ;
407+
373408 virtual std::shared_ptr<Session> CreateSession (nostd::string_view url) noexcept = 0;
374409
375410 virtual bool CancelAllSessions () noexcept = 0;
@@ -384,6 +419,13 @@ class HttpClient
384419class HttpClientSync
385420{
386421public:
422+ HttpClientSync () = default ;
423+
424+ HttpClientSync (const HttpClientSync &) = delete ;
425+ HttpClientSync (HttpClientSync &&) = delete ;
426+ HttpClientSync &operator =(const HttpClientSync &) = delete ;
427+ HttpClientSync &operator =(HttpClientSync &&) = delete ;
428+
387429 Result GetNoSsl (const nostd::string_view &url,
388430 const Headers &headers = {{}},
389431 const Compression &compression = Compression::kNone ) noexcept
0 commit comments