summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/Reference.cpp
diff options
context:
space:
mode:
authorMarc Laukien <marc@zeroc.com>2005-02-02 15:00:29 +0000
committerMarc Laukien <marc@zeroc.com>2005-02-02 15:00:29 +0000
commit1adab5451bb6db756529cf48a9cb8dffa0f65d28 (patch)
tree2a4994d17b6ea27c8c0e68a98fb8ac059d0e4599 /cpp/src/Ice/Reference.cpp
parentfix (diff)
downloadice-1adab5451bb6db756529cf48a9cb8dffa0f65d28.tar.bz2
ice-1adab5451bb6db756529cf48a9cb8dffa0f65d28.tar.xz
ice-1adab5451bb6db756529cf48a9cb8dffa0f65d28.zip
todo items
Diffstat (limited to 'cpp/src/Ice/Reference.cpp')
-rw-r--r--cpp/src/Ice/Reference.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/cpp/src/Ice/Reference.cpp b/cpp/src/Ice/Reference.cpp
index 392aed1d0e6..1e626fcc0a6 100644
--- a/cpp/src/Ice/Reference.cpp
+++ b/cpp/src/Ice/Reference.cpp
@@ -498,6 +498,7 @@ IceInternal::FixedReference::changeLocator(const LocatorPrx&) const
ReferencePtr
IceInternal::FixedReference::changeDefault() const
{
+ // TODO: Broken: Does not reset context, mode, and facet.
return FixedReferencePtr(const_cast<FixedReference*>(this));
}
@@ -510,6 +511,10 @@ IceInternal::FixedReference::changeCollocationOptimization(bool) const
ReferencePtr
IceInternal::FixedReference::changeCompress(bool) const
{
+ // TODO: FixedReferences should probably have a _compress flag,
+ // that gets its default from the fixed connection this reference
+ // refers to. This should be changable with changeCompress(), and
+ // reset in changeDefault().
return FixedReferencePtr(const_cast<FixedReference*>(this));
}
@@ -614,6 +619,7 @@ IceInternal::RoutableReference::changeRouter(const RouterPrx& newRouter) const
ReferencePtr
IceInternal::RoutableReference::changeDefault() const
{
+ // TODO: Broken: Does not reset context, mode, facet, secure, and collocationOptimization.
RoutableReferencePtr r = RoutableReferencePtr::dynamicCast(getInstance()->referenceFactory()->copy(this));
r->_routerInfo = getInstance()->routerManager()->get(getInstance()->referenceFactory()->getDefaultRouter());
return r;
@@ -735,12 +741,16 @@ IceInternal::DirectReference::changeEndpoints(const vector<EndpointPtr>& newEndp
ReferencePtr
IceInternal::DirectReference::changeLocator(const LocatorPrx&) const
{
+ // TODO: Broken: Does not return an IndirectReference if a non-null locator is passed.
return DirectReferencePtr(const_cast<DirectReference*>(this));
}
ReferencePtr
IceInternal::DirectReference::changeDefault() const
{
+ // TODO: Broken: Does not return an IndirectReference if a default
+ // locator is set. Does not call
+ // RoutableReference::changeDefault() to change other defaults.
return DirectReferencePtr(const_cast<DirectReference*>(this));
}
@@ -922,6 +932,8 @@ IceInternal::IndirectReference::getEndpoints() const
ReferencePtr
IceInternal::IndirectReference::changeLocator(const LocatorPrx& newLocator) const
{
+ // TODO: Broken: Does not return a DirectReference (with empty
+ // endpoints) if a null locator is passed.
LocatorInfoPtr newLocatorInfo = getInstance()->locatorManager()->get(newLocator);
if(newLocatorInfo == _locatorInfo)
{
@@ -935,6 +947,9 @@ IceInternal::IndirectReference::changeLocator(const LocatorPrx& newLocator) cons
ReferencePtr
IceInternal::IndirectReference::changeDefault() const
{
+ // TODO: Broken: Does not return an DirectReference if no default
+ // locator is set (with empty endpoints). Does not call
+ // RoutableReference::changeDefault() to change other defaults.
IndirectReferencePtr r = IndirectReferencePtr::dynamicCast(RoutableReference::changeDefault());
r->_locatorInfo = getInstance()->locatorManager()->get(getInstance()->referenceFactory()->getDefaultLocator());
return r;