diff --git a/Builds/VisualStudio2015/RippleD.vcxproj b/Builds/VisualStudio2015/RippleD.vcxproj
index 8452e958cf..801636f4ed 100644
--- a/Builds/VisualStudio2015/RippleD.vcxproj
+++ b/Builds/VisualStudio2015/RippleD.vcxproj
@@ -3302,6 +3302,10 @@
+
+ True
+ True
+
True
True
@@ -3312,6 +3316,12 @@
+
+ True
+ True
+
+
+
True
True
@@ -3324,12 +3334,20 @@
+
+
+
+
+
+
+
+
@@ -3370,8 +3388,6 @@
-
-
@@ -3380,10 +3396,6 @@
-
- True
- True
-
@@ -3402,42 +3414,16 @@
True
True
-
- True
- True
-
-
- True
- True
-
-
-
-
- True
- True
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Builds/VisualStudio2015/RippleD.vcxproj.filters b/Builds/VisualStudio2015/RippleD.vcxproj.filters
index 50c1364064..ce0be76f50 100644
--- a/Builds/VisualStudio2015/RippleD.vcxproj.filters
+++ b/Builds/VisualStudio2015/RippleD.vcxproj.filters
@@ -3762,6 +3762,9 @@
ripple\rpc\impl
+
+ ripple\rpc\impl
+
ripple\rpc\impl
@@ -3771,6 +3774,12 @@
ripple\rpc\impl
+
+ ripple\rpc\impl
+
+
+ ripple\rpc\impl
+
ripple\rpc\impl
@@ -3783,15 +3792,27 @@
ripple\rpc\impl
+
+ ripple\rpc\impl
+
ripple\rpc
+
+ ripple\rpc
+
ripple\rpc
+
+ ripple\rpc
+
ripple\rpc
+
+ ripple\rpc
+
ripple\rpc
@@ -3825,9 +3846,6 @@
ripple\rpc\tests
-
- ripple\server
-
ripple\server
@@ -3840,9 +3858,6 @@
ripple\server\impl
-
- ripple\server\impl
-
ripple\server\impl
@@ -3864,18 +3879,6 @@
ripple\server\impl
-
- ripple\server\impl
-
-
- ripple\server\impl
-
-
- ripple\server\impl
-
-
- ripple\server\impl
-
ripple\server\impl
@@ -3885,30 +3888,12 @@
ripple\server\impl
-
- ripple\server
-
-
- ripple\server
-
-
- ripple\server
-
ripple\server
-
- ripple\server
-
-
- ripple\server
-
ripple\server
-
- ripple\server
-
ripple\server
diff --git a/src/ripple/app/main/Application.cpp b/src/ripple/app/main/Application.cpp
index 068cf3ea43..e777877997 100644
--- a/src/ripple/app/main/Application.cpp
+++ b/src/ripple/app/main/Application.cpp
@@ -67,7 +67,6 @@
#include
#include
#include
-#include
#include
#include
#include
diff --git a/src/ripple/app/main/Main.cpp b/src/ripple/app/main/Main.cpp
index b2e80117bf..e11068c093 100644
--- a/src/ripple/app/main/Main.cpp
+++ b/src/ripple/app/main/Main.cpp
@@ -34,7 +34,6 @@
#include
#include
#include
-#include
#include
#include
#include
diff --git a/src/ripple/net/impl/RPCCall.cpp b/src/ripple/net/impl/RPCCall.cpp
index 8f28c59db6..0f649e1bad 100644
--- a/src/ripple/net/impl/RPCCall.cpp
+++ b/src/ripple/net/impl/RPCCall.cpp
@@ -33,11 +33,12 @@
#include
#include
#include
-#include
+#include
#include
#include
#include
#include
+#include
#include
#include
diff --git a/src/ripple/overlay/impl/OverlayImpl.cpp b/src/ripple/overlay/impl/OverlayImpl.cpp
index 8154906faa..6c400dc630 100644
--- a/src/ripple/overlay/impl/OverlayImpl.cpp
+++ b/src/ripple/overlay/impl/OverlayImpl.cpp
@@ -27,7 +27,7 @@
#include
#include
#include
-#include
+#include
#include
#include
#include
diff --git a/src/ripple/overlay/impl/OverlayImpl.h b/src/ripple/overlay/impl/OverlayImpl.h
index a4e572d6c6..6e6adc717d 100644
--- a/src/ripple/overlay/impl/OverlayImpl.h
+++ b/src/ripple/overlay/impl/OverlayImpl.h
@@ -26,7 +26,7 @@
#include
#include
#include
-#include
+#include
#include
#include
#include
diff --git a/src/ripple/overlay/impl/PeerImp.cpp b/src/ripple/overlay/impl/PeerImp.cpp
index 98cc79e78d..db773cd407 100644
--- a/src/ripple/overlay/impl/PeerImp.cpp
+++ b/src/ripple/overlay/impl/PeerImp.cpp
@@ -39,7 +39,7 @@
#include
#include
#include
-#include
+#include
#include
#include
#include
diff --git a/src/ripple/overlay/make_Overlay.h b/src/ripple/overlay/make_Overlay.h
index 4b0eade380..d34c35a665 100644
--- a/src/ripple/overlay/make_Overlay.h
+++ b/src/ripple/overlay/make_Overlay.h
@@ -20,7 +20,7 @@
#ifndef RIPPLE_OVERLAY_MAKE_OVERLAY_H_INCLUDED
#define RIPPLE_OVERLAY_MAKE_OVERLAY_H_INCLUDED
-#include
+#include
#include
#include
#include
diff --git a/src/ripple/rpc/Context.h b/src/ripple/rpc/Context.h
index ef9f0349ec..4838b995ad 100644
--- a/src/ripple/rpc/Context.h
+++ b/src/ripple/rpc/Context.h
@@ -23,7 +23,7 @@
#include
#include
#include
-#include
+#include
#include
diff --git a/src/ripple/server/Role.h b/src/ripple/rpc/Role.h
similarity index 100%
rename from src/ripple/server/Role.h
rename to src/ripple/rpc/Role.h
diff --git a/src/ripple/server/make_ServerHandler.h b/src/ripple/rpc/ServerHandler.h
similarity index 75%
rename from src/ripple/server/make_ServerHandler.h
rename to src/ripple/rpc/ServerHandler.h
index 8b52d4617a..190205c682 100644
--- a/src/ripple/server/make_ServerHandler.h
+++ b/src/ripple/rpc/ServerHandler.h
@@ -17,19 +17,30 @@
*/
//==============================================================================
-#ifndef RIPPLE_SERVER_MAKE_SERVERHANDLER_H_INCLUDED
-#define RIPPLE_SERVER_MAKE_SERVERHANDLER_H_INCLUDED
+#ifndef RIPPLE_RPC_SERVERHANDLER_H_INCLUDED
+#define RIPPLE_RPC_SERVERHANDLER_H_INCLUDED
+#include
+#include
#include
-#include
-#include
#include
+#include
+#include
+#include
+#include
#include
+#include
#include
+#include
namespace ripple {
-class NetworkOPs;
+using ServerHandler = ServerHandlerImp;
+
+ServerHandler::Setup
+setup_ServerHandler (
+ Config const& c,
+ std::ostream& log);
std::unique_ptr
make_ServerHandler (Application& app, Stoppable& parent, boost::asio::io_service&,
diff --git a/src/ripple/rpc/TODO.md b/src/ripple/rpc/TODO.md
deleted file mode 100644
index e22c3712d6..0000000000
--- a/src/ripple/rpc/TODO.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# RPC TODO
-
-- Redo the interface to actually work correctly for the existing
- use-cases that the old code supports. Specifically that RPC commands
- can be issued for a particular context like a websocket connection
- or other subscriber.
diff --git a/src/ripple/rpc/handlers/AccountTx.cpp b/src/ripple/rpc/handlers/AccountTx.cpp
index 1f55da1b5c..c1a6c5c6c9 100644
--- a/src/ripple/rpc/handlers/AccountTx.cpp
+++ b/src/ripple/rpc/handlers/AccountTx.cpp
@@ -31,7 +31,7 @@
#include
#include
#include
-#include
+#include
namespace ripple {
diff --git a/src/ripple/rpc/handlers/AccountTxOld.cpp b/src/ripple/rpc/handlers/AccountTxOld.cpp
index fb894197cd..d7fa7f5bf3 100644
--- a/src/ripple/rpc/handlers/AccountTxOld.cpp
+++ b/src/ripple/rpc/handlers/AccountTxOld.cpp
@@ -29,7 +29,7 @@
#include
#include
#include
-#include
+#include
namespace ripple {
diff --git a/src/ripple/rpc/handlers/LedgerData.cpp b/src/ripple/rpc/handlers/LedgerData.cpp
index 90ec8b20d3..56935eff43 100644
--- a/src/ripple/rpc/handlers/LedgerData.cpp
+++ b/src/ripple/rpc/handlers/LedgerData.cpp
@@ -25,7 +25,7 @@
#include
#include
#include
-#include
+#include
namespace ripple {
diff --git a/src/ripple/rpc/handlers/LedgerHandler.cpp b/src/ripple/rpc/handlers/LedgerHandler.cpp
index 3f6bb8078e..0ab49023e0 100644
--- a/src/ripple/rpc/handlers/LedgerHandler.cpp
+++ b/src/ripple/rpc/handlers/LedgerHandler.cpp
@@ -27,7 +27,7 @@
#include
#include
#include
-#include
+#include
namespace ripple {
namespace RPC {
diff --git a/src/ripple/rpc/handlers/LedgerHandler.h b/src/ripple/rpc/handlers/LedgerHandler.h
index e78096e5f8..e8f6e49801 100644
--- a/src/ripple/rpc/handlers/LedgerHandler.h
+++ b/src/ripple/rpc/handlers/LedgerHandler.h
@@ -30,7 +30,7 @@
#include
#include
#include
-#include
+#include
namespace Json {
class Object;
diff --git a/src/ripple/rpc/handlers/Ping.cpp b/src/ripple/rpc/handlers/Ping.cpp
index b1caf97b82..e2fa69fbdd 100644
--- a/src/ripple/rpc/handlers/Ping.cpp
+++ b/src/ripple/rpc/handlers/Ping.cpp
@@ -20,7 +20,7 @@
#include
#include
#include
-#include
+#include
#include
namespace ripple {
diff --git a/src/ripple/rpc/handlers/RipplePathFind.cpp b/src/ripple/rpc/handlers/RipplePathFind.cpp
index 914fd9298e..21b09abe9d 100644
--- a/src/ripple/rpc/handlers/RipplePathFind.cpp
+++ b/src/ripple/rpc/handlers/RipplePathFind.cpp
@@ -43,7 +43,7 @@
#include
#include
#include
-#include
+#include
namespace ripple {
diff --git a/src/ripple/rpc/handlers/ServerInfo.cpp b/src/ripple/rpc/handlers/ServerInfo.cpp
index 7c155f4b15..3478d47f0e 100644
--- a/src/ripple/rpc/handlers/ServerInfo.cpp
+++ b/src/ripple/rpc/handlers/ServerInfo.cpp
@@ -24,7 +24,7 @@
#include
#include
#include
-#include
+#include
namespace ripple {
diff --git a/src/ripple/rpc/handlers/ServerState.cpp b/src/ripple/rpc/handlers/ServerState.cpp
index e84c45a5c5..730c7d3346 100644
--- a/src/ripple/rpc/handlers/ServerState.cpp
+++ b/src/ripple/rpc/handlers/ServerState.cpp
@@ -24,7 +24,7 @@
#include
#include
#include
-#include
+#include
namespace ripple {
diff --git a/src/ripple/rpc/handlers/Subscribe.cpp b/src/ripple/rpc/handlers/Subscribe.cpp
index acc64cfe41..dac99ccc10 100644
--- a/src/ripple/rpc/handlers/Subscribe.cpp
+++ b/src/ripple/rpc/handlers/Subscribe.cpp
@@ -30,7 +30,7 @@
#include
#include
#include
-#include
+#include
namespace ripple {
diff --git a/src/ripple/rpc/handlers/TxHistory.cpp b/src/ripple/rpc/handlers/TxHistory.cpp
index e7eb9bdd22..cfd9849384 100644
--- a/src/ripple/rpc/handlers/TxHistory.cpp
+++ b/src/ripple/rpc/handlers/TxHistory.cpp
@@ -27,7 +27,7 @@
#include
#include
#include
-#include
+#include
#include
namespace ripple {
diff --git a/src/ripple/rpc/handlers/Unsubscribe.cpp b/src/ripple/rpc/handlers/Unsubscribe.cpp
index 09402f66cc..58c4cddf57 100644
--- a/src/ripple/rpc/handlers/Unsubscribe.cpp
+++ b/src/ripple/rpc/handlers/Unsubscribe.cpp
@@ -25,7 +25,7 @@
#include
#include
#include
-#include
+#include
namespace ripple {
diff --git a/src/ripple/rpc/impl/RPCHandler.cpp b/src/ripple/rpc/impl/RPCHandler.cpp
index d8679a32fb..d97fb0feb9 100644
--- a/src/ripple/rpc/impl/RPCHandler.cpp
+++ b/src/ripple/rpc/impl/RPCHandler.cpp
@@ -35,7 +35,7 @@
#include
#include
#include
-#include
+#include
#include
namespace ripple {
diff --git a/src/ripple/server/impl/Role.cpp b/src/ripple/rpc/impl/Role.cpp
similarity index 99%
rename from src/ripple/server/impl/Role.cpp
rename to src/ripple/rpc/impl/Role.cpp
index cb136f586d..c40f885fb7 100644
--- a/src/ripple/server/impl/Role.cpp
+++ b/src/ripple/rpc/impl/Role.cpp
@@ -18,7 +18,7 @@
//==============================================================================
#include
-#include
+#include
namespace ripple {
diff --git a/src/ripple/server/impl/ServerHandlerImp.cpp b/src/ripple/rpc/impl/ServerHandlerImp.cpp
similarity index 98%
rename from src/ripple/server/impl/ServerHandlerImp.cpp
rename to src/ripple/rpc/impl/ServerHandlerImp.cpp
index 6083d38520..c180f95a9d 100644
--- a/src/ripple/server/impl/ServerHandlerImp.cpp
+++ b/src/ripple/rpc/impl/ServerHandlerImp.cpp
@@ -23,17 +23,17 @@
#include
#include
#include
-#include
-#include
+#include
+#include
+#include
#include
-#include
+#include
#include
#include
#include
#include
#include
#include
-#include
#include
#include
#include
@@ -50,18 +50,11 @@
namespace ripple {
-ServerHandler::ServerHandler (Stoppable& parent)
- : Stoppable ("ServerHandler", parent)
-{
-}
-
-//------------------------------------------------------------------------------
-
ServerHandlerImp::ServerHandlerImp (Application& app, Stoppable& parent,
boost::asio::io_service& io_service, JobQueue& jobQueue,
NetworkOPs& networkOPs, Resource::Manager& resourceManager,
CollectorManager& cm)
- : ServerHandler (parent)
+ : Stoppable("ServerHandler", parent)
, app_ (app)
, m_resourceManager (resourceManager)
, m_journal (app_.journal("Server"))
diff --git a/src/ripple/server/impl/ServerHandlerImp.h b/src/ripple/rpc/impl/ServerHandlerImp.h
similarity index 61%
rename from src/ripple/server/impl/ServerHandlerImp.h
rename to src/ripple/rpc/impl/ServerHandlerImp.h
index 1f45d6f1c6..de33b8b153 100644
--- a/src/ripple/server/impl/ServerHandlerImp.h
+++ b/src/ripple/rpc/impl/ServerHandlerImp.h
@@ -17,22 +17,20 @@
*/
//==============================================================================
-#ifndef RIPPLE_SERVER_SERVERHANDLERIMP_H_INCLUDED
-#define RIPPLE_SERVER_SERVERHANDLERIMP_H_INCLUDED
+#ifndef RIPPLE_RPC_SERVERHANDLERIMP_H_INCLUDED
+#define RIPPLE_RPC_SERVERHANDLERIMP_H_INCLUDED
#include
#include
-#include
-#include
-#include
-#include
-#include
+#include
+#include
#include
#include
#include
#include
#include