[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Hi Ali,
Scott Lewis wrote:
<stuff deleted>
I don't know.  I would need to check the code and it's been some time 
since I've looked at this code.   I will try to arrange to do so as 
soon as I can, but would appreciate a reminder email(s) from you so 
that I remember to do this.
I looked at this for just a moment, and discovered that I've already 
implemented the use of a service property that allows the host to 
specify a *set* of remote service target IDs.  Specifically, the code 
looks at the value of the following service property:
org.eclipse.ecf.remoteservice.Constants.SERVICE_REGISTRATION_TARGETS = 
"ecf.rsvc.reg.targets";
If the type of the value is ID, that targetID is added to the set of 
receivers.  If the type of the value of this service property is ID[], 
then all the array elements are added to the set of receivers.  You 
should be able to define the set of receivers upon host/server remote 
service registration this way.  I guess I wasn't completely out to lunch 
when I did this originally (or maybe I was...I can't decide :).
This may provide you with what you are looking for.  Still not 
ideal...perhaps...but we can discuss other alternatives as we go forward 
with supporting your use case.
Thanks,
Scott
The underlying reason for this behavior for XMPP is essentially that 
there is no inherent concept of 'group' associated with a normal XMPP 
IM connection.  That is, it's not at all obvious, for a given remote 
service host, who should be the receivers of a remote service 
registration...i.e. it can't/shouldn't be *everyone*, and it's not 
even obvious that everyone on the buddy list makes sense (although 
that is an option that I've thought of before).  OTOH, forcing the 
host to specify the target receivers is admittedly not ideal.  The 
tough part is defining an 'appropriate' alternative(s).
It would be possible, however, to provide some provider-specific 
service property that allows the client to define the scope of the 
remote service consumer access.
Another thought...that I admit I haven't had a chance to think through 
so it may be problematic (that's my disclaimer)...is that perhaps the 
OSGi 4.2 remote services (with discovery) can/could be used to define 
the appropriate scope for clients.  The OSGi 4.2 discovery distributes 
the meta-data about both container connect target and target client 
information for a remote service.  But I'm not sure if this will 
satisfy this use case or not.
Note also that the xmpp chat room does/should *not* have this same 
issue...because the chat room defines a membership context...i.e. a 
set of clients that are actually 'in' the chat room.  This is not 
present for a regular xmpp IM session.
What is a better way to do that?
This is actually the hard question, IMHO.  I'm open to ideas.
Finally, for adding an option to enable the auto-reconnect using 
Smack 3.1 library, I have opened this issue: 
https://bugs.eclipse.org/bugs/show_bug.cgi?id=313028
Ok, thanks.  I recognize that the XMPP provider does need some 'love' 
WRT remote services and dealing with xmpp-specific issues...like the 
defining the scope of remote service registration target 
consumers...and hopefully over the next few months with your help we 
can jointly provide it (perhaps also with the help of other ECF 
committers who have worked/are working with the XMPP provider, like 
Nuwan Samarasekera, Harshana Eranga Martin and/or others).
Thanks,
Scott
_______________________________________________
ecf-dev mailing list
ecf-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ecf-dev