splits asio/asio_no_tls up a bit better, adds logging information to configs

This commit is contained in:
Peter Thorson
2013-01-27 08:19:19 -06:00
parent a5d3555f96
commit 389e5925d7
3 changed files with 45 additions and 43 deletions

View File

@@ -25,43 +25,23 @@
*
*/
#ifndef WEBSOCKETPP_CONFIG_ASIO_HPP
#define WEBSOCKETPP_CONFIG_ASIO_HPP
#ifndef WEBSOCKETPP_CONFIG_ASIO_TLS_HPP
#define WEBSOCKETPP_CONFIG_ASIO_TLS_HPP
#include <websocketpp/config/core.hpp>
#include <websocketpp/transport/asio/endpoint.hpp>
#include <websocketpp/transport/asio/security/tls.hpp>
// Pull in non-tls config
#include <websocketpp/config/asio_no_tls.hpp>
// Define TLS config
namespace websocketpp {
namespace config {
struct asio : public core {
typedef core::concurrency_type concurrency_type;
typedef websocketpp::transport::asio::basic_socket::endpoint socket_type;
typedef websocketpp::transport::asio::endpoint<concurrency_type,socket_type>
transport_type;
typedef core::request_type request_type;
typedef core::response_type response_type;
typedef core::message_type message_type;
typedef core::con_msg_manager_type con_msg_manager_type;
typedef core::endpoint_msg_manager_type endpoint_msg_manager_type;
typedef core::alog_type alog_type;
typedef core::alog_type elog_type;
};
struct asio_tls : public core {
typedef core::concurrency_type concurrency_type;
typedef websocketpp::transport::asio::tls_socket::endpoint socket_type;
typedef websocketpp::transport::asio::endpoint<concurrency_type,socket_type>
transport_type;
typedef core::request_type request_type;
typedef core::response_type response_type;
@@ -71,9 +51,19 @@ struct asio_tls : public core {
typedef core::alog_type alog_type;
typedef core::alog_type elog_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 websocketpp::transport::asio::tls_socket::endpoint socket_type;
};
typedef websocketpp::transport::asio::endpoint<transport_config>
transport_type;
};
} // namespace config
} // namespace websocketpp
#endif // WEBSOCKETPP_CONFIG_CORE_HPP
#endif // WEBSOCKETPP_CONFIG_ASIO_TLS_HPP

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, Peter Thorson. All rights reserved.
* Copyright (c) 2013, Peter Thorson. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
@@ -37,11 +37,6 @@ namespace config {
struct asio : public core {
typedef core::concurrency_type concurrency_type;
typedef websocketpp::transport::asio::basic_socket::endpoint socket_type;
typedef websocketpp::transport::asio::endpoint<concurrency_type,socket_type>
transport_type;
typedef core::request_type request_type;
typedef core::response_type response_type;
@@ -51,9 +46,20 @@ struct asio : public core {
typedef core::alog_type alog_type;
typedef core::alog_type elog_type;
struct transport_config {
typedef asio::concurrency_type concurrency_type;
typedef asio::alog_type alog_type;
typedef asio::elog_type elog_type;
typedef websocketpp::transport::asio::basic_socket::endpoint
socket_type;
};
typedef websocketpp::transport::asio::endpoint<transport_config>
transport_type;
};
} // namespace config
} // namespace websocketpp
#endif // WEBSOCKETPP_CONFIG_CORE_HPP
#endif // WEBSOCKETPP_CONFIG_ASIO_HPP

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, Peter Thorson. All rights reserved.
* Copyright (c) 2013, Peter Thorson. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
@@ -55,10 +55,6 @@ struct core {
// Concurrency policy
typedef websocketpp::concurrency::basic concurrency_type;
// Transport Policy
typedef websocketpp::transport::iostream::endpoint<concurrency_type>
transport_type;
// HTTP Parser Policies
typedef http::parser::request request_type;
typedef http::parser::response response_type;
@@ -72,11 +68,21 @@ struct core {
endpoint_msg_manager_type;
/// Logging policies
typedef websocketpp::logger::basic<concurrency_type,
websocketpp::logger::error_names> elog_type;
typedef websocketpp::logger::basic<concurrency_type,
websocketpp::logger::access_names> alog_type;
typedef websocketpp::log::basic<concurrency_type,
websocketpp::log::elevel> elog_type;
typedef websocketpp::log::basic<concurrency_type,
websocketpp::log::alevel> alog_type;
struct transport_config {
typedef core::concurrency_type concurrency_type;
typedef core::elog_type elog_type;
typedef core::alog_type alog_type;
};
/// Transport Endpoint Component
typedef websocketpp::transport::iostream::endpoint<transport_config>
transport_type;
///
static const size_t connection_read_buffer_size = 32;