Thanks for the frank input / advice!
My use case is to provide "cloud" services that can be substituted for "local" services. The challenge is I wrote the local services first and in a couple of methods relied on the contents of the parameter being updated in the method. I will need to rethink those methods to take into consideration your input.
My first thought is to change the client to call a thin local facade instead of directly calling the remote service. In the local facade I can simulate the expected behavior by using the return value of the remote service.
The other approach is to change the interface and client code to use a return value in both local and client services.
From: wim.jongman@xxxxxxxxx
Date: Wed, 8 Apr 2015 22:47:02 +0200
To: ecf-dev@xxxxxxxxxxx
CC: ecf-dev@xxxxxxxxxxx
Subject: Re: [ecf-dev] Pass by reference semantics
I agree. I wanted to say:
"Forget it unless the 'fallacies of distributed computing' do not apply to you."
but I decided not to say that.
Cheers,
Wim
On Apr 8, 2015, at 22:08, Scott Lewis <
slewis@xxxxxxxxxxxxx> wrote:
On 4/8/2015 12:20 PM, Timothy Vogel
wrote:
I am using the r_osgi provider for remote services.
One of the service characteristics is passByValue. Is pass by
reference an option with this or with any provider?
passByReference is an option, but of course the provider must
support it. None of the existing providers that I know of support
passByReference.
Are there any recommended patterns for implementing
roll-your-own pass by reference if it is not supported?
With ECF, it is of course possible to roll-your-own passByReference
provider.
The most ubiquitous technology that I know of that does pass by
reference is Java RMI, which has quite a few other problems (some
related to pass-by-reference) that would prevent me from
recommending it as the technical basis of a RS provider. I'm sure
others are aware of other pass-by-reference systems and so hopefully
they will speak up.
One thing to say: from my chair the notion of pass-by-reference
itself is controversial within distributed systems design and
development. My interpretation is that some feel that because of
the inherent problems of reliability/failure detection, distributed
garbage collection, distributed consensus, and other things that
pass-by-reference requires/introduces, it doesn't make for a great
basis for reliable distributed applications.
Scott
ecf-dev mailing list
ecf-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/ecf-dev
_______________________________________________
ecf-dev mailing list
ecf-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/ecf-dev