diff options
author | Benoit Foucher <benoit@zeroc.com> | 2012-10-10 16:00:58 +0200 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2012-10-10 16:00:58 +0200 |
commit | 8bcfc9e4a8a1de3d72e30ffc6f3c9d72a8d3f0e4 (patch) | |
tree | 1cdcd88fccb57f88d2b47cd1757b4d43bc05be4b /cpp/test/Ice/metrics/TestAMDI.cpp | |
parent | Added IceGridGUI IceStorm metrics (diff) | |
download | ice-8bcfc9e4a8a1de3d72e30ffc6f3c9d72a8d3f0e4.tar.bz2 ice-8bcfc9e4a8a1de3d72e30ffc6f3c9d72a8d3f0e4.tar.xz ice-8bcfc9e4a8a1de3d72e30ffc6f3c9d72a8d3f0e4.zip |
Improved tracing of failures, user exceptions are now tracked
with a userException member.
Diffstat (limited to 'cpp/test/Ice/metrics/TestAMDI.cpp')
-rw-r--r-- | cpp/test/Ice/metrics/TestAMDI.cpp | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/cpp/test/Ice/metrics/TestAMDI.cpp b/cpp/test/Ice/metrics/TestAMDI.cpp new file mode 100644 index 00000000000..f75b9769dae --- /dev/null +++ b/cpp/test/Ice/metrics/TestAMDI.cpp @@ -0,0 +1,84 @@ +// ********************************************************************** +// +// Copyright (c) 2003-2012 ZeroC, Inc. All rights reserved. +// +// This copy of Ice is licensed to you under the terms described in the +// ICE_LICENSE file included in this distribution. +// +// ********************************************************************** + +#include <Ice/Ice.h> +#include <TestAMDI.h> + +void +MetricsI::op_async(const Test::AMD_Metrics_opPtr& cb, const Ice::Current&) +{ + cb->ice_response(); +} + +void +MetricsI::fail_async(const Test::AMD_Metrics_failPtr& cb, const Ice::Current& current) +{ + current.con->close(true); + cb->ice_response(); +} + +void +MetricsI::opWithUserException_async(const Test::AMD_Metrics_opWithUserExceptionPtr& cb, const Ice::Current&) +{ + cb->ice_exception(Test::UserEx()); +} + +void +MetricsI::opWithRequestFailedException_async(const Test::AMD_Metrics_opWithRequestFailedExceptionPtr& cb, + const Ice::Current&) +{ + cb->ice_exception(Ice::ObjectNotExistException(__FILE__, __LINE__)); +} + +void +MetricsI::opWithLocalException_async(const Test::AMD_Metrics_opWithLocalExceptionPtr& cb, const Ice::Current&) +{ + cb->ice_exception(Ice::SyscallException(__FILE__, __LINE__)); +} + +void +MetricsI::opWithUnknownException_async(const Test::AMD_Metrics_opWithUnknownExceptionPtr& cb, const Ice::Current&) +{ + throw "Test"; +} + +void +MetricsI::opByteS_async(const Test::AMD_Metrics_opByteSPtr& cb, const Test::ByteSeq& bs, const Ice::Current&) +{ + cb->ice_response(); +} + +Ice::ObjectPrx +MetricsI::getAdmin(const Ice::Current& current) +{ + return current.adapter->getCommunicator()->getAdmin(); +} + +void +MetricsI::shutdown(const Ice::Current& current) +{ + current.adapter->getCommunicator()->shutdown(); +} + +ControllerI::ControllerI(const Ice::ObjectAdapterPtr& adapter) : _adapter(adapter) +{ +} + +void +ControllerI::hold(const Ice::Current&) +{ + _adapter->hold(); + _adapter->waitForHold(); +} + +void +ControllerI::resume(const Ice::Current&) +{ + _adapter->activate(); +} |