summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/ObjectAdapterI.h
diff options
context:
space:
mode:
authorMatthew Newhook <matthew@zeroc.com>2014-10-02 16:45:39 -0230
committerMatthew Newhook <matthew@zeroc.com>2014-10-02 16:45:39 -0230
commit4dbbe4e02d903abb8a7c7e234c36e1ba4c1e2291 (patch)
tree2d9c1f2761bdfc78526d2cabbca9c9d5f445a3bd /cpp/src/Ice/ObjectAdapterI.h
parentICE-5585 call callback from ThreadPool if conneciton already closed (diff)
downloadice-4dbbe4e02d903abb8a7c7e234c36e1ba4c1e2291.tar.bz2
ice-4dbbe4e02d903abb8a7c7e234c36e1ba4c1e2291.tar.xz
ice-4dbbe4e02d903abb8a7c7e234c36e1ba4c1e2291.zip
Cleanup and simplification of OA in C++/Java/C#.
Diffstat (limited to 'cpp/src/Ice/ObjectAdapterI.h')
-rw-r--r--cpp/src/Ice/ObjectAdapterI.h20
1 files changed, 11 insertions, 9 deletions
diff --git a/cpp/src/Ice/ObjectAdapterI.h b/cpp/src/Ice/ObjectAdapterI.h
index 9d2df9ceff9..3897c0ef557 100644
--- a/cpp/src/Ice/ObjectAdapterI.h
+++ b/cpp/src/Ice/ObjectAdapterI.h
@@ -23,7 +23,6 @@
#include <Ice/ObjectF.h>
#include <Ice/RouterInfoF.h>
#include <Ice/EndpointIF.h>
-#include <Ice/ConnectorF.h>
#include <Ice/LocatorInfoF.h>
#include <Ice/ThreadPoolF.h>
#include <Ice/OutgoingAsyncF.h>
@@ -117,30 +116,33 @@ private:
void updateLocatorRegistry(const IceInternal::LocatorInfoPtr&, const Ice::ObjectPrx&, bool);
bool filterProperties(Ice::StringSeq&);
- bool _deactivated;
+ enum State
+ {
+ StateUninitialized,
+ StateHeld,
+ StateWaitActivate,
+ StateActive,
+ StateDeactivating,
+ StateDeactivated,
+ StateDestroyed
+ };
+ State _state;
IceInternal::InstancePtr _instance;
CommunicatorPtr _communicator;
IceInternal::ObjectAdapterFactoryPtr _objectAdapterFactory;
IceInternal::ThreadPoolPtr _threadPool;
IceInternal::ACMConfig _acm;
IceInternal::ServantManagerPtr _servantManager;
- bool _activateOneOffDone;
const std::string _name;
const std::string _id;
const std::string _replicaGroupId;
IceInternal::ReferencePtr _reference;
std::vector<IceInternal::IncomingConnectionFactoryPtr> _incomingConnectionFactories;
- std::vector<IceInternal::ConnectorPtr> _connectors;
std::vector<IceInternal::EndpointIPtr> _routerEndpoints;
IceInternal::RouterInfoPtr _routerInfo;
std::vector<IceInternal::EndpointIPtr> _publishedEndpoints;
IceInternal::LocatorInfoPtr _locatorInfo;
int _directCount; // The number of direct proxies dispatching on this object adapter.
- bool _waitForActivate;
- int _waitForHold;
- bool _waitForHoldRetry;
- bool _destroying;
- bool _destroyed;
bool _noConfig;
Identity _processId;
};