refactor configs to remove duplicate code and add http processor types to transport config

This commit is contained in:
Peter Thorson
2013-04-26 08:54:40 -05:00
parent f46b305df8
commit e6c0a7b506
9 changed files with 62 additions and 28 deletions

View File

@@ -40,6 +40,8 @@ namespace websocketpp {
namespace config {
struct asio_tls : public core {
typedef asio_tls type;
typedef core::concurrency_type concurrency_type;
typedef core::request_type request_type;
@@ -55,9 +57,11 @@ struct asio_tls : public core {
typedef core::rng_type rng_type;
struct transport_config {
typedef asio_tls::concurrency_type concurrency_type;
typedef asio_tls::alog_type alog_type;
typedef asio_tls::elog_type elog_type;
typedef type::concurrency_type concurrency_type;
typedef type::alog_type alog_type;
typedef type::elog_type elog_type;
typedef type::request_type request_type;
typedef type::response_type response_type;
typedef websocketpp::transport::asio::tls_socket::endpoint socket_type;
};

View File

@@ -40,6 +40,8 @@ namespace websocketpp {
namespace config {
struct asio_tls : public core_client {
typedef asio_tls type;
typedef core_client::concurrency_type concurrency_type;
typedef core_client::request_type request_type;
@@ -55,9 +57,11 @@ struct asio_tls : public core_client {
typedef core_client::rng_type rng_type;
struct transport_config {
typedef asio_tls::concurrency_type concurrency_type;
typedef asio_tls::alog_type alog_type;
typedef asio_tls::elog_type elog_type;
typedef type::concurrency_type concurrency_type;
typedef type::alog_type alog_type;
typedef type::elog_type elog_type;
typedef type::request_type request_type;
typedef type::response_type response_type;
typedef websocketpp::transport::asio::tls_socket::endpoint socket_type;
};

View File

@@ -35,6 +35,8 @@ namespace websocketpp {
namespace config {
struct asio : public core {
typedef asio type;
typedef core::concurrency_type concurrency_type;
typedef core::request_type request_type;
@@ -50,9 +52,11 @@ struct asio : public core {
typedef core::rng_type rng_type;
struct transport_config {
typedef asio::concurrency_type concurrency_type;
typedef asio::alog_type alog_type;
typedef asio::elog_type elog_type;
typedef type::concurrency_type concurrency_type;
typedef type::alog_type alog_type;
typedef type::elog_type elog_type;
typedef type::request_type request_type;
typedef type::response_type response_type;
typedef websocketpp::transport::asio::basic_socket::endpoint
socket_type;
};

View File

@@ -35,6 +35,8 @@ namespace websocketpp {
namespace config {
struct asio_client : public core_client {
typedef asio_client type;
typedef core_client::concurrency_type concurrency_type;
typedef core_client::request_type request_type;
@@ -50,9 +52,11 @@ struct asio_client : public core_client {
typedef core_client::rng_type rng_type;
struct transport_config {
typedef asio_client::concurrency_type concurrency_type;
typedef asio_client::alog_type alog_type;
typedef asio_client::elog_type elog_type;
typedef type::concurrency_type concurrency_type;
typedef type::alog_type alog_type;
typedef type::elog_type elog_type;
typedef type::request_type request_type;
typedef type::response_type response_type;
typedef websocketpp::transport::asio::basic_socket::endpoint
socket_type;
};

View File

@@ -65,6 +65,8 @@ namespace websocketpp {
namespace config {
struct core {
typedef core type;
// Concurrency policy
typedef websocketpp::concurrency::basic concurrency_type;
@@ -90,9 +92,11 @@ struct core {
typedef websocketpp::random::none::int_generator<uint32_t> rng_type;
struct transport_config {
typedef core::concurrency_type concurrency_type;
typedef core::elog_type elog_type;
typedef core::alog_type alog_type;
typedef type::concurrency_type concurrency_type;
typedef type::elog_type elog_type;
typedef type::alog_type alog_type;
typedef type::request_type request_type;
typedef type::response_type response_type;
};
/// Transport Endpoint Component

View File

@@ -63,6 +63,8 @@ namespace websocketpp {
namespace config {
struct core_client {
typedef core_client type;
// Concurrency policy
typedef websocketpp::concurrency::basic concurrency_type;
@@ -89,9 +91,11 @@ struct core_client {
concurrency_type> rng_type;
struct transport_config {
typedef core_client::concurrency_type concurrency_type;
typedef core_client::elog_type elog_type;
typedef core_client::alog_type alog_type;
typedef type::concurrency_type concurrency_type;
typedef type::elog_type elog_type;
typedef type::alog_type alog_type;
typedef type::request_type request_type;
typedef type::response_type response_type;
};
/// Transport Endpoint Component

View File

@@ -65,6 +65,8 @@ namespace websocketpp {
namespace config {
struct debug_core {
typedef debug_core type;
// Concurrency policy
typedef websocketpp::concurrency::basic concurrency_type;
@@ -90,9 +92,11 @@ struct debug_core {
typedef websocketpp::random::none::int_generator<uint32_t> rng_type;
struct transport_config {
typedef debug_core::concurrency_type concurrency_type;
typedef debug_core::elog_type elog_type;
typedef debug_core::alog_type alog_type;
typedef type::concurrency_type concurrency_type;
typedef type::elog_type elog_type;
typedef type::alog_type alog_type;
typedef type::request_type request_type;
typedef type::response_type response_type;
};
/// Transport Endpoint Component
@@ -172,7 +176,7 @@ struct debug_core {
/// permessage_compress extension
struct permessage_deflate_config {
typedef debug_core::request_type request_type;
typedef type::request_type request_type;
/// If the remote endpoint requests that we reset the compression
/// context after each message should we honor the request?

View File

@@ -40,6 +40,7 @@ namespace websocketpp {
namespace config {
struct debug_asio_tls : public debug_core {
typedef debug_asio_tls type;
typedef debug_core base;
typedef base::concurrency_type concurrency_type;
@@ -57,9 +58,11 @@ struct debug_asio_tls : public debug_core {
typedef base::rng_type rng_type;
struct transport_config {
typedef debug_asio_tls::concurrency_type concurrency_type;
typedef debug_asio_tls::alog_type alog_type;
typedef debug_asio_tls::elog_type elog_type;
typedef type::concurrency_type concurrency_type;
typedef type::alog_type alog_type;
typedef type::elog_type elog_type;
typedef type::request_type request_type;
typedef type::response_type response_type;
typedef websocketpp::transport::asio::tls_socket::endpoint socket_type;
};

View File

@@ -35,6 +35,7 @@ namespace websocketpp {
namespace config {
struct debug_asio : public debug_core {
typedef debug_asio type;
typedef debug_core base;
typedef base::concurrency_type concurrency_type;
@@ -52,9 +53,11 @@ struct debug_asio : public debug_core {
typedef base::rng_type rng_type;
struct transport_config {
typedef debug_asio::concurrency_type concurrency_type;
typedef debug_asio::alog_type alog_type;
typedef debug_asio::elog_type elog_type;
typedef type::concurrency_type concurrency_type;
typedef type::alog_type alog_type;
typedef type::elog_type elog_type;
typedef type::request_type request_type;
typedef type::response_type response_type;
typedef websocketpp::transport::asio::basic_socket::endpoint
socket_type;
};