void CallbackI::initiateCallback(const CallbackReceiverPrx& proxy, const Ice::Current& current) { cout << "initiating callback to: " << current.adapter->getCommunicator()->proxyToString(proxy) << endl; try { proxy->callback(); } catch(const Ice::Exception& ex) { cout << ex << endl; } }
void CallbackSenderI::initiateCallback(const CallbackReceiverPrx& proxy, const Ice::Current& current) { printf("initiating callback\n"); fflush(stdout); try { proxy->callback(current.ctx); } catch(const Ice::Exception& ex) { fprintf(stderr, "%s\n", ex.toString().c_str()); } }
void CallbackSenderI::initiateCallback(const CallbackReceiverPrx& proxy, const Current&) { cout << "initiating callback" << endl; try { proxy->callback(); } catch(const Exception& ex) { cout << ex << endl; } }
void CallbackI::initiateCallback_async(const AMD_Callback_initiateCallbackPtr& cb, const CallbackReceiverPrx& proxy, const Current& current) { if(proxy->ice_isTwoway()) { proxy->callback_async(new AMI_CallbackReceiver_callbackI(cb), current.ctx); } else { proxy->callback(current.ctx); cb->ice_response(); } }
void CallbackI::initiateCallback_async(const AMD_Callback_initiateCallbackPtr& cb, const CallbackReceiverPrx& proxy, const Current& current) { if(proxy->ice_isTwoway()) { AsyncCBPtr acb = new AsyncCB(); proxy->begin_callback(current.ctx, newCallback_CallbackReceiver_callback(acb, &AsyncCB::responseCallback, &AsyncCB::exceptionCallback), newCookie(cb)); } else { proxy->callback(current.ctx); cb->ice_response(); } }
void CallbackI::initiateCallback_async(const AMD_Callback_initiateCallbackPtr& cb, const CallbackReceiverPrx& proxy, int token, const Current& current) { Ice::Context::const_iterator p = current.ctx.find("serverOvrd"); Ice::Context ctx = current.ctx; if(p != current.ctx.end()) { ctx["_ovrd"] = p->second; } if(proxy->ice_isTwoway()) { AsyncCBPtr acb = new AsyncCB(); proxy->begin_callback(token, ctx, newCallback_CallbackReceiver_callback(acb, &AsyncCB::responseCallback, &AsyncCB::exceptionCallback), newCookie(cb)); } else { proxy->callback(token, ctx); cb->ice_response(); } }