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 < 11
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
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 _makeLambdaOutgoing<void>(std::move(response), std::move(ex), std::move(sent),
this, &IceGrid::SessionPrx::_iceI_keepAlive, context);
264 ICE_MEMBER(
ICEGRID_API)
void _iceI_keepAlive(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&, const ::Ice::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 _makeLambdaOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(std::move(response), std::move(ex), std::move(sent),
this, &IceGrid::SessionPrx::_iceI_allocateObjectById, id, context);
327 ICE_MEMBER(
ICEGRID_API)
void _iceI_allocateObjectById(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::std::shared_ptr<::Ice::ObjectPrx>>>&, const ::Ice::Identity&, const ::Ice::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 _makeLambdaOutgoing<::std::shared_ptr<::Ice::ObjectPrx>>(std::move(response), std::move(ex), std::move(sent),
this, &IceGrid::SessionPrx::_iceI_allocateObjectByType, type, context);
387 ICE_MEMBER(
ICEGRID_API)
void _iceI_allocateObjectByType(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::std::shared_ptr<::Ice::ObjectPrx>>>&, const ::std::string&, const ::Ice::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 _makeLambdaOutgoing<void>(std::move(response), std::move(ex), std::move(sent),
this, &IceGrid::SessionPrx::_iceI_releaseObject,
id, context);
441 ICE_MEMBER(
ICEGRID_API)
void _iceI_releaseObject(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&, const ::Ice::Identity&, const ::Ice::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 _makeLambdaOutgoing<void>(std::move(response), std::move(ex), std::move(sent),
this, &IceGrid::SessionPrx::_iceI_setAllocationTimeout, timeout, context);
496 ICE_MEMBER(
ICEGRID_API)
void _iceI_setAllocationTimeout(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<void>>&,
int, const ::Ice::Context&);
509 friend ::std::shared_ptr<SessionPrx> IceInternal::createProxy<SessionPrx>();
528using SessionPtr = ::std::shared_ptr<Session>;
529using SessionPrxPtr = ::std::shared_ptr<SessionPrx>;
544ICEGRID_API void _readProxy(::Ice::InputStream*, ::IceInternal::ProxyHandle< Session>&);
545ICEGRID_API ::IceProxy::Ice::Object* upCast(
Session*);
557ICEGRID_API ::Ice::Object* upCast(
Session*);
559typedef ::IceInternal::Handle< Session> SessionPtr;
560typedef ::IceInternal::ProxyHandle< ::IceProxy::IceGrid::Session>
SessionPrx;
563ICEGRID_API void _icePatchObjectPtr(SessionPtr&, const ::Ice::ObjectPtr&);
576class ICEGRID_API AMD_Session_allocateObjectById :
public virtual ::Ice::AMDCallback
580 virtual ~AMD_Session_allocateObjectById();
586 virtual void ice_response(const ::Ice::ObjectPrx& result) = 0;
589typedef ::IceUtil::Handle< ::IceGrid::AMD_Session_allocateObjectById> AMD_Session_allocateObjectByIdPtr;
596class ICEGRID_API AMD_Session_allocateObjectByType :
public virtual ::Ice::AMDCallback
600 virtual ~AMD_Session_allocateObjectByType();
606 virtual void ice_response(const ::Ice::ObjectPrx& result) = 0;
609typedef ::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)
625class 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)
638#if defined(_MSC_VER) && (_MSC_VER >= 1900)
639# pragma warning(push)
640# pragma warning(disable:4239)
643class 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)
669class Callback_Session_keepAlive_Base :
public virtual ::IceInternal::CallbackBase { };
670typedef ::IceUtil::Handle< Callback_Session_keepAlive_Base> Callback_Session_keepAlivePtr;
677class Callback_Session_allocateObjectById_Base :
public virtual ::IceInternal::CallbackBase { };
678typedef ::IceUtil::Handle< Callback_Session_allocateObjectById_Base> Callback_Session_allocateObjectByIdPtr;
685class Callback_Session_allocateObjectByType_Base :
public virtual ::IceInternal::CallbackBase { };
686typedef ::IceUtil::Handle< Callback_Session_allocateObjectByType_Base> Callback_Session_allocateObjectByTypePtr;
693class Callback_Session_releaseObject_Base :
public virtual ::IceInternal::CallbackBase { };
694typedef ::IceUtil::Handle< Callback_Session_releaseObject_Base> Callback_Session_releaseObjectPtr;
701class Callback_Session_setAllocationTimeout_Base :
public virtual ::IceInternal::CallbackBase { };
702typedef ::IceUtil::Handle< Callback_Session_setAllocationTimeout_Base> Callback_Session_setAllocationTimeoutPtr;
712class 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);
747 ::Ice::AsyncResultPtr begin_keepAlive(const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
761 ::Ice::AsyncResultPtr begin_keepAlive(const ::Ice::Context& context, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
763 return _iceI_begin_keepAlive(context, cb, cookie);
774 ::Ice::AsyncResultPtr begin_keepAlive(const ::IceGrid::Callback_Session_keepAlivePtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
788 ::Ice::AsyncResultPtr begin_keepAlive(const ::Ice::Context& context, const ::IceGrid::Callback_Session_keepAlivePtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
790 return _iceI_begin_keepAlive(context, cb, cookie);
821 return end_allocateObjectById(_iceI_begin_allocateObjectById(
id, context, ::IceInternal::dummyCallback, 0,
true));
834 ::Ice::AsyncResultPtr begin_allocateObjectById(const ::Ice::Identity&
id, const ::Ice::Context& context =
::Ice::noExplicitContext)
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)
867 ::Ice::AsyncResultPtr begin_allocateObjectById(const ::Ice::Identity&
id, const ::Ice::Context& context, 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)
900 ::Ice::AsyncResultPtr begin_allocateObjectById(const ::Ice::Identity&
id, const ::Ice::Context& context, const ::IceGrid::Callback_Session_allocateObjectByIdPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
902 return _iceI_begin_allocateObjectById(
id, context, cb, cookie);
914 ICE_MEMBER(
ICEGRID_API) ::Ice::ObjectPrx end_allocateObjectById(const ::Ice::AsyncResultPtr& result);
918 ICE_MEMBER(
ICEGRID_API) ::Ice::AsyncResultPtr _iceI_begin_allocateObjectById(const ::Ice::Identity&, const ::Ice::
Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::
LocalObjectPtr& cookie = 0, bool sync = false);
935 return end_allocateObjectByType(_iceI_begin_allocateObjectByType(type, context, ::IceInternal::dummyCallback, 0,
true));
948 ::Ice::AsyncResultPtr begin_allocateObjectByType(const ::std::string& type, const ::Ice::Context& context =
::Ice::noExplicitContext)
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)
981 ::Ice::AsyncResultPtr begin_allocateObjectByType(const ::std::string& type, const ::Ice::Context& context, 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)
1014 ::Ice::AsyncResultPtr begin_allocateObjectByType(const ::std::string& type, const ::Ice::Context& context, const ::IceGrid::Callback_Session_allocateObjectByTypePtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1016 return _iceI_begin_allocateObjectByType(type, context, cb, cookie);
1025 ICE_MEMBER(
ICEGRID_API) ::Ice::ObjectPrx end_allocateObjectByType(const ::Ice::AsyncResultPtr& result);
1029 ICE_MEMBER(
ICEGRID_API) ::Ice::AsyncResultPtr _iceI_begin_allocateObjectByType(const ::std::string&, const ::Ice::
Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::
LocalObjectPtr& cookie = 0, bool sync = false);
1046 end_releaseObject(_iceI_begin_releaseObject(
id, context, ::IceInternal::dummyCallback, 0,
true));
1056 ::Ice::AsyncResultPtr begin_releaseObject(const ::Ice::Identity&
id, const ::Ice::Context& context =
::Ice::noExplicitContext)
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)
1083 ::Ice::AsyncResultPtr begin_releaseObject(const ::Ice::Identity&
id, const ::Ice::Context& context, 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)
1110 ::Ice::AsyncResultPtr begin_releaseObject(const ::Ice::Identity&
id, const ::Ice::Context& context, const ::IceGrid::Callback_Session_releaseObjectPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1112 return _iceI_begin_releaseObject(
id, context, cb, cookie);
1128 ICE_MEMBER(
ICEGRID_API) ::Ice::AsyncResultPtr _iceI_begin_releaseObject(const ::Ice::Identity&, const ::Ice::
Context&, const ::IceInternal::CallbackBasePtr&, const ::Ice::
LocalObjectPtr& cookie = 0, bool sync = false);
1142 end_setAllocationTimeout(_iceI_begin_setAllocationTimeout(timeout, context, ::IceInternal::dummyCallback, 0,
true));
1156 return _iceI_begin_setAllocationTimeout(timeout, context, ::IceInternal::dummyCallback, 0);
1169 ::Ice::AsyncResultPtr begin_setAllocationTimeout(
::Ice::Int timeout, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1185 ::Ice::AsyncResultPtr begin_setAllocationTimeout(
::Ice::Int timeout, const ::Ice::Context& context, const ::Ice::CallbackPtr& cb, const ::Ice::LocalObjectPtr& cookie = 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)
1216 ::Ice::AsyncResultPtr begin_setAllocationTimeout(
::Ice::Int timeout, const ::Ice::Context& context, const ::IceGrid::Callback_Session_setAllocationTimeoutPtr& cb, const ::Ice::LocalObjectPtr& cookie = 0)
1218 return _iceI_begin_setAllocationTimeout(timeout, context, cb, cookie);
1261class ICEGRID_API Session :
virtual public ::Glacier2::Session
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();
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&);
1386 virtual void _iceWriteImpl(::Ice::OutputStream*)
const;
1387 virtual void _iceReadImpl(::Ice::InputStream*);
1392inline bool operator==(
const Session& lhs,
const Session& rhs)
1394 return static_cast<const ::Ice::Object&
>(lhs) ==
static_cast<const ::Ice::Object&
>(rhs);
1397inline bool operator<(
const Session& lhs,
const Session& rhs)
1399 return static_cast<const ::Ice::Object&
>(lhs) <
static_cast<const ::Ice::Object&
>(rhs);
1421class CallbackNC_Session_keepAlive :
public Callback_Session_keepAlive_Base,
public ::IceInternal::OnewayCallbackNC<T>
1425 typedef IceUtil::Handle<T> TPtr;
1427 typedef void (T::*Exception)(const ::Ice::Exception&);
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)
1445template<
class T> Callback_Session_keepAlivePtr
1446newCallback_Session_keepAlive(
const IceUtil::Handle<T>& instance,
void (T::*cb)(),
void (T::*excb)(const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
1448 return new CallbackNC_Session_keepAlive<T>(instance, cb, excb, sentcb);
1458template<
class T> Callback_Session_keepAlivePtr
1459newCallback_Session_keepAlive(
const IceUtil::Handle<T>& instance,
void (T::*excb)(const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
1461 return new CallbackNC_Session_keepAlive<T>(instance, 0, excb, sentcb);
1472template<
class T> Callback_Session_keepAlivePtr
1473newCallback_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);
1485template<
class T> Callback_Session_keepAlivePtr
1486newCallback_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);
1496template<
class T,
typename CT>
1497class Callback_Session_keepAlive :
public Callback_Session_keepAlive_Base,
public ::IceInternal::OnewayCallback<T, CT>
1501 typedef IceUtil::Handle<T> TPtr;
1503 typedef void (T::*Exception)(const ::Ice::Exception& ,
const 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)
1522template<
class T,
typename CT> Callback_Session_keepAlivePtr
1523newCallback_Session_keepAlive(
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)
1525 return new Callback_Session_keepAlive<T, CT>(instance, cb, excb, sentcb);
1536template<
class T,
typename CT> Callback_Session_keepAlivePtr
1537newCallback_Session_keepAlive(
const IceUtil::Handle<T>& instance,
void (T::*excb)(const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
1539 return new Callback_Session_keepAlive<T, CT>(instance, 0, excb, sentcb);
1551template<
class T,
typename CT> Callback_Session_keepAlivePtr
1552newCallback_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);
1565template<
class T,
typename CT> Callback_Session_keepAlivePtr
1566newCallback_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);
1577class CallbackNC_Session_allocateObjectById :
public Callback_Session_allocateObjectById_Base,
public ::IceInternal::TwowayCallbackNC<T>
1581 typedef IceUtil::Handle<T> TPtr;
1583 typedef void (T::*Exception)(const ::Ice::Exception&);
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
1595 SessionPrx proxy = SessionPrx::uncheckedCast(result->getProxy());
1596 ::Ice::ObjectPrx ret;
1599 ret = proxy->end_allocateObjectById(result);
1601 catch(const ::Ice::Exception& ex)
1603 ::IceInternal::CallbackNC<T>::exception(result, ex);
1608 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
1626template<
class T> Callback_Session_allocateObjectByIdPtr
1627newCallback_Session_allocateObjectById(
const IceUtil::Handle<T>& instance,
void (T::*cb)(const ::Ice::ObjectPrx&),
void (T::*excb)(const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
1629 return new CallbackNC_Session_allocateObjectById<T>(instance, cb, excb, sentcb);
1640template<
class T> Callback_Session_allocateObjectByIdPtr
1641newCallback_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);
1651template<
class T,
typename CT>
1652class Callback_Session_allocateObjectById :
public Callback_Session_allocateObjectById_Base,
public ::IceInternal::TwowayCallback<T, CT>
1656 typedef IceUtil::Handle<T> TPtr;
1658 typedef void (T::*Exception)(const ::Ice::Exception& ,
const 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
1670 SessionPrx proxy = SessionPrx::uncheckedCast(result->getProxy());
1671 ::Ice::ObjectPrx ret;
1674 ret = proxy->end_allocateObjectById(result);
1676 catch(const ::Ice::Exception& ex)
1678 ::IceInternal::Callback<T, CT>::exception(result, ex);
1683 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(ret, CT::dynamicCast(result->getCookie()));
1702template<
class T,
typename CT> Callback_Session_allocateObjectByIdPtr
1703newCallback_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);
1717template<
class T,
typename CT> Callback_Session_allocateObjectByIdPtr
1718newCallback_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);
1729class CallbackNC_Session_allocateObjectByType :
public Callback_Session_allocateObjectByType_Base,
public ::IceInternal::TwowayCallbackNC<T>
1733 typedef IceUtil::Handle<T> TPtr;
1735 typedef void (T::*Exception)(const ::Ice::Exception&);
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
1747 SessionPrx proxy = SessionPrx::uncheckedCast(result->getProxy());
1748 ::Ice::ObjectPrx ret;
1751 ret = proxy->end_allocateObjectByType(result);
1753 catch(const ::Ice::Exception& ex)
1755 ::IceInternal::CallbackNC<T>::exception(result, ex);
1760 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)(ret);
1778template<
class T> Callback_Session_allocateObjectByTypePtr
1779newCallback_Session_allocateObjectByType(
const IceUtil::Handle<T>& instance,
void (T::*cb)(const ::Ice::ObjectPrx&),
void (T::*excb)(const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
1781 return new CallbackNC_Session_allocateObjectByType<T>(instance, cb, excb, sentcb);
1792template<
class T> Callback_Session_allocateObjectByTypePtr
1793newCallback_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);
1803template<
class T,
typename CT>
1804class Callback_Session_allocateObjectByType :
public Callback_Session_allocateObjectByType_Base,
public ::IceInternal::TwowayCallback<T, CT>
1808 typedef IceUtil::Handle<T> TPtr;
1810 typedef void (T::*Exception)(const ::Ice::Exception& ,
const 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
1822 SessionPrx proxy = SessionPrx::uncheckedCast(result->getProxy());
1823 ::Ice::ObjectPrx ret;
1826 ret = proxy->end_allocateObjectByType(result);
1828 catch(const ::Ice::Exception& ex)
1830 ::IceInternal::Callback<T, CT>::exception(result, ex);
1835 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(ret, CT::dynamicCast(result->getCookie()));
1854template<
class T,
typename CT> Callback_Session_allocateObjectByTypePtr
1855newCallback_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);
1869template<
class T,
typename CT> Callback_Session_allocateObjectByTypePtr
1870newCallback_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);
1881class CallbackNC_Session_releaseObject :
public Callback_Session_releaseObject_Base,
public ::IceInternal::TwowayCallbackNC<T>
1885 typedef IceUtil::Handle<T> TPtr;
1887 typedef void (T::*Exception)(const ::Ice::Exception&);
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
1899 SessionPrx proxy = SessionPrx::uncheckedCast(result->getProxy());
1902 proxy->end_releaseObject(result);
1904 catch(const ::Ice::Exception& ex)
1906 ::IceInternal::CallbackNC<T>::exception(result, ex);
1911 (::IceInternal::CallbackNC<T>::_callback.get()->*_response)();
1929template<
class T> Callback_Session_releaseObjectPtr
1930newCallback_Session_releaseObject(
const IceUtil::Handle<T>& instance,
void (T::*cb)(),
void (T::*excb)(const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
1932 return new CallbackNC_Session_releaseObject<T>(instance, cb, excb, sentcb);
1942template<
class T> Callback_Session_releaseObjectPtr
1943newCallback_Session_releaseObject(
const IceUtil::Handle<T>& instance,
void (T::*excb)(const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
1945 return new CallbackNC_Session_releaseObject<T>(instance, 0, excb, sentcb);
1956template<
class T> Callback_Session_releaseObjectPtr
1957newCallback_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);
1969template<
class T> Callback_Session_releaseObjectPtr
1970newCallback_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);
1980template<
class T,
typename CT>
1981class Callback_Session_releaseObject :
public Callback_Session_releaseObject_Base,
public ::IceInternal::TwowayCallback<T, CT>
1985 typedef IceUtil::Handle<T> TPtr;
1987 typedef void (T::*Exception)(const ::Ice::Exception& ,
const 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
1999 SessionPrx proxy = SessionPrx::uncheckedCast(result->getProxy());
2002 proxy->end_releaseObject(result);
2004 catch(const ::Ice::Exception& ex)
2006 ::IceInternal::Callback<T, CT>::exception(result, ex);
2011 (::IceInternal::Callback<T, CT>::_callback.get()->*_response)(CT::dynamicCast(result->getCookie()));
2030template<
class T,
typename CT> Callback_Session_releaseObjectPtr
2031newCallback_Session_releaseObject(
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)
2033 return new Callback_Session_releaseObject<T, CT>(instance, cb, excb, sentcb);
2044template<
class T,
typename CT> Callback_Session_releaseObjectPtr
2045newCallback_Session_releaseObject(
const IceUtil::Handle<T>& instance,
void (T::*excb)(const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
2047 return new Callback_Session_releaseObject<T, CT>(instance, 0, excb, sentcb);
2059template<
class T,
typename CT> Callback_Session_releaseObjectPtr
2060newCallback_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);
2073template<
class T,
typename CT> Callback_Session_releaseObjectPtr
2074newCallback_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);
2085class CallbackNC_Session_setAllocationTimeout :
public Callback_Session_setAllocationTimeout_Base,
public ::IceInternal::OnewayCallbackNC<T>
2089 typedef IceUtil::Handle<T> TPtr;
2091 typedef void (T::*Exception)(const ::Ice::Exception&);
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)
2109template<
class T> Callback_Session_setAllocationTimeoutPtr
2110newCallback_Session_setAllocationTimeout(
const IceUtil::Handle<T>& instance,
void (T::*cb)(),
void (T::*excb)(const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
2112 return new CallbackNC_Session_setAllocationTimeout<T>(instance, cb, excb, sentcb);
2122template<
class T> Callback_Session_setAllocationTimeoutPtr
2123newCallback_Session_setAllocationTimeout(
const IceUtil::Handle<T>& instance,
void (T::*excb)(const ::Ice::Exception&),
void (T::*sentcb)(
bool) = 0)
2125 return new CallbackNC_Session_setAllocationTimeout<T>(instance, 0, excb, sentcb);
2136template<
class T> Callback_Session_setAllocationTimeoutPtr
2137newCallback_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);
2149template<
class T> Callback_Session_setAllocationTimeoutPtr
2150newCallback_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);
2160template<
class T,
typename CT>
2161class Callback_Session_setAllocationTimeout :
public Callback_Session_setAllocationTimeout_Base,
public ::IceInternal::OnewayCallback<T, CT>
2165 typedef IceUtil::Handle<T> TPtr;
2167 typedef void (T::*Exception)(const ::Ice::Exception& ,
const 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)
2186template<
class T,
typename CT> Callback_Session_setAllocationTimeoutPtr
2187newCallback_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);
2200template<
class T,
typename CT> Callback_Session_setAllocationTimeoutPtr
2201newCallback_Session_setAllocationTimeout(
const IceUtil::Handle<T>& instance,
void (T::*excb)(const ::Ice::Exception&,
const CT&),
void (T::*sentcb)(
bool,
const CT&) = 0)
2203 return new Callback_Session_setAllocationTimeout<T, CT>(instance, 0, excb, sentcb);
2215template<
class T,
typename CT> Callback_Session_setAllocationTimeoutPtr
2216newCallback_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);
2229template<
class T,
typename CT> Callback_Session_setAllocationTimeoutPtr
2230newCallback_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);
#define ICEGRID_API
Definition Descriptor.h:58
#define ICE_MEMBER(API)
Definition Config.h:177
A client-visible session object, which is tied to the lifecycle of a Router.
Definition Session.h:163
A session object is used by IceGrid clients to allocate and release objects.
Definition Session.h:216
static const ::std::string & ice_staticId()
Obtains the Slice type ID of this interface.
auto releaseObjectAsync(const ::Ice::Identity &id, const ::Ice::Context &context=::Ice::noExplicitContext) -> decltype(::std::declval< P< void > >().get_future())
Release an object that was allocated using allocateObjectById or allocateObjectByType.
Definition Session.h:414
auto allocateObjectByIdAsync(const ::Ice::Identity &id, const ::Ice::Context &context=::Ice::noExplicitContext) -> decltype(::std::declval< P<::std::shared_ptr<::Ice::ObjectPrx > > >().get_future())
Allocate an object.
Definition Session.h:297
::std::function< void()> allocateObjectByTypeAsync(const ::std::string &type, ::std::function< void(::std::shared_ptr<::Ice::ObjectPrx >)> response, ::std::function< void(::std::exception_ptr)> ex=nullptr, ::std::function< void(bool)> sent=nullptr, const ::Ice::Context &context=::Ice::noExplicitContext)
Allocate an object with the given type.
Definition Session.h:377
void releaseObject(const ::Ice::Identity &id, const ::Ice::Context &context=::Ice::noExplicitContext)
Release an object that was allocated using allocateObjectById or allocateObjectByType.
Definition Session.h:401
::std::shared_ptr<::Ice::ObjectPrx > allocateObjectById(const ::Ice::Identity &id, const ::Ice::Context &context=::Ice::noExplicitContext)
Allocate an object.
Definition Session.h:281
::std::function< void()> allocateObjectByIdAsync(const ::Ice::Identity &id, ::std::function< void(::std::shared_ptr<::Ice::ObjectPrx >)> response, ::std::function< void(::std::exception_ptr)> ex=nullptr, ::std::function< void(bool)> sent=nullptr, const ::Ice::Context &context=::Ice::noExplicitContext)
Allocate an object.
Definition Session.h:317
auto allocateObjectByTypeAsync(const ::std::string &type, const ::Ice::Context &context=::Ice::noExplicitContext) -> decltype(::std::declval< P<::std::shared_ptr<::Ice::ObjectPrx > > >().get_future())
Allocate an object with the given type.
Definition Session.h:357
::std::function< void()> releaseObjectAsync(const ::Ice::Identity &id, ::std::function< void()> response, ::std::function< void(::std::exception_ptr)> ex=nullptr, ::std::function< void(bool)> sent=nullptr, const ::Ice::Context &context=::Ice::noExplicitContext)
Release an object that was allocated using allocateObjectById or allocateObjectByType.
Definition Session.h:431
void keepAlive(const ::Ice::Context &context=::Ice::noExplicitContext)
Keep the session alive.
Definition Session.h:225
::std::shared_ptr<::Ice::ObjectPrx > allocateObjectByType(const ::std::string &type, const ::Ice::Context &context=::Ice::noExplicitContext)
Allocate an object with the given type.
Definition Session.h:341
auto keepAliveAsync(const ::Ice::Context &context=::Ice::noExplicitContext) -> decltype(::std::declval< P< void > >().get_future())
Keep the session alive.
Definition Session.h:238
::std::function< void()> keepAliveAsync(::std::function< void()> response, ::std::function< void(::std::exception_ptr)> ex=nullptr, ::std::function< void(bool)> sent=nullptr, const ::Ice::Context &context=::Ice::noExplicitContext)
Keep the session alive.
Definition Session.h:255
auto setAllocationTimeoutAsync(int timeout, const ::Ice::Context &context=::Ice::noExplicitContext) -> decltype(::std::declval< P< void > >().get_future())
Set the allocation timeout.
Definition Session.h:467
void setAllocationTimeout(int timeout, const ::Ice::Context &context=::Ice::noExplicitContext)
Set the allocation timeout.
Definition Session.h:452
::std::function< void()> setAllocationTimeoutAsync(int timeout, ::std::function< void()> response, ::std::function< void(::std::exception_ptr)> ex=nullptr, ::std::function< void(bool)> sent=nullptr, const ::Ice::Context &context=::Ice::noExplicitContext)
Set the allocation timeout.
Definition Session.h:486
A session object is used by IceGrid clients to allocate and release objects.
Definition Session.h:87
virtual void releaseObject(::Ice::Identity id, const ::Ice::Current ¤t)=0
Release an object that was allocated using allocateObjectById or allocateObjectByType.
virtual::std::string ice_id(const ::Ice::Current ¤t) const override
Obtains a Slice type ID representing the most-derived interface supported by this object.
SessionPrx ProxyType
Definition Session.h:90
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 ¤t)=0
Allocate an object with the given type.
virtual void keepAlive(const ::Ice::Current ¤t)=0
Keep the session alive.
virtual bool ice_isA(::std::string id, const ::Ice::Current ¤t) const override
Determines whether this object supports an interface with the given Slice type ID.
virtual ::std::vector<::std::string > ice_ids(const ::Ice::Current ¤t) const override
Obtains a list of the Slice type IDs representing the interfaces supported by this object.
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 ¤t)=0
Allocate an object.
static const ::std::string & ice_staticId()
Obtains the Slice type ID corresponding to this class.
virtual void setAllocationTimeout(int timeout, const ::Ice::Current ¤t)=0
Set the allocation timeout.
Helper template that supplies proxy factory functions.
Definition Proxy.h:1204
Definition BuiltinSequences.h:56
const Context noExplicitContext
Marker value used to indicate that no explicit context was passed to a proxy invocation.
int Int
The mapping for the Slice int type.
Definition Config.h:54
::std::map<::std::string, ::std::string > Context
A request context.
Definition Current.h:68
const Current emptyCurrent
A default-initialized Current instance.
IceInternal::Handle< LocalObject > LocalObjectPtr
Definition LocalObjectF.h:17
bool operator<(const C &lhs, const C &rhs)
Relational operator for generated structs and classes.
Definition Comparable.h:136
bool operator==(const C &lhs, const C &rhs)
Relational operator for generated structs and classes.
Definition Comparable.h:184
The identity of an Ice object.
Definition Identity.h:67