diff options
author | Bernard Normier <bernard@zeroc.com> | 2014-08-29 11:24:49 -0400 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2014-08-29 11:24:49 -0400 |
commit | 33702f21d02bd543f365e4db6e118ba5257c109b (patch) | |
tree | 5ee69df98dcb14ba47d60e727c59f6f1018692a5 /cpp/src/Ice/StringConverterPlugin.cpp | |
parent | Minor fix for JS OutgoingConnectionFactory (diff) | |
download | ice-33702f21d02bd543f365e4db6e118ba5257c109b.tar.bz2 ice-33702f21d02bd543f365e4db6e118ba5257c109b.tar.xz ice-33702f21d02bd543f365e4db6e118ba5257c109b.zip |
New fix for ICE-5637: Glacier2CryptPermissionsVerifier plugin + Glacier2Internal::setupNullPermissionsVerifier function
Diffstat (limited to 'cpp/src/Ice/StringConverterPlugin.cpp')
-rw-r--r-- | cpp/src/Ice/StringConverterPlugin.cpp | 59 |
1 files changed, 32 insertions, 27 deletions
diff --git a/cpp/src/Ice/StringConverterPlugin.cpp b/cpp/src/Ice/StringConverterPlugin.cpp index 4f5696153ee..de58b679e33 100644 --- a/cpp/src/Ice/StringConverterPlugin.cpp +++ b/cpp/src/Ice/StringConverterPlugin.cpp @@ -7,50 +7,57 @@ // // ********************************************************************** -#include <Ice/StringConverterPlugin.h> +#include <Ice/Config.h> + #include <IceUtil/IceUtil.h> #include <IceUtil/StringUtil.h> +#include <Ice/Plugin.h> #include <Ice/Initialize.h> #include <Ice/Instance.h> #include <Ice/LocalException.h> #include <Ice/LoggerUtil.h> #include <Ice/Communicator.h> -#ifndef _WIN32 -# include <IceUtil/IconvStringConverter.h> -#endif - using namespace IceUtil; using namespace IceUtilInternal; +using namespace Ice; using namespace std; -Ice::StringConverterPlugin::StringConverterPlugin(const CommunicatorPtr& communicator, - const StringConverterPtr& stringConverter, - const WstringConverterPtr& wstringConverter) +namespace +{ + +class StringConverterPlugin : public Ice::Plugin { - if(communicator == 0) +public: + + StringConverterPlugin(const CommunicatorPtr& communicator, + const StringConverterPtr& stringConverter, + const WstringConverterPtr& wstringConverter) { - throw PluginInitializationException(__FILE__, __LINE__, "Communicator cannot be null"); + if(communicator == 0) + { + throw PluginInitializationException(__FILE__, __LINE__, "Communicator cannot be null"); + } + + IceInternal::InstancePtr instance = IceInternal::getInstance(communicator); + + IceUtil::setProcessStringConverter(stringConverter); + instance->setStringConverter(stringConverter); + IceUtil::setProcessWstringConverter(wstringConverter); + instance->setWstringConverter(wstringConverter); } - - IceInternal::InstancePtr instance = IceInternal::getInstance(communicator); - IceUtil::setProcessStringConverter(stringConverter); - instance->setStringConverter(stringConverter); - IceUtil::setProcessWstringConverter(wstringConverter); - instance->setWstringConverter(wstringConverter); -} + virtual void initialize() + { + } -void -Ice::StringConverterPlugin::initialize() -{ -} + virtual void destroy() + { + } +}; -void -Ice::StringConverterPlugin::destroy() -{ } // @@ -59,9 +66,7 @@ Ice::StringConverterPlugin::destroy() extern "C" { -using namespace Ice; - -ICE_DECLSPEC_EXPORT Plugin* +ICE_API Plugin* createStringConverter(const CommunicatorPtr& communicator, const string& name, const StringSeq& args) { StringConverterPtr stringConverter; |