diff options
author | David Robillard <d@drobilla.net> | 2015-02-07 01:05:13 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2015-02-07 01:05:13 +0000 |
commit | 82ab6f73fab060860addb30691d0e926b4723ee2 (patch) | |
tree | d468ccbcae5479161e3f2c899d9e302848ce4e8f /src/socket/ingen_socket_client.cpp | |
parent | 8dad2d6e0805d0db2cca66f5901235884aad92da (diff) | |
download | ingen-82ab6f73fab060860addb30691d0e926b4723ee2.tar.gz ingen-82ab6f73fab060860addb30691d0e926b4723ee2.tar.bz2 ingen-82ab6f73fab060860addb30691d0e926b4723ee2.zip |
Demodularize socket stuff.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5535 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/socket/ingen_socket_client.cpp')
-rw-r--r-- | src/socket/ingen_socket_client.cpp | 68 |
1 files changed, 0 insertions, 68 deletions
diff --git a/src/socket/ingen_socket_client.cpp b/src/socket/ingen_socket_client.cpp deleted file mode 100644 index 61a175d4..00000000 --- a/src/socket/ingen_socket_client.cpp +++ /dev/null @@ -1,68 +0,0 @@ -/* - This file is part of Ingen. - Copyright 2007-2012 David Robillard <http://drobilla.net/> - - Ingen is free software: you can redistribute it and/or modify it under the - terms of the GNU Affero General Public License as published by the Free - Software Foundation, either version 3 of the License, or any later version. - - Ingen is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - A PARTICULAR PURPOSE. See the GNU Affero General Public License for details. - - You should have received a copy of the GNU Affero General Public License - along with Ingen. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include <errno.h> - -#include "ingen/Log.hpp" -#include "ingen/Module.hpp" -#include "ingen/World.hpp" -#include "raul/Socket.hpp" - -#include "SocketClient.hpp" - -namespace Ingen { -namespace Socket { - -static Raul::Socket::Type type_from_uri(const Raul::URI uri) { - return (uri.scheme() == "unix") - ? Raul::Socket::Type::UNIX - : Raul::Socket::Type::TCP; -} - -static SPtr<Ingen::Interface> -new_socket_interface(Ingen::World* world, - const Raul::URI& uri, - SPtr<Ingen::Interface> respondee) -{ - SPtr<Raul::Socket> sock(new Raul::Socket(type_from_uri(uri))); - if (!sock->connect(uri)) { - world->log().error(fmt("Failed to connect <%1%> (%2%)\n") - % sock->uri() % strerror(errno)); - return SPtr<Interface>(); - } - SocketClient* client = new SocketClient(*world, uri, sock, respondee); - return SPtr<Interface>(client); -} - -struct SocketClientModule : public Module { - void load(World* world) { - world->add_interface_factory("unix", &new_socket_interface); - world->add_interface_factory("tcp", &new_socket_interface); - } -}; - -} // namespace Socket -} // namespace Ingen - -extern "C" { - -Ingen::Module* -ingen_module_load() -{ - return new Ingen::Socket::SocketClientModule(); -} - -} // extern "C" |