📄 testi.cpp
字号:
// **********************************************************************//// Copyright (c) 2003-2007 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 <TestI.h>using namespace Test;BI::BI() : _postUnmarshalInvoked(false){}boolBI::postUnmarshalInvoked(const Ice::Current&){ return _postUnmarshalInvoked;}voidBI::ice_preMarshal(){ preMarshalInvoked = true;}voidBI::ice_postUnmarshal(){ _postUnmarshalInvoked = true;}CI::CI() : _postUnmarshalInvoked(false){}boolCI::postUnmarshalInvoked(const Ice::Current&){ return _postUnmarshalInvoked;}voidCI::ice_preMarshal(){ preMarshalInvoked = true;}voidCI::ice_postUnmarshal(){ _postUnmarshalInvoked = true;}DI::DI() : _postUnmarshalInvoked(false){}boolDI::postUnmarshalInvoked(const Ice::Current&){ return _postUnmarshalInvoked;}voidDI::ice_preMarshal(){ preMarshalInvoked = true;}voidDI::ice_postUnmarshal(){ _postUnmarshalInvoked = true;}InitialI::InitialI(const Ice::ObjectAdapterPtr& adapter) : _adapter(adapter), _b1(new BI), _b2(new BI), _c(new CI), _d(new DI){ _b1->theA = _b2; // Cyclic reference to another B _b1->theB = _b1; // Self reference. _b1->theC = 0; // Null reference. _b2->theA = _b2; // Self reference, using base. _b2->theB = _b1; // Cyclic reference to another B _b2->theC = _c; // Cyclic reference to a C. _c->theB = _b2; // Cyclic reference to a B. _d->theA = _b1; // Reference to a B. _d->theB = _b2; // Reference to a B. _d->theC = 0; // Reference to a C.}voidInitialI::shutdown(const Ice::Current&){ _adapter->getCommunicator()->shutdown();}BPtrInitialI::getB1(const Ice::Current&){ _b1->preMarshalInvoked = false; _b2->preMarshalInvoked = false; _c->preMarshalInvoked = false; return _b1;}BPtrInitialI::getB2(const Ice::Current&){ _b1->preMarshalInvoked = false; _b2->preMarshalInvoked = false; _c->preMarshalInvoked = false; return _b2;}CPtrInitialI::getC(const Ice::Current&){ _b1->preMarshalInvoked = false; _b2->preMarshalInvoked = false; _c->preMarshalInvoked = false; return _c;}DPtrInitialI::getD(const Ice::Current&){ _b1->preMarshalInvoked = false; _b2->preMarshalInvoked = false; _c->preMarshalInvoked = false; _d->preMarshalInvoked = false; return _d;}voidInitialI::getAll(BPtr& b1, BPtr& b2, CPtr& c, DPtr& d, const Ice::Current&){ _b1->preMarshalInvoked = false; _b2->preMarshalInvoked = false; _c->preMarshalInvoked = false; _d->preMarshalInvoked = false; b1 = _b1; b2 = _b2; c = _c; d = _d;}boolUnexpectedObjectExceptionTestI::ice_invoke(const std::vector<Ice::Byte>&, std::vector<Ice::Byte>& outParams, const Ice::Current& current){ Ice::CommunicatorPtr communicator = current.adapter->getCommunicator(); Ice::OutputStreamPtr out = Ice::createOutputStream(communicator); AlsoEmptyPtr ae = new AlsoEmpty; ice_writeAlsoEmpty(out, ae); out->writePendingObjects(); out->finished(outParams); return true;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -