summaryrefslogtreecommitdiffhomepage
path: root/NetEx/HttpClient.h
blob: 02bf923bcc7d61cbe0de935b59e53f2beb1f00dd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
/*  Starshatter: The Open Source Project
    Copyright (c) 2021-2022, Starshatter: The Open Source Project Contributors
    Copyright (c) 2011-2012, Starshatter OpenSource Distribution Contributors
    Copyright (c) 1997-2006, Destroyer Studios LLC.

     AUTHOR:       John DiCamillo


     OVERVIEW
     ========
     HTTP/1.1 client class
*/


#ifndef HttpClient_h
#define HttpClient_h

#include "NetClient.h"
#include "HttpServer.h"

// +-------------------------------------------------------------------+

class HttpClient : public NetClient
{
public:
    static const char* TYPENAME() { return "HttpClient"; }

    HttpClient(const NetAddr& server_addr);
    virtual ~HttpClient();

    int operator == (const HttpClient& c)   const { return this == &c; }

    HttpResponse*     DoRequest(HttpRequest& request);

protected:
    void              CombineCookies(List<HttpParam>& dst, List<HttpParam>& src);

    List<HttpParam>   cookies;
};


#endif  // HttpClient_h