[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
| Re: [ecf-dev] local remote services | 
Hi Wim,
Wim Jongman wrote:
Hi Scott,
Sounds great. What about the speed of a "local" remote sevice? Does it 
bypass networking?
Correct...there is no networking in the 'local' provider.  Actual remote 
calls will be far speedier than the use of any network...although not 
quite as speedy as a normal method call...because the local provider 
does a reflective method lookup and then calls Method.invoke(...).  See 
this method/class if you want to see the actual code implementing this 
lookup and reflective invocation.
org.eclipse.ecf.internal.provider.local.container.LocalRemoteServiceRegistry.callSynch(RemoteServiceRegistrationImpl, 
IRemoteCall)
Your question prompted the following thought/idea though...perhaps this 
provider could be enhanced to (optionally) introduce some random delay 
in the method invocation...to simulate network behavior.  This 
would/could be very useful for testing the timing of things.
Scott
Regards,
Wim
On Jun 16, 2010, at 2:15, Scott Lewis <slewis@xxxxxxxxxxxxx> wrote:
Hi Folks,
In a fit of desire to work on something new this past weekend, I 
implemented a new ECF remote services provider for inclusion in ECF 3.4.
This provider provides access to remote services *locally* (i.e. 
within the same framework).
What is the purpose for a remote service provider that is 
local-only?  :)  There are at least two purposes:
1) The ability to asynchronously access an OSGi service (i.e. 
AsyncCallback, IFuture, IRemoteService) [1]
2) Testing of a remote service...without the necessarily messy steps 
of network discovery, and distribution.  This should facilitate 
writing/running test code for remote services...without having to 
have the discovery and distribution defined, deployed, configured on 
a given network, etc.
This new provider project is located here:
host:  dev.eclipse.org (extssh or pserver/anonymous access)
cvs path:  /cvsroot/rt
module:  
org.eclipse.ecf/providers/bundles/org.eclipse.ecf.provider.local
There's also an initial test project:
module:  
org.eclipse.ecf/tests/bundles/org.eclipse.ecf.tests.provider.local
Scott
[1] http://wiki.eclipse.org/Asynchronous_Proxies_for_Remote_Services
_______________________________________________
ecf-dev mailing list
ecf-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ecf-dev
_______________________________________________
ecf-dev mailing list
ecf-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ecf-dev