diff options
Diffstat (limited to 'cpp/include/Ice/Proxy.h')
-rw-r--r-- | cpp/include/Ice/Proxy.h | 374 |
1 files changed, 80 insertions, 294 deletions
diff --git a/cpp/include/Ice/Proxy.h b/cpp/include/Ice/Proxy.h index 212fe0a1ef3..0155efadbf0 100644 --- a/cpp/include/Ice/Proxy.h +++ b/cpp/include/Ice/Proxy.h @@ -154,62 +154,35 @@ typedef IceUtil::Handle<AMI_Object_ice_flushBatchRequests> AMI_Object_ice_flushB namespace IceInternal { -class ICE_API Cpp11FnCallbackNC : virtual public CallbackBase +class ICE_API Cpp11FnCallbackNC : public CallbackBase { public: - Cpp11FnCallbackNC(const ::std::function<void (const ::Ice::Exception&)>& excb, - const ::std::function<void (bool)>& sentcb) : - _exception(excb), - _sent(sentcb) - { - } + Cpp11FnCallbackNC(const ::std::function<void (const ::Ice::Exception&)>&, + const ::std::function<void (bool)>&); - virtual CallbackBasePtr __verify(::Ice::LocalObjectPtr&) - { - return this; - } + virtual CallbackBasePtr __verify(::Ice::LocalObjectPtr&); - virtual void __sent(const ::Ice::AsyncResultPtr& result) const - { - if(_sent != nullptr) - { - _sent(result->sentSynchronously()); - } - } - - virtual bool __hasSentCallback() const - { - return _sent != nullptr; - } + virtual void __sent(const ::Ice::AsyncResultPtr&) const; + + virtual bool __hasSentCallback() const; protected: - void __exception(const ::Ice::AsyncResultPtr&, const ::Ice::Exception& ex) const - { - if(_exception != nullptr) - { - _exception(ex); - } - } + void __exception(const ::Ice::AsyncResultPtr&, const ::Ice::Exception& ex) const; ::std::function<void (const ::Ice::Exception&)> _exception; ::std::function<void (bool)> _sent; }; -class ICE_API Cpp11FnOnewayCallbackNC : virtual public ::IceInternal::Cpp11FnCallbackNC +class ICE_API Cpp11FnOnewayCallbackNC : public Cpp11FnCallbackNC { public: - Cpp11FnOnewayCallbackNC(const ::std::function<void ()>& cb, - const ::std::function<void (const ::Ice::Exception&)>& excb, - const ::std::function<void (bool)>& sentcb) : - Cpp11FnCallbackNC(excb, sentcb), - _cb(cb) - { - CallbackBase::checkCallback(true, cb || excb != nullptr); - } - + Cpp11FnOnewayCallbackNC(const ::std::function<void ()>&, + const ::std::function<void (const ::Ice::Exception&)>&, + const ::std::function<void (bool)>&); + virtual void __completed(const ::Ice::AsyncResultPtr&) const; @@ -245,7 +218,7 @@ public: return ice_isA(typeId, &context); } -#ifdef ICE_CPP11 +#ifdef ICE_CPP11 ::Ice::AsyncResultPtr begin_ice_isA(const ::std::string& typeId, const ::Ice::Context& ctx, @@ -620,7 +593,7 @@ public: const ::std::vector< ::Ice::Byte>& inParams, const ::IceInternal::Function<void (bool, const ::std::vector< ::Ice::Byte>&)>& response, const ::IceInternal::Function<void (const ::Ice::Exception&)>& exception = - ::IceInternal::Function<void (const ::Ice::Exception&)>(), + ::IceInternal::Function<void (const ::Ice::Exception&)>(), const ::IceInternal::Function<void (bool)>& sent = ::IceInternal::Function<void (bool)>()) { return __begin_ice_invoke(operation, mode, inParams, 0, response, exception, sent); @@ -633,7 +606,7 @@ public: const ::Ice::Context& ctx, const ::IceInternal::Function<void (bool, const ::std::vector< ::Ice::Byte>&)>& response, const ::IceInternal::Function<void (const ::Ice::Exception&)>& exception = - ::IceInternal::Function<void (const ::Ice::Exception&)>(), + ::IceInternal::Function<void (const ::Ice::Exception&)>(), const ::IceInternal::Function<void (bool)>& sent = ::IceInternal::Function<void (bool)>()) { return __begin_ice_invoke(operation, mode, inParams, &ctx, response, exception, sent); @@ -921,55 +894,30 @@ protected: private: ::IceInternal::RequestHandlerPtr createRequestHandler(bool); - + + bool ice_isA(const ::std::string&, const ::Ice::Context*); + ::Ice::AsyncResultPtr begin_ice_isA(const ::std::string&, + const ::Ice::Context*, + const ::IceInternal::CallbackBasePtr&, + const ::Ice::LocalObjectPtr&); + #ifdef ICE_CPP11 ::Ice::AsyncResultPtr __begin_ice_isA( - const ::std::string& typeId, - const ::Ice::Context* ctx, - const ::IceInternal::Function<void (bool)>& response, - const ::IceInternal::Function<void (const ::Ice::Exception&)>& exception = - ::IceInternal::Function<void (const ::Ice::Exception&)>(), - const ::IceInternal::Function<void (bool)>& sent = ::IceInternal::Function<void (bool)>()) - { - class Cpp11CB : public ::IceInternal::Cpp11FnCallbackNC - { - public: + const ::std::string&, + const ::Ice::Context*, + const ::IceInternal::Function<void (bool)>&, + const ::IceInternal::Function<void (const ::Ice::Exception&)>& = + ::IceInternal::Function<void (const ::Ice::Exception&)>(), + const ::IceInternal::Function<void (bool)>& = ::IceInternal::Function<void (bool)>()); +#endif - Cpp11CB(const ::std::function<void (bool)>& responseFunc, - const ::std::function<void (const ::Ice::Exception&)>& exceptionFunc, - const ::std::function<void (bool)>& sentFunc) : - ::IceInternal::Cpp11FnCallbackNC(exceptionFunc, sentFunc), - _response(responseFunc) - { - CallbackBase::checkCallback(true, responseFunc || exceptionFunc != nullptr); - } - virtual void __completed(const ::Ice::AsyncResultPtr& __result) const - { - ::Ice::ObjectPrx __proxy = ::Ice::ObjectPrx::uncheckedCast(__result->getProxy()); - bool __ret; - try - { - __ret = __proxy->end_ice_isA(__result); - } - catch(::Ice::Exception& ex) - { - Cpp11FnCallbackNC::__exception(__result, ex); - return; - } - if(_response != nullptr) - { - _response(__ret); - } - } - - private: - - ::std::function<void (bool)> _response; - }; - return begin_ice_isA(typeId, ctx, new Cpp11CB(response, exception, sent), 0); - } - + void ice_ping(const ::Ice::Context*); + ::Ice::AsyncResultPtr begin_ice_ping(const ::Ice::Context*, + const ::IceInternal::CallbackBasePtr&, + const ::Ice::LocalObjectPtr&); + +#ifdef ICE_CPP11 ::Ice::AsyncResultPtr __begin_ice_ping( const ::Ice::Context* ctx, const ::IceInternal::Function<void ()>& response, @@ -979,224 +927,35 @@ private: { return begin_ice_ping(ctx, new ::IceInternal::Cpp11FnOnewayCallbackNC(response, exception, sent), 0); } - - ::Ice::AsyncResultPtr __begin_ice_id( - const ::Ice::Context* ctx, - const ::IceInternal::Function<void (const ::std::string&)>& response, - const ::IceInternal::Function<void (const ::Ice::Exception&)>& exception = - ::IceInternal::Function<void (const ::Ice::Exception&)>(), - const ::IceInternal::Function<void (bool)>& sent = - ::IceInternal::Function<void (bool)>()) - { - class Cpp11CB : public ::IceInternal::Cpp11FnCallbackNC - { - public: - - Cpp11CB(const ::std::function<void (const ::std::string&)>& responseFunc, - const ::std::function<void (const ::Ice::Exception&)>& exceptionFunc, - const ::std::function<void (bool)>& sentFunc) : - ::IceInternal::Cpp11FnCallbackNC(exceptionFunc, sentFunc), - _response(responseFunc) - { - CallbackBase::checkCallback(true, responseFunc || exceptionFunc != nullptr); - } - - virtual void __completed(const ::Ice::AsyncResultPtr& __result) const - { - ::Ice::ObjectPrx __proxy = ::Ice::ObjectPrx::uncheckedCast(__result->getProxy()); - ::std::string __ret; - try - { - __ret = __proxy->end_ice_id(__result); - } - catch(::Ice::Exception& ex) - { - Cpp11FnCallbackNC::__exception(__result, ex); - return; - } - if(_response != nullptr) - { - _response(__ret); - } - } - - private: - - ::std::function<void (const ::std::string&)> _response; - }; - return begin_ice_id(ctx, new Cpp11CB(response, exception, sent), 0); - } - - ::Ice::AsyncResultPtr __begin_ice_ids( - const ::Ice::Context* ctx, - const ::IceInternal::Function<void (const ::std::vector< ::std::string>&)>& response, - const ::IceInternal::Function<void (const ::Ice::Exception&)>& exception = - ::IceInternal::Function<void (const ::Ice::Exception&)>(), - const ::IceInternal::Function<void (bool)>& sent = - ::IceInternal::Function<void (bool)>()) - { - class Cpp11CB : public ::IceInternal::Cpp11FnCallbackNC - { - public: - - Cpp11CB(const ::std::function<void (const ::std::vector< ::std::string>&)>& responseFunc, - const ::std::function<void (const ::Ice::Exception&)>& exceptionFunc, - const ::std::function<void (bool)>& sentFunc) : - ::IceInternal::Cpp11FnCallbackNC(exceptionFunc, sentFunc), - _response(responseFunc) - { - CallbackBase::checkCallback(true, responseFunc || exceptionFunc != nullptr); - } - - virtual void __completed(const ::Ice::AsyncResultPtr& __result) const - { - ::Ice::ObjectPrx __proxy = ::Ice::ObjectPrx::uncheckedCast(__result->getProxy()); - ::std::vector< ::std::string> __ret; - try - { - __ret = __proxy->end_ice_ids(__result); - } - catch(::Ice::Exception& ex) - { - Cpp11FnCallbackNC::__exception(__result, ex); - return; - } - if(_response != nullptr) - { - _response(__ret); - } - } - - private: - - ::std::function<void (const ::std::vector< ::std::string>&)> _response; - }; - return begin_ice_ids(ctx, new Cpp11CB(response, exception, sent), 0); - } #endif - bool ice_isA(const ::std::string&, const ::Ice::Context*); - ::Ice::AsyncResultPtr begin_ice_isA(const ::std::string&, - const ::Ice::Context*, - const ::IceInternal::CallbackBasePtr&, - const ::Ice::LocalObjectPtr&); - - void ice_ping(const ::Ice::Context*); - ::Ice::AsyncResultPtr begin_ice_ping(const ::Ice::Context*, - const ::IceInternal::CallbackBasePtr&, - const ::Ice::LocalObjectPtr&); - ::std::vector< ::std::string> ice_ids(const ::Ice::Context*); ::Ice::AsyncResultPtr begin_ice_ids(const ::Ice::Context*, const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr&); +#ifdef ICE_CPP11 + ::Ice::AsyncResultPtr __begin_ice_ids( + const ::Ice::Context*, + const ::IceInternal::Function<void (const ::std::vector< ::std::string>&)>&, + const ::IceInternal::Function<void (const ::Ice::Exception&)>& = + ::IceInternal::Function<void (const ::Ice::Exception&)>(), + const ::IceInternal::Function<void (bool)>& = + ::IceInternal::Function<void (bool)>()); +#endif + ::std::string ice_id(const ::Ice::Context*); ::Ice::AsyncResultPtr begin_ice_id(const ::Ice::Context*, const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr&); - #ifdef ICE_CPP11 - ::Ice::AsyncResultPtr __begin_ice_invoke( - const ::std::string& operation, - ::Ice::OperationMode mode, - const ::std::vector< ::Ice::Byte>& inParams, - const ::Ice::Context* ctx, - const ::IceInternal::Function<void (bool, const ::std::vector< ::Ice::Byte>&)>& response, - const ::IceInternal::Function<void (const ::Ice::Exception&)>& exception = - ::IceInternal::Function<void (const ::Ice::Exception&)>(), - const ::IceInternal::Function<void (bool)>& sent = ::IceInternal::Function<void (bool)>()) - { - class Cpp11CB : public ::IceInternal::Cpp11FnCallbackNC - { - public: - - Cpp11CB(const ::std::function<void (bool, const ::std::vector< ::Ice::Byte>&)>& responseFunc, - const ::std::function<void (const ::Ice::Exception&)>& exceptionFunc, - const ::std::function<void (bool)>& sentFunc) : - ::IceInternal::Cpp11FnCallbackNC(exceptionFunc, sentFunc), - _response(responseFunc) - { - CallbackBase::checkCallback(true, responseFunc || exceptionFunc != nullptr); - } - - virtual void __completed(const ::Ice::AsyncResultPtr& __result) const - { - ::Ice::ObjectPrx __proxy = ::Ice::ObjectPrx::uncheckedCast(__result->getProxy()); - bool __ret; - ::std::vector< ::Ice::Byte> p1; - try - { - __ret = __proxy->end_ice_invoke(p1, __result); - } - catch(::Ice::Exception& ex) - { - Cpp11FnCallbackNC::__exception(__result, ex); - return; - } - if(_response != nullptr) - { - _response(__ret, p1); - } - } - - private: - - ::std::function<void (bool, const ::std::vector< ::Ice::Byte>&)> _response; - }; - return begin_ice_invoke(operation, mode, inParams, ctx, new Cpp11CB(response, exception, sent), 0); - } - - ::Ice::AsyncResultPtr __begin_ice_invoke( - const ::std::string& operation, - ::Ice::OperationMode mode, - const ::std::pair<const ::Ice::Byte*, const ::Ice::Byte*>& inParams, - const ::Ice::Context* ctx, - const ::IceInternal::Function<void (bool, const ::std::pair<const ::Ice::Byte*, - const ::Ice::Byte*>&)>& response, - const ::IceInternal::Function<void (const ::Ice::Exception&)>& exception = - ::IceInternal::Function<void (const ::Ice::Exception&)>(), - const ::IceInternal::Function<void (bool)>& sent = ::IceInternal::Function<void (bool)>()) - { - class Cpp11CB : public ::IceInternal::Cpp11FnCallbackNC - { - public: - - Cpp11CB(const ::std::function<void (bool, const ::std::pair<const ::Ice::Byte*, - const ::Ice::Byte*>&)>& responseFunc, - const ::std::function<void (const ::Ice::Exception&)>& exceptionFunc, - const ::std::function<void (bool)>& sentFunc) : - ::IceInternal::Cpp11FnCallbackNC(exceptionFunc, sentFunc), - _response(responseFunc) - { - CallbackBase::checkCallback(true, _response || _exception != nullptr); - } - - virtual void __completed(const ::Ice::AsyncResultPtr& __result) const - { - bool __ret; - ::std::pair<const ::Ice::Byte*, const ::Ice::Byte*> p1; - try - { - __ret = __result->getProxy()->___end_ice_invoke(p1, __result); - } - catch(::Ice::Exception& ex) - { - Cpp11FnCallbackNC::__exception(__result, ex); - return; - } - if(_response != nullptr) - { - _response(__ret, p1); - } - } - - private: - - ::std::function<void (bool, const ::std::pair<const ::Ice::Byte*, const ::Ice::Byte*>&)> _response; - }; - return begin_ice_invoke(operation, mode, inParams, ctx, new Cpp11CB(response, exception, sent), 0); - } + ::Ice::AsyncResultPtr __begin_ice_id( + const ::Ice::Context*, + const ::IceInternal::Function<void (const ::std::string&)>&, + const ::IceInternal::Function<void (const ::Ice::Exception&)>& = + ::IceInternal::Function<void (const ::Ice::Exception&)>(), + const ::IceInternal::Function<void (bool)>& sent = + ::IceInternal::Function<void (bool)>()); #endif bool ice_invoke(const ::std::string&, @@ -1204,6 +963,7 @@ private: const ::std::vector< ::Ice::Byte>&, ::std::vector< ::Ice::Byte>&, const ::Ice::Context*); + ::Ice::AsyncResultPtr begin_ice_invoke(const ::std::string&, ::Ice::OperationMode, const ::std::vector< ::Ice::Byte>&, @@ -1211,11 +971,25 @@ private: const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr&); +#ifdef ICE_CPP11 + ::Ice::AsyncResultPtr __begin_ice_invoke( + const ::std::string&, + ::Ice::OperationMode, + const ::std::vector< ::Ice::Byte>&, + const ::Ice::Context*, + const ::IceInternal::Function<void (bool, const ::std::vector< ::Ice::Byte>&)>&, + const ::IceInternal::Function<void (const ::Ice::Exception&)>& = + ::IceInternal::Function<void (const ::Ice::Exception&)>(), + const ::IceInternal::Function<void (bool)>& = ::IceInternal::Function<void (bool)>()); + +#endif + bool ice_invoke(const ::std::string&, ::Ice::OperationMode, const ::std::pair<const ::Ice::Byte*, const ::Ice::Byte*>&, ::std::vector< ::Ice::Byte>&, const ::Ice::Context*); + ::Ice::AsyncResultPtr begin_ice_invoke(const ::std::string&, ::Ice::OperationMode, const ::std::pair<const ::Ice::Byte*, const ::Ice::Byte*>&, @@ -1223,6 +997,18 @@ private: const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr&); +#ifdef ICE_CPP11 + ::Ice::AsyncResultPtr __begin_ice_invoke( + const ::std::string&, + ::Ice::OperationMode, + const ::std::pair<const ::Ice::Byte*, const ::Ice::Byte*>&, + const ::Ice::Context*, + const ::IceInternal::Function<void (bool, const ::std::pair<const ::Ice::Byte*, const ::Ice::Byte*>&)>&, + const ::IceInternal::Function<void (const ::Ice::Exception&)>& = + ::IceInternal::Function<void (const ::Ice::Exception&)>(), + const ::IceInternal::Function<void (bool)>& = ::IceInternal::Function<void (bool)>()); +#endif + ::Ice::AsyncResultPtr begin_ice_flushBatchRequestsInternal(const ::IceInternal::CallbackBasePtr&, const ::Ice::LocalObjectPtr&); |