diff options
author | Matthew Newhook <matthew@zeroc.com> | 2015-03-21 15:35:40 -0230 |
---|---|---|
committer | Matthew Newhook <matthew@zeroc.com> | 2015-03-21 15:35:40 -0230 |
commit | 630a37d2fe66f24518299e705f958b571803c522 (patch) | |
tree | 969723791bdc4d73bb099c19d45554d0ca241ad9 /ruby/src/IceRuby/Init.cpp | |
parent | Fix some README.md markdown formatting (diff) | |
download | ice-630a37d2fe66f24518299e705f958b571803c522.tar.bz2 ice-630a37d2fe66f24518299e705f958b571803c522.tar.xz ice-630a37d2fe66f24518299e705f958b571803c522.zip |
py -> python
rb -> ruby
objc -> objective-c
cs -> csharp
Diffstat (limited to 'ruby/src/IceRuby/Init.cpp')
-rw-r--r-- | ruby/src/IceRuby/Init.cpp | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/ruby/src/IceRuby/Init.cpp b/ruby/src/IceRuby/Init.cpp new file mode 100644 index 00000000000..2086f163383 --- /dev/null +++ b/ruby/src/IceRuby/Init.cpp @@ -0,0 +1,59 @@ +// ********************************************************************** +// +// Copyright (c) 2003-2015 ZeroC, Inc. All rights reserved. +// +// This copy of Ice is licensed to you under the terms described in the +// ICE_LICENSE file included in this distribution. +// +// ********************************************************************** + +#include <Communicator.h> +#include <ImplicitContext.h> +#include <Logger.h> +#include <Operation.h> +#include <Properties.h> +#include <Proxy.h> +#include <Slice.h> +#include <Types.h> +#include <Connection.h> +#include <Endpoint.h> + +using namespace std; +using namespace IceRuby; + +static VALUE iceModule; + +extern "C" +{ + +#ifdef ICE_STATIC_LIBS +Ice::Plugin* createIceSSL(const Ice::CommunicatorPtr&, const std::string&, const Ice::StringSeq&); +Ice::Plugin* createIceDiscovery(const Ice::CommunicatorPtr&, const string&, const Ice::StringSeq&); +Ice::Plugin* createIceLocatorDiscovery(const Ice::CommunicatorPtr&, const string&, const Ice::StringSeq&); +#endif + +void +ICE_DECLSPEC_EXPORT Init_IceRuby() +{ +#ifdef ICE_STATIC_LIBS + // Register the plugins manually if we're building with static libraries. + Ice::registerPluginFactory("IceSSL", createIceSSL, false); + Ice::registerPluginFactory("IceDiscovery", createIceDiscovery, false); + Ice::registerPluginFactory("IceLocatorDiscovery", createIceLocatorDiscovery, false); +#endif + + iceModule = rb_define_module("Ice"); + initCommunicator(iceModule); + initLogger(iceModule); + initOperation(iceModule); + initProperties(iceModule); + initProxy(iceModule); + initSlice(iceModule); + initTypes(iceModule); + initImplicitContext(iceModule); + initUtil(iceModule); + initConnection(iceModule); + initEndpoint(iceModule); +} + +} |