Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
Output
Winx64
Build
PublishedApi
BeHttp
HttpHeaderProvider.h
Go to the documentation of this file.
1
/*--------------------------------------------------------------------------------------+
2
|
3
| Supplied under applicable software license agreement.
4
|
5
| Copyright (c) 2018 Bentley Systems, Incorporated. All rights reserved.
6
|
7
+---------------------------------------------------------------------------------------*/
8
#pragma once
9
10
#include <
BeHttp/IHttpHeaderProvider.h
>
11
12
BEGIN_BENTLEY_HTTP_NAMESPACE
13
14
/*--------------------------------------------------------------------------------------+
15
* @bsiclass Bentley Systems
16
+---------------+---------------+---------------+---------------+---------------+------*/
17
struct
HttpHeaderProvider
:
public
IHttpHeaderProvider
18
{
19
private
:
20
HttpRequestHeaders
m_headers;
21
22
public
:
23
static
IHttpHeaderProviderPtr
Create
(
HttpRequestHeadersCR
headers =
HttpRequestHeaders
())
24
{
25
return
std::make_shared<HttpHeaderProvider> (headers);
26
};
27
HttpHeaderProvider
(
HttpRequestHeadersCR
headers) : m_headers(headers){};
28
virtual
~HttpHeaderProvider
(){};
29
30
virtual
void
FillHttpRequestHeaders
(
HttpRequestHeaders
& headersOut)
const override
31
{
32
for
(
auto
& pair : m_headers.
GetMap
())
33
{
34
headersOut.
SetValue
(pair.first, pair.second);
35
}
36
};
37
};
38
39
END_BENTLEY_HTTP_NAMESPACE
BEGIN_BENTLEY_HTTP_NAMESPACE
#define BEGIN_BENTLEY_HTTP_NAMESPACE
Definition:
Http.h:17
HttpHeaderProvider::HttpHeaderProvider
HttpHeaderProvider(HttpRequestHeadersCR headers)
Definition:
HttpHeaderProvider.h:27
HttpHeaderProvider
Definition:
HttpHeaderProvider.h:17
IHttpHeaderProvider
Definition:
IHttpHeaderProvider.h:18
HttpRequestHeaders
Definition:
HttpHeaders.h:64
HttpRequestHeadersCR
HttpRequestHeaders const & HttpRequestHeadersCR
Definition:
HttpHeaders.h:32
HttpHeaderProvider::Create
static IHttpHeaderProviderPtr Create(HttpRequestHeadersCR headers=HttpRequestHeaders())
Definition:
HttpHeaderProvider.h:23
IHttpHeaderProviderPtr
BEGIN_BENTLEY_HTTP_NAMESPACE typedef std::shared_ptr< struct IHttpHeaderProvider > IHttpHeaderProviderPtr
Definition:
IHttpHeaderProvider.h:17
HttpHeaders::GetMap
HttpHeaderMap const & GetMap() const
Definition:
HttpHeaders.h:45
END_BENTLEY_HTTP_NAMESPACE
#define END_BENTLEY_HTTP_NAMESPACE
Definition:
Http.h:18
IHttpHeaderProvider.h
HttpHeaders::SetValue
BEHTTP_EXPORT void SetValue(Utf8StringCR field, Utf8StringCR value)
HttpHeaderProvider::FillHttpRequestHeaders
virtual void FillHttpRequestHeaders(HttpRequestHeaders &headersOut) const override
Definition:
HttpHeaderProvider.h:30
HttpHeaderProvider::~HttpHeaderProvider
virtual ~HttpHeaderProvider()
Definition:
HttpHeaderProvider.h:28
Copyright © 2017 Bentley Systems, Incorporated. All rights reserved.