From b6b859d8c3b703f2efab1e2ac8793ac5ebe26fee Mon Sep 17 00:00:00 2001 From: Matej Sekoranja Date: Tue, 1 Mar 2011 22:52:44 +0100 Subject: [PATCH] clean server test --- .../remoteClient/clientContextImpl.cpp | 2 +- pvAccessApp/server/serverChannelImpl.h | 2 +- pvAccessApp/server/serverContext.cpp | 19 ++++++---- testApp/remote/testRemoteClientImpl.cpp | 38 ++++++++++++------- 4 files changed, 38 insertions(+), 23 deletions(-) diff --git a/pvAccessApp/remoteClient/clientContextImpl.cpp b/pvAccessApp/remoteClient/clientContextImpl.cpp index 797ecce..69ab2b0 100644 --- a/pvAccessApp/remoteClient/clientContextImpl.cpp +++ b/pvAccessApp/remoteClient/clientContextImpl.cpp @@ -3443,7 +3443,7 @@ namespace epics { m_broadcastPort(CA_BROADCAST_PORT), m_receiveBufferSize(MAX_TCP_RECV), m_timer(0), m_broadcastTransport(0), m_searchTransport(0), m_connector(0), m_transportRegistry(0), m_namedLocker(0), m_lastCID(0), m_lastIOID(0), m_channelSearchManager(0), - m_version(new Version("CA Client", "cpp", 0, 0, 0, 1)), + m_version(new Version("CA Client", "cpp", 1, 0, 0, 0)), m_provider(new ChannelProviderImpl(this)), m_contextState(CONTEXT_NOT_INITIALIZED), m_configuration(new SystemConfigurationImpl()), m_refCount(1) diff --git a/pvAccessApp/server/serverChannelImpl.h b/pvAccessApp/server/serverChannelImpl.h index 8f966a8..eff18c5 100644 --- a/pvAccessApp/server/serverChannelImpl.h +++ b/pvAccessApp/server/serverChannelImpl.h @@ -119,7 +119,7 @@ private: /** * Destroy state. */ - boolean _destroyed; + bool _destroyed; /** * Mutex diff --git a/pvAccessApp/server/serverContext.cpp b/pvAccessApp/server/serverContext.cpp index 343b726..9059d92 100644 --- a/pvAccessApp/server/serverContext.cpp +++ b/pvAccessApp/server/serverContext.cpp @@ -8,11 +8,11 @@ namespace epics { namespace pvAccess { const char* ServerContextImpl::StateNames[] = { "NOT_INITIALIZED", "INITIALIZED", "RUNNING", "SHUTDOWN", "DESTROYED"}; -const int32 ServerContextImpl::VERSION_MAJOR = 2; -const int32 ServerContextImpl::VERSION_MINOR = 0; +const int32 ServerContextImpl::VERSION_MAJOR = 0; +const int32 ServerContextImpl::VERSION_MINOR = 9; const int32 ServerContextImpl::VERSION_MAINTENANCE = 0; const int32 ServerContextImpl::VERSION_DEVELOPMENT = 0; -const Version ServerContextImpl::VERSION("Channel Access Server in C++", "C++", +const Version ServerContextImpl::VERSION("CA Server", "cpp", ServerContextImpl::VERSION_MAJOR, ServerContextImpl::VERSION_MINOR, ServerContextImpl::VERSION_MAINTENANCE, @@ -21,8 +21,8 @@ const Version ServerContextImpl::VERSION("Channel Access Server in C++", "C++", ServerContextImpl::ServerContextImpl(): _state(NOT_INITIALIZED), - _beaconAddressList(""), - _ignoreAddressList(""), + _beaconAddressList(), + _ignoreAddressList(), _autoBeaconAddressList(true), _beaconPeriod(15.0), _broadcastPort(CA_BROADCAST_PORT), @@ -59,7 +59,7 @@ const Version& ServerContextImpl::getVersion() void ServerContextImpl::initializeLogger() { - createFileLogger("serverContextImpl.log"); + //createFileLogger("serverContextImpl.log"); } Configuration* ServerContextImpl::getConfiguration() @@ -328,10 +328,11 @@ void ServerContextImpl::destroyAllTransports() } int32 size; - auto_ptr transports(_transportRegistry->toArray(size)); + Transport** transports = _transportRegistry->toArray(size); if (size == 0) { + delete[] transports; return; } @@ -339,7 +340,7 @@ void ServerContextImpl::destroyAllTransports() for (int i = 0; i < size; i++) { - Transport* transport = transports.get()[i]; + Transport* transport = transports[i]; try { transport->close(true); @@ -355,6 +356,8 @@ void ServerContextImpl::destroyAllTransports() errlogSevPrintf(errlogMajor, "Unhandled exception caught from client code at %s:%d.", __FILE__, __LINE__); } } + + delete[] transports; } void ServerContextImpl::printInfo() diff --git a/testApp/remote/testRemoteClientImpl.cpp b/testApp/remote/testRemoteClientImpl.cpp index c4c7ae0..21bfb84 100644 --- a/testApp/remote/testRemoteClientImpl.cpp +++ b/testApp/remote/testRemoteClientImpl.cpp @@ -62,7 +62,7 @@ class GetFieldRequesterImpl : public GetFieldRequester virtual void getDone(const epics::pvData::Status& status,epics::pvData::FieldConstPtr field) { std::cout << "getDone(" << status.toString() << ", "; - if (field) + if (status.isSuccess() && field) { String str; field->toString(&str); @@ -99,7 +99,7 @@ class ChannelGetRequesterImpl : public ChannelGetRequester epics::pvData::PVStructure *pvStructure,epics::pvData::BitSet *bitSet) { std::cout << "channelGetConnect(" << status.toString() << ")" << std::endl; - if (pvStructure) + if (status.isSuccess()) { String st; pvStructure->toString(&st); @@ -117,7 +117,7 @@ class ChannelGetRequesterImpl : public ChannelGetRequester { std::cout << "getDone(" << status.toString() << ")" << std::endl; Lock guard(m_mutex); - if (m_pvStructure) + if (status.isSuccess()) { String str; m_pvStructure->toString(&str); @@ -157,7 +157,7 @@ class ChannelPutRequesterImpl : public ChannelPutRequester virtual void getDone(const epics::pvData::Status& status) { std::cout << "getDone(" << status.toString() << ")" << std::endl; - if (m_pvStructure) + if (status.isSuccess()) { String str; m_pvStructure->toString(&str); @@ -169,7 +169,7 @@ class ChannelPutRequesterImpl : public ChannelPutRequester virtual void putDone(const epics::pvData::Status& status) { std::cout << "putDone(" << status.toString() << ")" << std::endl; - if (m_pvStructure) + if (status.isSuccess()) { String str; m_pvStructure->toString(&str); @@ -182,6 +182,12 @@ class ChannelPutRequesterImpl : public ChannelPutRequester class ChannelPutGetRequesterImpl : public ChannelPutGetRequester { + public: + + ChannelPutGetRequesterImpl() : m_channelPutGet(0), m_putData(0), m_getData(0) {}; + + private: + ChannelPutGet *m_channelPutGet; epics::pvData::PVStructure *m_putData; epics::pvData::PVStructure *m_getData; @@ -224,7 +230,7 @@ class ChannelPutGetRequesterImpl : public ChannelPutGetRequester virtual void getGetDone(const epics::pvData::Status& status) { std::cout << "getGetDone(" << status.toString() << ")" << std::endl; - if (m_getData) + if (status.isSuccess()) { String str; m_getData->toString(&str); @@ -236,7 +242,7 @@ class ChannelPutGetRequesterImpl : public ChannelPutGetRequester virtual void getPutDone(const epics::pvData::Status& status) { std::cout << "getPutDone(" << status.toString() << ")" << std::endl; - if (m_putData) + if (status.isSuccess()) { String str; m_putData->toString(&str); @@ -248,7 +254,7 @@ class ChannelPutGetRequesterImpl : public ChannelPutGetRequester virtual void putGetDone(const epics::pvData::Status& status) { std::cout << "putGetDone(" << status.toString() << ")" << std::endl; - if (m_putData) + if (status.isSuccess()) { String str; m_putData->toString(&str); @@ -280,7 +286,7 @@ class ChannelRPCRequesterImpl : public ChannelRPCRequester epics::pvData::PVStructure *pvStructure,epics::pvData::BitSet *bitSet) { std::cout << "channelRPCConnect(" << status.toString() << ")" << std::endl; - if (pvStructure) + if (status.isSuccess()) { String st; pvStructure->toString(&st); @@ -296,7 +302,7 @@ class ChannelRPCRequesterImpl : public ChannelRPCRequester virtual void requestDone(const epics::pvData::Status& status,epics::pvData::PVStructure *pvResponse) { std::cout << "requestDone(" << status.toString() << ")" << std::endl; - if (pvResponse) + if (status.isSuccess()) { String str; pvResponse->toString(&str); @@ -308,6 +314,12 @@ class ChannelRPCRequesterImpl : public ChannelRPCRequester class ChannelArrayRequesterImpl : public ChannelArrayRequester { + public: + + ChannelArrayRequesterImpl() : m_channelArray(0), m_pvArray(0) {}; + + private: + ChannelArray *m_channelArray; epics::pvData::PVArray *m_pvArray; @@ -325,7 +337,7 @@ class ChannelArrayRequesterImpl : public ChannelArrayRequester epics::pvData::PVArray *pvArray) { std::cout << "channelArrayConnect(" << status.toString() << ")" << std::endl; - if (pvArray) + if (status.isSuccess()) { String st; pvArray->toString(&st); @@ -340,7 +352,7 @@ class ChannelArrayRequesterImpl : public ChannelArrayRequester virtual void getArrayDone(const epics::pvData::Status& status) { std::cout << "getArrayDone(" << status.toString() << ")" << std::endl; - if (m_pvArray) + if (status.isSuccess()) { String str; m_pvArray->toString(&str); @@ -375,7 +387,7 @@ class MonitorRequesterImpl : public MonitorRequester virtual void monitorConnect(const epics::pvData::Status& status, Monitor* monitor, Structure* structure) { std::cout << "monitorConnect(" << status.toString() << ")" << std::endl; - if (structure) + if (status.isSuccess() && structure) { String str; structure->toString(&str);