16 #ifndef __IceGrid_Session_h__
17 #define __IceGrid_Session_h__
43 #ifndef ICE_IGNORE_VERSION
44 # if ICE_INT_VERSION / 100 != 307
45 # error Ice version mismatch!
47 # if ICE_INT_VERSION % 100 >= 50
48 # error Beta header file detected
50 # if ICE_INT_VERSION % 100 < 10
51 # error Ice patch level mismatch!
56 # if defined(ICE_STATIC_LIBS)
58 # elif defined(ICEGRID_API_EXPORTS)
59 # define ICEGRID_API ICE_DECLSPEC_EXPORT
61 # define ICEGRID_API ICE_DECLSPEC_IMPORT
65 #ifdef ICE_CPP11_MAPPING // C++11 mapping
98 virtual bool ice_isA(::std::string
id, const ::Ice::Current& current)
const override;
105 virtual ::std::vector<::std::string>
ice_ids(const ::Ice::Current& current)
const override;
112 virtual ::std::string
ice_id(const ::Ice::Current& current)
const override;
126 virtual void keepAlive(const ::Ice::Current& current) = 0;
128 bool _iceD_keepAlive(::IceInternal::Incoming&, const ::Ice::Current&);
146 virtual void allocateObjectByIdAsync(::
Ice::Identity id, ::std::function<
void(const ::std::shared_ptr<::Ice::ObjectPrx>& returnValue)> response, ::std::function<
void(::std::exception_ptr)> exception, const ::Ice::Current& current) = 0;
148 bool _iceD_allocateObjectById(::IceInternal::Incoming&, const ::Ice::Current&);
163 virtual void allocateObjectByTypeAsync(::std::string type, ::std::function<
void(const ::std::shared_ptr<::Ice::ObjectPrx>& returnValue)> response, ::std::function<
void(::std::exception_ptr)> exception, const ::Ice::Current& current) = 0;
165 bool _iceD_allocateObjectByType(::IceInternal::Incoming&, const ::Ice::Current&);
181 bool _iceD_releaseObject(::IceInternal::Incoming&, const ::Ice::Current&);
194 bool _iceD_setAllocationTimeout(::IceInternal::Incoming&, const ::Ice::Current&);
198 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&)
override;
227 _makePromiseOutgoing<void>(
true,
this, &SessionPrx::_iceI_keepAlive, context).get();
237 template<
template<
typename>
class P = ::std::promise>
239 -> decltype(::std::declval<P<void>>().get_future())
241 return _makePromiseOutgoing<void, P>(
false,
this, &SessionPrx::_iceI_keepAlive, context);
254 ::std::function<void()>
256 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
257 ::std::function<
void(
bool)> sent =
nullptr,
260 return _makeLamdaOutgoing<void>(std::move(response), std::move(ex), std::move(sent),
this, &IceGrid::SessionPrx::_iceI_keepAlive, context);
283 return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(
true,
this, &SessionPrx::_iceI_allocateObjectById, id, context).get();
296 template<
template<
typename>
class P = ::std::promise>
298 -> decltype(::std::declval<P<::std::shared_ptr<::Ice::ObjectPrx>>>().get_future())
300 return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>, P>(
false,
this, &SessionPrx::_iceI_allocateObjectById, id, context);
316 ::std::function<void()>
318 ::std::function<
void(::std::shared_ptr<::Ice::ObjectPrx>)> response,
319 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
320 ::std::function<
void(
bool)> sent =
nullptr,
323 return _makeLamdaOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(std::move(response), std::move(ex), std::move(sent),
this, &IceGrid::SessionPrx::_iceI_allocateObjectById, id, context);
343 return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(
true,
this, &SessionPrx::_iceI_allocateObjectByType, type, context).get();
356 template<
template<
typename>
class P = ::std::promise>
358 -> decltype(::std::declval<P<::std::shared_ptr<::Ice::ObjectPrx>>>().get_future())
360 return _makePromiseOutgoing<::std::shared_ptr<::Ice::ObjectPrx>, P>(
false,
this, &SessionPrx::_iceI_allocateObjectByType, type, context);
376 ::std::function<void()>
378 ::std::function<
void(::std::shared_ptr<::Ice::ObjectPrx>)> response,
379 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
380 ::std::function<
void(
bool)> sent =
nullptr,
383 return _makeLamdaOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(std::move(response), std::move(ex), std::move(sent),
this, &IceGrid::SessionPrx::_iceI_allocateObjectByType, type, context);
403 _makePromiseOutgoing<void>(
true,
this, &SessionPrx::_iceI_releaseObject,
id, context).get();
413 template<
template<
typename>
class P = ::std::promise>
415 -> decltype(::std::declval<P<void>>().get_future())
417 return _makePromiseOutgoing<void, P>(
false,
this, &SessionPrx::_iceI_releaseObject,
id, context);
430 ::std::function<void()>
432 ::std::function<
void()> response,
433 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
434 ::std::function<
void(
bool)> sent =
nullptr,
437 return _makeLamdaOutgoing<void>(std::move(response), std::move(ex), std::move(sent),
this, &IceGrid::SessionPrx::_iceI_releaseObject,
id, context);
454 _makePromiseOutgoing<void>(
true,
this, &SessionPrx::_iceI_setAllocationTimeout, timeout, context).get();
466 template<
template<
typename>
class P = ::std::promise>
468 -> decltype(::std::declval<P<void>>().get_future())
470 return _makePromiseOutgoing<void, P>(
false,
this, &SessionPrx::_iceI_setAllocationTimeout, timeout, context);
485 ::std::function<void()>
487 ::std::function<
void()> response,
488 ::std::function<
void(::std::exception_ptr)> ex =
nullptr,
489 ::std::function<
void(
bool)> sent =
nullptr,
492 return _makeLamdaOutgoing<void>(std::move(response), std::move(ex), std::move(sent),
this, &IceGrid::SessionPrx::_iceI_setAllocationTimeout, timeout, context);
509 friend ::std::shared_ptr<SessionPrx> IceInternal::createProxy<SessionPrx>();
528 using SessionPtr = ::std::shared_ptr<Session>;
529 using SessionPrxPtr = ::std::shared_ptr<SessionPrx>;
534 #else // C++98 mapping
545 ICEGRID_API ::IceProxy::Ice::Object* upCast(Session*);
557 ICEGRID_API ::Ice::Object* upCast(Session*);
559 typedef ::IceInternal::Handle< Session> SessionPtr;
560 typedef ::IceInternal::ProxyHandle< ::IceProxy::IceGrid::Session> SessionPrx;
561 typedef SessionPrx SessionPrxPtr;
563 ICEGRID_API void _icePatchObjectPtr(SessionPtr&, const ::Ice::ObjectPtr&);
576 class ICEGRID_API AMD_Session_allocateObjectById :
public virtual ::Ice::AMDCallback
580 virtual ~AMD_Session_allocateObjectById();
586 virtual void ice_response(const ::Ice::ObjectPrx& result) = 0;
589 typedef ::IceUtil::Handle< ::IceGrid::AMD_Session_allocateObjectById> AMD_Session_allocateObjectByIdPtr;
596 class ICEGRID_API AMD_Session_allocateObjectByType :
public virtual ::Ice::AMDCallback
600 virtual ~AMD_Session_allocateObjectByType();
606 virtual void ice_response(const ::Ice::ObjectPrx& result) = 0;
609 typedef ::IceUtil::Handle< ::IceGrid::AMD_Session_allocateObjectByType> AMD_Session_allocateObjectByTypePtr;
620 #if defined(_MSC_VER) && (_MSC_VER >= 1900)
621 # pragma warning(push)
622 # pragma warning(disable:4239)
625 class ICEGRID_API AMD_Session_allocateObjectById :
public ::IceGrid::AMD_Session_allocateObjectById,
public ::IceInternal::IncomingAsync
629 AMD_Session_allocateObjectById(::IceInternal::Incoming&);
631 virtual void ice_response(const ::Ice::ObjectPrx&);
634 #if defined(_MSC_VER) && (_MSC_VER >= 1900)
635 # pragma warning(pop)
638 #if defined(_MSC_VER) && (_MSC_VER >= 1900)
639 # pragma warning(push)
640 # pragma warning(disable:4239)
643 class ICEGRID_API AMD_Session_allocateObjectByType :
public ::IceGrid::AMD_Session_allocateObjectByType,
public ::IceInternal::IncomingAsync
647 AMD_Session_allocateObjectByType(::IceInternal::Incoming&);
649 virtual void ice_response(const ::Ice::ObjectPrx&);
652 #if defined(_MSC_VER) && (_MSC_VER >= 1900)
653 # pragma warning(pop)
669 class Callback_Session_keepAlive_Base :
public virtual ::IceInternal::CallbackBase { };
670 typedef ::IceUtil::Handle< Callback_Session_keepAlive_Base> Callback_Session_keepAlivePtr;
677 class Callback_Session_allocateObjectById_Base :
public virtual ::IceInternal::CallbackBase { };
678 typedef ::IceUtil::Handle< Callback_Session_allocateObjectById_Base> Callback_Session_allocateObjectByIdPtr;
685 class Callback_Session_allocateObjectByType_Base :
public virtual ::IceInternal::CallbackBase { };
686 typedef ::IceUtil::Handle< Callback_Session_allocateObjectByType_Base> Callback_Session_allocateObjectByTypePtr;
693 class Callback_Session_releaseObject_Base :
public virtual ::IceInternal::CallbackBase { };
694 typedef ::IceUtil::Handle< Callback_Session_releaseObject_Base> Callback_Session_releaseObjectPtr;
701 class Callback_Session_setAllocationTimeout_Base :
public virtual ::IceInternal::CallbackBase { };
702 typedef ::IceUtil::Handle< Callback_Session_setAllocationTimeout_Base> Callback_Session_setAllocationTimeoutPtr;
712 class ICE_CLASS(ICEGRID_API) Session :
public virtual ::Ice::Proxy<Session, ::IceProxy::Glacier2::Session>
724 end_keepAlive(_iceI_begin_keepAlive(context, ::IceInternal::dummyCallback, 0,
true));
736 return _iceI_begin_keepAlive(context, ::IceInternal::dummyCallback, 0);
763 return _iceI_begin_keepAlive(context, cb, cookie);
790 return _iceI_begin_keepAlive(context, cb, cookie);
821 return end_allocateObjectById(_iceI_begin_allocateObjectById(
id, context, ::IceInternal::dummyCallback, 0,
true));
836 return _iceI_begin_allocateObjectById(
id, context, ::IceInternal::dummyCallback, 0);
850 ::Ice::AsyncResultPtr begin_allocateObjectById(const ::Ice::Identity&
id, const ::Ice::CallbackPtr& cb,
const ::Ice::LocalObjectPtr& cookie = 0)
869 return _iceI_begin_allocateObjectById(
id, context, cb, cookie);
883 ::Ice::AsyncResultPtr begin_allocateObjectById(const ::Ice::Identity&
id, const ::IceGrid::Callback_Session_allocateObjectByIdPtr& cb,
const ::Ice::LocalObjectPtr& cookie = 0)
902 return _iceI_begin_allocateObjectById(
id, context, cb, cookie);
935 return end_allocateObjectByType(_iceI_begin_allocateObjectByType(type, context, ::IceInternal::dummyCallback, 0,
true));
950 return _iceI_begin_allocateObjectByType(type, context, ::IceInternal::dummyCallback, 0);
964 ::Ice::AsyncResultPtr begin_allocateObjectByType(const ::std::string& type, const ::Ice::CallbackPtr& cb,
const ::Ice::LocalObjectPtr& cookie = 0)
983 return _iceI_begin_allocateObjectByType(type, context, cb, cookie);
997 ::Ice::AsyncResultPtr begin_allocateObjectByType(const ::std::string& type, const ::IceGrid::Callback_Session_allocateObjectByTypePtr& cb,
const ::Ice::LocalObjectPtr& cookie = 0)
1016 return _iceI_begin_allocateObjectByType(type, context, cb, cookie);
1046 end_releaseObject(_iceI_begin_releaseObject(
id, context, ::IceInternal::dummyCallback, 0,
true));
1058 return _iceI_begin_releaseObject(
id, context, ::IceInternal::dummyCallback, 0);
1069 ::Ice::AsyncResultPtr begin_releaseObject(const ::Ice::Identity&
id, const ::Ice::CallbackPtr& cb,
const ::Ice::LocalObjectPtr& cookie = 0)
1085 return _iceI_begin_releaseObject(
id, context, cb, cookie);
1096 ::Ice::AsyncResultPtr begin_releaseObject(const ::Ice::Identity&
id, const ::IceGrid::Callback_Session_releaseObjectPtr& cb,
const ::Ice::LocalObjectPtr& cookie = 0)
1112 return _iceI_begin_releaseObject(
id, context, cb, cookie);
1142 end_setAllocationTimeout(_iceI_begin_setAllocationTimeout(timeout, context, ::IceInternal::dummyCallback, 0,
true));
1156 return _iceI_begin_setAllocationTimeout(timeout, context, ::IceInternal::dummyCallback, 0);
1187 return _iceI_begin_setAllocationTimeout(timeout, context, cb, cookie);
1200 ::Ice::AsyncResultPtr begin_setAllocationTimeout(::
Ice::Int timeout, const ::IceGrid::Callback_Session_setAllocationTimeoutPtr& cb,
const ::Ice::LocalObjectPtr& cookie = 0)
1218 return _iceI_begin_setAllocationTimeout(timeout, context, cb, cookie);
1265 typedef SessionPrx ProxyType;
1266 typedef SessionPtr PointerType;
1270 #ifdef ICE_CPP11_COMPILER
1271 Session() =
default;
1272 Session(
const Session&) =
default;
1273 Session& operator=(
const Session&) =
default;
1282 virtual bool ice_isA(const ::std::string&
id, const ::Ice::Current& current = ::
Ice::emptyCurrent)
const;
1289 virtual ::std::vector< ::std::string> ice_ids(const ::Ice::Current& current = ::
Ice::emptyCurrent)
const;
1296 virtual const ::std::string& ice_id(const ::Ice::Current& current = ::
Ice::emptyCurrent)
const;
1302 static const ::std::string& ice_staticId();
1310 virtual void keepAlive(const ::Ice::Current& current = ::
Ice::emptyCurrent) = 0;
1312 bool _iceD_keepAlive(::IceInternal::Incoming&, const ::Ice::Current&);
1329 virtual void allocateObjectById_async(const ::IceGrid::AMD_Session_allocateObjectByIdPtr& cb, const ::Ice::Identity&
id, const ::Ice::Current& current = ::
Ice::emptyCurrent) = 0;
1331 bool _iceD_allocateObjectById(::IceInternal::Incoming&, const ::Ice::Current&);
1345 virtual void allocateObjectByType_async(const ::IceGrid::AMD_Session_allocateObjectByTypePtr& cb, const ::std::string& type, const ::Ice::Current& current = ::
Ice::emptyCurrent) = 0;
1347 bool _iceD_allocateObjectByType(::IceInternal::Incoming&, const ::Ice::Current&);
1361 virtual void releaseObject(const ::Ice::Identity&
id, const ::Ice::Current& current = ::
Ice::emptyCurrent) = 0;
1363 bool _iceD_releaseObject(::IceInternal::Incoming&, const ::Ice::Current&);
1376 bool _iceD_setAllocationTimeout(::IceInternal::Incoming&, const ::Ice::Current&);
1380 virtual bool _iceDispatch(::IceInternal::Incoming&, const ::Ice::Current&);
1392 inline bool operator==(
const Session& lhs,
const Session& rhs)
1397 inline bool operator<(
const Session& lhs,
const Session& rhs)
1421 class CallbackNC_Session_keepAlive :
public Callback_Session_keepAlive_Base,
public ::IceInternal::OnewayCallbackNC<T>
1428 typedef void (T::*Sent)(bool);
1429 typedef void (T::*Response)();
1431 CallbackNC_Session_keepAlive(
const TPtr& obj, Response cb,
Exception excb, Sent sentcb)
1432 : ::IceInternal::OnewayCallbackNC<T>(obj, cb, excb, sentcb)
1445 template<
class T> Callback_Session_keepAlivePtr
1448 return new CallbackNC_Session_keepAlive<T>(instance, cb, excb, sentcb);
1458 template<
class T> Callback_Session_keepAlivePtr
1461 return new CallbackNC_Session_keepAlive<T>(instance, 0, excb, sentcb);
1472 template<
class T> Callback_Session_keepAlivePtr
1473 newCallback_Session_keepAlive(T* instance,
void (T::*cb)(),
void (T::*excb)(
const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
1475 return new CallbackNC_Session_keepAlive<T>(instance, cb, excb, sentcb);
1485 template<
class T> Callback_Session_keepAlivePtr
1486 newCallback_Session_keepAlive(T* instance,
void (T::*excb)(
const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
1488 return new CallbackNC_Session_keepAlive<T>(instance, 0, excb, sentcb);
1496 template<
class T,
typename CT>
1497 class Callback_Session_keepAlive :
public Callback_Session_keepAlive_Base,
public ::IceInternal::OnewayCallback<T, CT>
1504 typedef void (T::*Sent)(bool ,
const CT&);
1505 typedef void (T::*Response)(
const CT&);
1507 Callback_Session_keepAlive(
const TPtr& obj, Response cb,
Exception excb, Sent sentcb)
1508 : ::IceInternal::OnewayCallback<T, CT>(obj, cb, excb, sentcb)
1522 template<
class T,
typename CT> Callback_Session_keepAlivePtr
1525 return new Callback_Session_keepAlive<T, CT>(instance, cb, excb, sentcb);
1536 template<
class T,
typename CT> Callback_Session_keepAlivePtr
1539 return new Callback_Session_keepAlive<T, CT>(instance, 0, excb, sentcb);
1551 template<
class T,
typename CT> Callback_Session_keepAlivePtr
1552 newCallback_Session_keepAlive(T* instance,
void (T::*cb)(
const CT&),
void (T::*excb)(
const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
1554 return new Callback_Session_keepAlive<T, CT>(instance, cb, excb, sentcb);
1565 template<
class T,
typename CT> Callback_Session_keepAlivePtr
1566 newCallback_Session_keepAlive(T* instance,
void (T::*excb)(
const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
1568 return new Callback_Session_keepAlive<T, CT>(instance, 0, excb, sentcb);
1577 class CallbackNC_Session_allocateObjectById :
public Callback_Session_allocateObjectById_Base,
public ::IceInternal::TwowayCallbackNC<T>
1584 typedef void (T::*Sent)(bool);
1585 typedef void (T::*Response)(const ::Ice::ObjectPrx&);
1587 CallbackNC_Session_allocateObjectById(
const TPtr& obj, Response cb,
Exception excb, Sent sentcb)
1588 : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
1593 virtual void completed(const ::Ice::AsyncResultPtr& result)
const
1599 ret = proxy->end_allocateObjectById(result);
1603 ::IceInternal::CallbackNC<T>::exception(result, ex);
1608 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
1626 template<
class T> Callback_Session_allocateObjectByIdPtr
1629 return new CallbackNC_Session_allocateObjectById<T>(instance, cb, excb, sentcb);
1640 template<
class T> Callback_Session_allocateObjectByIdPtr
1641 newCallback_Session_allocateObjectById(T* instance,
void (T::*cb)(const ::Ice::ObjectPrx&),
void (T::*excb)(
const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
1643 return new CallbackNC_Session_allocateObjectById<T>(instance, cb, excb, sentcb);
1651 template<
class T,
typename CT>
1652 class Callback_Session_allocateObjectById :
public Callback_Session_allocateObjectById_Base,
public ::IceInternal::TwowayCallback<T, CT>
1659 typedef void (T::*Sent)(bool ,
const CT&);
1660 typedef void (T::*Response)(const ::Ice::ObjectPrx&,
const CT&);
1662 Callback_Session_allocateObjectById(
const TPtr& obj, Response cb,
Exception excb, Sent sentcb)
1663 : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
1668 virtual void completed(const ::Ice::AsyncResultPtr& result)
const
1674 ret = proxy->end_allocateObjectById(result);
1678 ::IceInternal::Callback<T, CT>::exception(result, ex);
1683 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(ret, CT::dynamicCast(result->getCookie()));
1702 template<
class T,
typename CT> Callback_Session_allocateObjectByIdPtr
1703 newCallback_Session_allocateObjectById(
const IceUtil::Handle<T>& instance,
void (T::*cb)(const ::Ice::ObjectPrx&,
const CT&),
void (T::*excb)(
const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
1705 return new Callback_Session_allocateObjectById<T, CT>(instance, cb, excb, sentcb);
1717 template<
class T,
typename CT> Callback_Session_allocateObjectByIdPtr
1718 newCallback_Session_allocateObjectById(T* instance,
void (T::*cb)(const ::Ice::ObjectPrx&,
const CT&),
void (T::*excb)(
const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
1720 return new Callback_Session_allocateObjectById<T, CT>(instance, cb, excb, sentcb);
1729 class CallbackNC_Session_allocateObjectByType :
public Callback_Session_allocateObjectByType_Base,
public ::IceInternal::TwowayCallbackNC<T>
1736 typedef void (T::*Sent)(bool);
1737 typedef void (T::*Response)(const ::Ice::ObjectPrx&);
1739 CallbackNC_Session_allocateObjectByType(
const TPtr& obj, Response cb,
Exception excb, Sent sentcb)
1740 : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
1745 virtual void completed(const ::Ice::AsyncResultPtr& result)
const
1751 ret = proxy->end_allocateObjectByType(result);
1755 ::IceInternal::CallbackNC<T>::exception(result, ex);
1760 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
1778 template<
class T> Callback_Session_allocateObjectByTypePtr
1781 return new CallbackNC_Session_allocateObjectByType<T>(instance, cb, excb, sentcb);
1792 template<
class T> Callback_Session_allocateObjectByTypePtr
1793 newCallback_Session_allocateObjectByType(T* instance,
void (T::*cb)(const ::Ice::ObjectPrx&),
void (T::*excb)(
const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
1795 return new CallbackNC_Session_allocateObjectByType<T>(instance, cb, excb, sentcb);
1803 template<
class T,
typename CT>
1804 class Callback_Session_allocateObjectByType :
public Callback_Session_allocateObjectByType_Base,
public ::IceInternal::TwowayCallback<T, CT>
1811 typedef void (T::*Sent)(bool ,
const CT&);
1812 typedef void (T::*Response)(const ::Ice::ObjectPrx&,
const CT&);
1814 Callback_Session_allocateObjectByType(
const TPtr& obj, Response cb,
Exception excb, Sent sentcb)
1815 : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
1820 virtual void completed(const ::Ice::AsyncResultPtr& result)
const
1826 ret = proxy->end_allocateObjectByType(result);
1830 ::IceInternal::Callback<T, CT>::exception(result, ex);
1835 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(ret, CT::dynamicCast(result->getCookie()));
1854 template<
class T,
typename CT> Callback_Session_allocateObjectByTypePtr
1855 newCallback_Session_allocateObjectByType(
const IceUtil::Handle<T>& instance,
void (T::*cb)(const ::Ice::ObjectPrx&,
const CT&),
void (T::*excb)(
const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
1857 return new Callback_Session_allocateObjectByType<T, CT>(instance, cb, excb, sentcb);
1869 template<
class T,
typename CT> Callback_Session_allocateObjectByTypePtr
1870 newCallback_Session_allocateObjectByType(T* instance,
void (T::*cb)(const ::Ice::ObjectPrx&,
const CT&),
void (T::*excb)(
const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
1872 return new Callback_Session_allocateObjectByType<T, CT>(instance, cb, excb, sentcb);
1881 class CallbackNC_Session_releaseObject :
public Callback_Session_releaseObject_Base,
public ::IceInternal::TwowayCallbackNC<T>
1888 typedef void (T::*Sent)(bool);
1889 typedef void (T::*Response)();
1891 CallbackNC_Session_releaseObject(
const TPtr& obj, Response cb,
Exception excb, Sent sentcb)
1892 : ::IceInternal::TwowayCallbackNC<T>(obj, cb != 0, excb, sentcb), _response(cb)
1897 virtual void completed(const ::Ice::AsyncResultPtr& result)
const
1902 proxy->end_releaseObject(result);
1906 ::IceInternal::CallbackNC<T>::exception(result, ex);
1911 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
1929 template<
class T> Callback_Session_releaseObjectPtr
1932 return new CallbackNC_Session_releaseObject<T>(instance, cb, excb, sentcb);
1942 template<
class T> Callback_Session_releaseObjectPtr
1945 return new CallbackNC_Session_releaseObject<T>(instance, 0, excb, sentcb);
1956 template<
class T> Callback_Session_releaseObjectPtr
1957 newCallback_Session_releaseObject(T* instance,
void (T::*cb)(),
void (T::*excb)(
const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
1959 return new CallbackNC_Session_releaseObject<T>(instance, cb, excb, sentcb);
1969 template<
class T> Callback_Session_releaseObjectPtr
1970 newCallback_Session_releaseObject(T* instance,
void (T::*excb)(
const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
1972 return new CallbackNC_Session_releaseObject<T>(instance, 0, excb, sentcb);
1980 template<
class T,
typename CT>
1981 class Callback_Session_releaseObject :
public Callback_Session_releaseObject_Base,
public ::IceInternal::TwowayCallback<T, CT>
1988 typedef void (T::*Sent)(bool ,
const CT&);
1989 typedef void (T::*Response)(
const CT&);
1991 Callback_Session_releaseObject(
const TPtr& obj, Response cb,
Exception excb, Sent sentcb)
1992 : ::IceInternal::TwowayCallback<T, CT>(obj, cb != 0, excb, sentcb), _response(cb)
1997 virtual void completed(const ::Ice::AsyncResultPtr& result)
const
2002 proxy->end_releaseObject(result);
2006 ::IceInternal::Callback<T, CT>::exception(result, ex);
2011 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(CT::dynamicCast(result->getCookie()));
2030 template<
class T,
typename CT> Callback_Session_releaseObjectPtr
2033 return new Callback_Session_releaseObject<T, CT>(instance, cb, excb, sentcb);
2044 template<
class T,
typename CT> Callback_Session_releaseObjectPtr
2047 return new Callback_Session_releaseObject<T, CT>(instance, 0, excb, sentcb);
2059 template<
class T,
typename CT> Callback_Session_releaseObjectPtr
2060 newCallback_Session_releaseObject(T* instance,
void (T::*cb)(
const CT&),
void (T::*excb)(
const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
2062 return new Callback_Session_releaseObject<T, CT>(instance, cb, excb, sentcb);
2073 template<
class T,
typename CT> Callback_Session_releaseObjectPtr
2074 newCallback_Session_releaseObject(T* instance,
void (T::*excb)(
const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
2076 return new Callback_Session_releaseObject<T, CT>(instance, 0, excb, sentcb);
2085 class CallbackNC_Session_setAllocationTimeout :
public Callback_Session_setAllocationTimeout_Base,
public ::IceInternal::OnewayCallbackNC<T>
2092 typedef void (T::*Sent)(bool);
2093 typedef void (T::*Response)();
2095 CallbackNC_Session_setAllocationTimeout(
const TPtr& obj, Response cb,
Exception excb, Sent sentcb)
2096 : ::IceInternal::OnewayCallbackNC<T>(obj, cb, excb, sentcb)
2109 template<
class T> Callback_Session_setAllocationTimeoutPtr
2112 return new CallbackNC_Session_setAllocationTimeout<T>(instance, cb, excb, sentcb);
2122 template<
class T> Callback_Session_setAllocationTimeoutPtr
2125 return new CallbackNC_Session_setAllocationTimeout<T>(instance, 0, excb, sentcb);
2136 template<
class T> Callback_Session_setAllocationTimeoutPtr
2137 newCallback_Session_setAllocationTimeout(T* instance,
void (T::*cb)(),
void (T::*excb)(
const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
2139 return new CallbackNC_Session_setAllocationTimeout<T>(instance, cb, excb, sentcb);
2149 template<
class T> Callback_Session_setAllocationTimeoutPtr
2150 newCallback_Session_setAllocationTimeout(T* instance,
void (T::*excb)(
const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
2152 return new CallbackNC_Session_setAllocationTimeout<T>(instance, 0, excb, sentcb);
2160 template<
class T,
typename CT>
2161 class Callback_Session_setAllocationTimeout :
public Callback_Session_setAllocationTimeout_Base,
public ::IceInternal::OnewayCallback<T, CT>
2168 typedef void (T::*Sent)(bool ,
const CT&);
2169 typedef void (T::*Response)(
const CT&);
2171 Callback_Session_setAllocationTimeout(
const TPtr& obj, Response cb,
Exception excb, Sent sentcb)
2172 : ::IceInternal::OnewayCallback<T, CT>(obj, cb, excb, sentcb)
2186 template<
class T,
typename CT> Callback_Session_setAllocationTimeoutPtr
2187 newCallback_Session_setAllocationTimeout(
const IceUtil::Handle<T>& instance,
void (T::*cb)(
const CT&),
void (T::*excb)(
const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
2189 return new Callback_Session_setAllocationTimeout<T, CT>(instance, cb, excb, sentcb);
2200 template<
class T,
typename CT> Callback_Session_setAllocationTimeoutPtr
2203 return new Callback_Session_setAllocationTimeout<T, CT>(instance, 0, excb, sentcb);
2215 template<
class T,
typename CT> Callback_Session_setAllocationTimeoutPtr
2216 newCallback_Session_setAllocationTimeout(T* instance,
void (T::*cb)(
const CT&),
void (T::*excb)(
const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
2218 return new Callback_Session_setAllocationTimeout<T, CT>(instance, cb, excb, sentcb);
2229 template<
class T,
typename CT> Callback_Session_setAllocationTimeoutPtr
2230 newCallback_Session_setAllocationTimeout(T* instance,
void (T::*excb)(
const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
2232 return new Callback_Session_setAllocationTimeout<T, CT>(instance, 0, excb, sentcb);