diff --git a/Builds/VisualStudio2012/RippleD.vcxproj b/Builds/VisualStudio2012/RippleD.vcxproj
index d436dc276a..ecf7767f0c 100644
--- a/Builds/VisualStudio2012/RippleD.vcxproj
+++ b/Builds/VisualStudio2012/RippleD.vcxproj
@@ -31,6 +31,18 @@
true
true
+
+ true
+ true
+ true
+ true
+
+
+ true
+ true
+ true
+ true
+
true
true
@@ -671,18 +683,6 @@
true
true
-
- true
- true
- true
- true
-
-
- true
- true
- true
- true
-
true
@@ -1379,6 +1379,8 @@
+
+
@@ -1479,11 +1481,7 @@
-
-
-
-
diff --git a/Builds/VisualStudio2012/RippleD.vcxproj.filters b/Builds/VisualStudio2012/RippleD.vcxproj.filters
index 94e9ddf1d2..5cf4f6ab53 100644
--- a/Builds/VisualStudio2012/RippleD.vcxproj.filters
+++ b/Builds/VisualStudio2012/RippleD.vcxproj.filters
@@ -157,12 +157,12 @@
{a8c5d8be-1e90-4e9c-be7f-d2da53920cd4}
-
- {f4e4fbf0-3dd2-4413-8318-9d6bc15ada57}
-
{625992a9-7333-4782-8ee3-6ed072d02fe5}
+
+ {8476f6e8-7411-460f-bdef-68e3166078eb}
+
@@ -882,15 +882,15 @@
[1] Ripple\ripple_asio
-
- [1] Ripple\ripple_asio\boost
-
-
- [1] Ripple\ripple_asio\boost
-
[1] Ripple\ripple_asio\sockets
+
+ [1] Ripple\ripple_app\boost
+
+
+ [1] Ripple\ripple_app\boost
+
@@ -1670,18 +1670,6 @@
[1] Ripple\ripple_asio
-
- [1] Ripple\ripple_asio
-
-
- [1] Ripple\ripple_asio
-
-
- [1] Ripple\ripple_asio\boost
-
-
- [1] Ripple\ripple_asio\boost
-
[1] Ripple\ripple_asio\sockets
@@ -1694,6 +1682,12 @@
[1] Ripple\ripple_asio\sockets
+
+ [1] Ripple\ripple_app\boost
+
+
+ [1] Ripple\ripple_app\boost
+
diff --git a/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj b/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj
index 0e1234873b..d640a10e5b 100644
--- a/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj
+++ b/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj
@@ -83,7 +83,6 @@
-
diff --git a/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj.filters b/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj.filters
index 6ae621f34a..a782b727c5 100644
--- a/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj.filters
+++ b/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj.filters
@@ -785,9 +785,6 @@
beast_asio\tests
-
- beast_asio\sockets
-
beast_asio\tests
diff --git a/Subtrees/beast/modules/beast_asio/beast_asio.h b/Subtrees/beast/modules/beast_asio/beast_asio.h
index e797f6567f..8b5ab9dc8b 100644
--- a/Subtrees/beast/modules/beast_asio/beast_asio.h
+++ b/Subtrees/beast/modules/beast_asio/beast_asio.h
@@ -57,7 +57,6 @@ namespace beast
#include "sockets/beast_SocketBase.h"
#include "sockets/beast_Socket.h"
#include "sockets/beast_SocketInterface.h"
-#include "sockets/beast_SocketWrapperBasics.h"
#include "sockets/beast_SocketWrapper.h"
#include "sockets/beast_SharedSocket.h"
#include "sockets/beast_SslContext.h"
diff --git a/Subtrees/beast/modules/beast_asio/sockets/beast_SocketWrapper.h b/Subtrees/beast/modules/beast_asio/sockets/beast_SocketWrapper.h
index 1fb1d4c16e..a4c06a05de 100644
--- a/Subtrees/beast/modules/beast_asio/sockets/beast_SocketWrapper.h
+++ b/Subtrees/beast/modules/beast_asio/sockets/beast_SocketWrapper.h
@@ -119,8 +119,7 @@ namespace SocketWrapperMemberChecks
template
class SocketWrapper
- : public virtual Socket
- , public SocketWrapperBasics
+ : public Socket
, public Uncopyable
{
private:
diff --git a/Subtrees/beast/modules/beast_asio/sockets/beast_SocketWrapperBasics.h b/Subtrees/beast/modules/beast_asio/sockets/beast_SocketWrapperBasics.h
deleted file mode 100644
index ab06f719c3..0000000000
--- a/Subtrees/beast/modules/beast_asio/sockets/beast_SocketWrapperBasics.h
+++ /dev/null
@@ -1,136 +0,0 @@
-//------------------------------------------------------------------------------
-/*
- This file is part of Beast: https://github.com/vinniefalco/Beast
- Copyright 2013, Vinnie Falco
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- ANY SPECIAL , DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-*/
-//==============================================================================
-
-#ifndef BEAST_SOCKETWRAPPERBASICS_H_INCLUDED
-#define BEAST_SOCKETWRAPPERBASICS_H_INCLUDED
-
-/** Some utilities for SocketWrapper and others.
-*/
-class SocketWrapperBasics
-{
-public:
-#if 0
- /** Template specialization to determine available interfaces. */
- template
- struct InterfacesOf
- {
- /** Intrusive tag support.
-
- To use this, add a struct called SocketInterfaces to your
- class and derive it from the interfaces that you support.
- For example:
-
- @code
-
- struct MyHandshakingStream
- {
- struct SocketInterfaces
- : SocketInterface::Stream
- , SocketInterface::Handshake
- {
- };
- }
-
- @endcode
- */
- typedef typename Object::SocketInterfaces type;
- typedef type value;
- };
-
- // Specialization for boost::asio::basic_socket_acceptor
- template
- struct InterfacesOf >
- {
- struct value : SocketInterface::Acceptor { };
- typedef value type;
- };
-
- // Specialization for boost::asio::basic_socket
- template
- struct InterfacesOf >
- {
- struct value : SocketInterface::Socket { };
- typedef value type;
- };
-
- // Specialization for boost::asio::basic_stream_socket
- template
- struct InterfacesOf >
- {
- struct value : SocketInterface::Socket, SocketInterface::Stream { };
- typedef value type;
- };
-
- // Specialization for boost::asio::buffered_stream
- template
- struct InterfacesOf >
- {
- struct value : SocketInterface::Stream { };
- typedef value type;
- };
-
- // Specialization for boost::asio::buffered_read_stream
- template
- struct InterfacesOf >
- {
- struct value : SocketInterface::Stream { };
- typedef value type;
- };
-
- // Specialization for boost::asio::buffered_write_stream
- template
- struct InterfacesOf >
- {
- struct value : SocketInterface::Stream { };
- typedef value type;
- };
-
- // Specialization for boost::asio::ssl::stream
- template
- struct InterfacesOf >
- {
- struct value : SocketInterface::Stream , SocketInterface::Handshake { };
- typedef value type;
- };
-
-#if 1
- // Less elegant, but works.
- // Determines if Object supports the specified Interface
- template
- struct HasInterface : boost::false_type { };
-
- template
- struct HasInterface