diff options
author | Marc Laukien <marc@zeroc.com> | 2001-10-16 20:58:14 +0000 |
---|---|---|
committer | Marc Laukien <marc@zeroc.com> | 2001-10-16 20:58:14 +0000 |
commit | 20a85dc803ab458887bab72f8e2a6da9df7ab4f3 (patch) | |
tree | 4ee4dea384381897b2e4bf55dbb2145769e21a3b /cpp/src/Ice/Object.cpp | |
parent | _hash, fixes to proxy equivalence/compare operations (diff) | |
download | ice-20a85dc803ab458887bab72f8e2a6da9df7ab4f3.tar.bz2 ice-20a85dc803ab458887bab72f8e2a6da9df7ab4f3.tar.xz ice-20a85dc803ab458887bab72f8e2a6da9df7ab4f3.zip |
facet stuff
Diffstat (limited to 'cpp/src/Ice/Object.cpp')
-rw-r--r-- | cpp/src/Ice/Object.cpp | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/cpp/src/Ice/Object.cpp b/cpp/src/Ice/Object.cpp index 8f5a9fa16aa..7549ddbc793 100644 --- a/cpp/src/Ice/Object.cpp +++ b/cpp/src/Ice/Object.cpp @@ -42,9 +42,16 @@ Ice::Object::_isA(const string& s) return s == "::Ice::Object"; } +bool +Ice::Object::_hasFacet(const string& s) +{ + return false; // TODO +} + void Ice::Object::_ping() { + // Nothing to do. } DispatchStatus @@ -60,6 +67,18 @@ Ice::Object::____isA(Incoming& __in) } DispatchStatus +Ice::Object::____hasFacet(Incoming& __in) +{ + BasicStream* __is = __in.is(); + BasicStream* __os = __in.os(); + string s; + __is->read(s); + bool __ret = _hasFacet(s); + __os->write(__ret); + return DispatchOK; +} + +DispatchStatus Ice::Object::____ping(Incoming&) { _ping(); @@ -68,6 +87,7 @@ Ice::Object::____ping(Incoming&) const char* Ice::Object::__all[] = { + "_hasFacet" "_isA" "_ping" }; @@ -87,10 +107,14 @@ Ice::Object::__dispatch(Incoming& in, const string& s) { case 0: { - return ____isA(in); + return ____hasFacet(in); } case 1: { + return ____isA(in); + } + case 2: + { return ____ping(in); } } @@ -102,5 +126,9 @@ Ice::Object::__dispatch(Incoming& in, const string& s) bool Ice::Object::__isMutating(const std::string& s) { + // + // None of the Ice::Object operations accessible via __dispatch() + // is mutating. + // return false; } |