summaryrefslogtreecommitdiff
path: root/cppe/src/IceE/Reference.h
diff options
context:
space:
mode:
Diffstat (limited to 'cppe/src/IceE/Reference.h')
-rw-r--r--cppe/src/IceE/Reference.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/cppe/src/IceE/Reference.h b/cppe/src/IceE/Reference.h
index 5557fbcef95..7c2de6714ed 100644
--- a/cppe/src/IceE/Reference.h
+++ b/cppe/src/IceE/Reference.h
@@ -47,6 +47,13 @@ public:
ModeLast = ModeBatchDatagram
};
+ enum Type
+ {
+ Fixed,
+ Direct,
+ Indirect
+ };
+
Mode getMode() const { return _mode; }
bool getSecure() const { return _secure; };
const Ice::Identity& getIdentity() const { return _identity; }
@@ -58,6 +65,7 @@ public:
Ice::CommunicatorPtr getCommunicator() const;
+ virtual Type getType() const = 0;
#ifdef ICEE_HAS_ROUTER
virtual RouterInfoPtr getRouterInfo() const { return 0; }
#endif
@@ -150,6 +158,7 @@ public:
const std::vector<Ice::ConnectionPtr>& getFixedConnections() const;
+ virtual Type getType() const;
virtual std::vector<EndpointPtr> getEndpoints() const;
#ifdef ICEE_HAS_ROUTER
@@ -229,6 +238,7 @@ public:
#endif
);
+ virtual Type getType() const;
virtual std::vector<EndpointPtr> getEndpoints() const;
DirectReferencePtr changeEndpoints(const std::vector<EndpointPtr>&) const;
@@ -285,6 +295,7 @@ public:
virtual LocatorInfoPtr getLocatorInfo() const { return _locatorInfo; }
+ virtual Type getType() const;
virtual std::vector<EndpointPtr> getEndpoints() const;
virtual ReferencePtr changeLocator(const Ice::LocatorPrx&) const;