mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-12-09 04:02:25 +01:00
Merge #9517: [refactor] Switched httpserver.cpp to use RAII wrapped libevents.
1ae86ecChanged event RAII helper functions to inline to deal with duplicate symbol linker errors. (Karl-Johan Alm)fd369d2Switched httpserver.cpp to use RAII wrapped libevents. (Kalle Alm) Tree-SHA512: 877e431f211024d42a3b0800e860e02833398611433e8393f8d5d4970f47f4bd670b900443678c067fec110c087aaab7dc1981ccbf17f6057676fdbbda89aed9
This commit is contained in:
@@ -27,26 +27,26 @@ MAKE_RAII(evhttp);
|
||||
MAKE_RAII(evhttp_request);
|
||||
MAKE_RAII(evhttp_connection);
|
||||
|
||||
raii_event_base obtain_event_base() {
|
||||
inline raii_event_base obtain_event_base() {
|
||||
auto result = raii_event_base(event_base_new());
|
||||
if (!result.get())
|
||||
throw std::runtime_error("cannot create event_base");
|
||||
return result;
|
||||
}
|
||||
|
||||
raii_event obtain_event(struct event_base* base, evutil_socket_t s, short events, event_callback_fn cb, void* arg) {
|
||||
inline raii_event obtain_event(struct event_base* base, evutil_socket_t s, short events, event_callback_fn cb, void* arg) {
|
||||
return raii_event(event_new(base, s, events, cb, arg));
|
||||
}
|
||||
|
||||
raii_evhttp obtain_evhttp(struct event_base* base) {
|
||||
inline raii_evhttp obtain_evhttp(struct event_base* base) {
|
||||
return raii_evhttp(evhttp_new(base));
|
||||
}
|
||||
|
||||
raii_evhttp_request obtain_evhttp_request(void(*cb)(struct evhttp_request *, void *), void *arg) {
|
||||
inline raii_evhttp_request obtain_evhttp_request(void(*cb)(struct evhttp_request *, void *), void *arg) {
|
||||
return raii_evhttp_request(evhttp_request_new(cb, arg));
|
||||
}
|
||||
|
||||
raii_evhttp_connection obtain_evhttp_connection_base(struct event_base* base, std::string host, uint16_t port) {
|
||||
inline raii_evhttp_connection obtain_evhttp_connection_base(struct event_base* base, std::string host, uint16_t port) {
|
||||
auto result = raii_evhttp_connection(evhttp_connection_base_new(base, NULL, host.c_str(), port));
|
||||
if (!result.get())
|
||||
throw std::runtime_error("create connection failed");
|
||||
|
||||
Reference in New Issue
Block a user