Merge branch 'master' of ssh://main.carlh.net/home/carl/git/dcpomatic
[dcpomatic.git] / src / lib / server.cc
index 2930e3c4b6381f83597776a8d4708ba760930d83..0c5792ae0da6b8d07d678e5244b6b04b381645e6 100644 (file)
@@ -27,9 +27,9 @@
 #include <sstream>
 #include <iostream>
 #include <boost/algorithm/string.hpp>
-#include <boost/lexical_cast.hpp>
 #include <boost/scoped_array.hpp>
 #include <libcxml/cxml.h>
+#include <libdcp/raw_convert.h>
 #include "server.h"
 #include "util.h"
 #include "scaler.h"
@@ -56,38 +56,8 @@ using boost::thread;
 using boost::bind;
 using boost::scoped_array;
 using boost::optional;
-using boost::lexical_cast;
 using libdcp::Size;
-
-ServerDescription::ServerDescription (shared_ptr<const cxml::Node> node)
-{
-       _host_name = node->string_child ("HostName");
-       _threads = node->number_child<int> ("Threads");
-}
-
-void
-ServerDescription::as_xml (xmlpp::Node* root) const
-{
-       root->add_child("HostName")->add_child_text (_host_name);
-       root->add_child("Threads")->add_child_text (boost::lexical_cast<string> (_threads));
-}
-
-/** Create a server description from a string of metadata returned from as_metadata().
- *  @param v Metadata.
- *  @return ServerDescription, or 0.
- */
-optional<ServerDescription>
-ServerDescription::create_from_metadata (string v)
-{
-       vector<string> b;
-       split (b, v, is_any_of (" "));
-
-       if (b.size() != 2) {
-               return optional<ServerDescription> ();
-       }
-
-       return ServerDescription (b[0], atoi (b[1].c_str ()));
-}
+using libdcp::raw_convert;
 
 Server::Server (shared_ptr<Log> log, bool verbose)
        : _log (log)
@@ -276,7 +246,7 @@ Server::broadcast_received ()
                /* Reply to the client saying what we can do */
                xmlpp::Document doc;
                xmlpp::Element* root = doc.create_root_node ("ServerAvailable");
-               root->add_child("Threads")->add_child_text (lexical_cast<string> (_worker_threads.size ()));
+               root->add_child("Threads")->add_child_text (raw_convert<string> (_worker_threads.size ()));
                stringstream xml;
                doc.write_to_stream (xml, "UTF-8");