summaryrefslogtreecommitdiff
path: root/cpp/demo/Ice/MFC/client/HelloClientDlg.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2015-03-10 12:12:10 +0100
committerBenoit Foucher <benoit@zeroc.com>2015-03-10 12:12:10 +0100
commitc6ca68d97aa5bbc2a172e3e35171b5452657fa22 (patch)
tree46edcca4c8e313285a205bf6fad7c56c452c0cc0 /cpp/demo/Ice/MFC/client/HelloClientDlg.cpp
parentMinor JS style fixes (diff)
downloadice-c6ca68d97aa5bbc2a172e3e35171b5452657fa22.tar.bz2
ice-c6ca68d97aa5bbc2a172e3e35171b5452657fa22.tar.xz
ice-c6ca68d97aa5bbc2a172e3e35171b5452657fa22.zip
ICE-6170 - fixed behavior of batch requests
Diffstat (limited to 'cpp/demo/Ice/MFC/client/HelloClientDlg.cpp')
-rw-r--r--cpp/demo/Ice/MFC/client/HelloClientDlg.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/cpp/demo/Ice/MFC/client/HelloClientDlg.cpp b/cpp/demo/Ice/MFC/client/HelloClientDlg.cpp
index 2462340a045..5a87cadfc37 100644
--- a/cpp/demo/Ice/MFC/client/HelloClientDlg.cpp
+++ b/cpp/demo/Ice/MFC/client/HelloClientDlg.cpp
@@ -131,7 +131,7 @@ CHelloClientDlg::CHelloClientDlg(CWnd* pParent /*=NULL*/) : CDialog(CHelloClient
CallbackPtr cb = new Callback(this);
_sayHelloCallback = newCallback_Hello_sayHello(cb, &Callback::response, &Callback::exception, &Callback::sent);
_shutdownCallback = newCallback_Hello_shutdown(cb, &Callback::response, &Callback::exception);
- _flushCallback = Ice::newCallback_Communicator_flushBatchRequests(cb, &Callback::exception, &Callback::flushSent);
+ _flushCallback = Ice::newCallback_Object_ice_flushBatchRequests(cb, &Callback::exception, &Callback::flushSent);
}
void
@@ -341,9 +341,13 @@ CHelloClientDlg::OnShutdown()
void
CHelloClientDlg::OnFlush()
{
+ if(!_helloPrx)
+ {
+ return;
+ }
try
{
- _communicator->begin_flushBatchRequests(_flushCallback);
+ _helloPrx->begin_ice_flushBatchRequests(_flushCallback);
}
catch(const IceUtil::Exception& ex)
{
@@ -455,6 +459,12 @@ CHelloClientDlg::updateProxy()
}
_helloPrx = Demo::HelloPrx::uncheckedCast(prx);
+
+ //
+ // The batch requests associated to the proxy are lost when we
+ // update the proxy.
+ //
+ _flush->EnableWindow(FALSE);
}
BOOL