diff options
author | Benoit Foucher <benoit@zeroc.com> | 2007-11-27 11:58:35 +0100 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2007-11-27 11:58:35 +0100 |
commit | 47f800495093fd7679a315e2d730fea22f6135b7 (patch) | |
tree | a7b8d3488f3841367dd03d10cae293f36fd10481 /cpp/src/Ice/LocatorInfo.h | |
parent | Fixed SystemException to no longer derive from LocalException (diff) | |
download | ice-47f800495093fd7679a315e2d730fea22f6135b7.tar.bz2 ice-47f800495093fd7679a315e2d730fea22f6135b7.tar.xz ice-47f800495093fd7679a315e2d730fea22f6135b7.zip |
- Added support for non-blocking AMI/batch requests, connection
creation.
- Added support for AMI oneway requests.
- Changed collocation optimization to not perform any DNS lookups.
Diffstat (limited to 'cpp/src/Ice/LocatorInfo.h')
-rw-r--r-- | cpp/src/Ice/LocatorInfo.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/cpp/src/Ice/LocatorInfo.h b/cpp/src/Ice/LocatorInfo.h index 4811030d97c..f0a1032fa05 100644 --- a/cpp/src/Ice/LocatorInfo.h +++ b/cpp/src/Ice/LocatorInfo.h @@ -71,6 +71,15 @@ class LocatorInfo : public IceUtil::Shared, public IceUtil::Mutex { public: + class GetEndpointsCallback : virtual public IceUtil::Shared + { + public: + + virtual void setEndpoints(const std::vector<EndpointIPtr>&, bool) = 0; + virtual void setException(const Ice::LocalException&) = 0; + }; + typedef IceUtil::Handle<GetEndpointsCallback> GetEndpointsCallbackPtr; + LocatorInfo(const Ice::LocatorPrx&, const LocatorTablePtr&); void destroy(); @@ -83,6 +92,7 @@ public: Ice::LocatorRegistryPrx getLocatorRegistry(); std::vector<EndpointIPtr> getEndpoints(const IndirectReferencePtr&, int, bool&); + void getEndpoints(const IndirectReferencePtr&, int, const GetEndpointsCallbackPtr&); void clearCache(const IndirectReferencePtr&); void clearObjectCache(const IndirectReferencePtr&); @@ -90,6 +100,12 @@ private: void trace(const std::string&, const IndirectReferencePtr&, const std::vector<EndpointIPtr>&); + void getEndpointsException(const IndirectReferencePtr&, const Ice::Exception&); + void getWellKnownObjectEndpoints(const IndirectReferencePtr&, const Ice::ObjectPrx&, int, bool, + const GetEndpointsCallbackPtr&); + void getEndpointsException(const IndirectReferencePtr&, const Ice::Exception&, const GetEndpointsCallbackPtr&); + void getEndpointsTrace(const IndirectReferencePtr&, const std::vector<EndpointIPtr>&, bool); + const Ice::LocatorPrx _locator; Ice::LocatorRegistryPrx _locatorRegistry; const LocatorTablePtr _table; |