[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
| 
RE: [dsdp-tm-dev] TCF Subsystem development
 | 
Hello Brian,
 
I haven't seen any bugzilla's regarding this issue... is it 
resolved by now or are you 
going to file some bugzilla's ?
 
Cheers,
--
Martin Oberhuber, Senior Member of Technical 
Staff, Wind River
Target Management Project 
Lead, DSDP PMC Member
 
 
  
  
  Hi Brian,
   
  TCF/RSE integration plug-in (org.eclipse.tm.tcf.rse) 
  certainly can be improved. As I understand, you want to re-use the code for a 
  new RSE subsystem, but, in fact, the code is not even designed to be 
  reusable - it has no public APIs, all packages are 
  internal.
   
  Making it re-usable is good idea. I think the best way to 
  do it is to create bugzilla entry, preferably with a patch 
  :-)
   
  As for cleanup issues, please, keep in mind that TCF is 
  not part of RSE, it was not designed for exclusive use by RSE, and it is based 
  on different design principals, like event driven vs multithreading. So, some 
  misalignment between TCF and RSE is expected. I don't consider it to be an 
  issue. And TCF/RSE integration plug-in would be the best place for any 
  code that alleviates this misalignment (wrappers, 
  etc).
   
  Eugene
  
  
  I'm working on 
  adding a new service using TCF to explore the windows on a target and run into 
  an issue and have a couple of requests for cleanup.  I'm trying 
  to figure out how to connect things up between TCF and the 
  RSE.    I did find the example 
  org.eclipse.tm.tcf.examples.daytime, and from it I see how to register a 
  ChannelOpenListener and get notified when a channel opens.  But what I'm 
  trying to do is create a new RSE Subsystem.  I see that 
  TCFConnectorServiceManager.getConnectorService can be used to get a 
  TCFConnectorService for a particular IHost.  I use getConnectorService in 
  my implementation of ISubSystemConfiguration to get a connector 
  service.  But what I don't see is how to get the IChannel for a 
  particular IHost?  TCFConnectorService manages this but I don't see a way 
  to get it out.  I've added a method "getChannel" in a local copy of 
  TCFConnectorService, but am looking to see if there is an official way to do 
  this (or if I should just file something into 
  bugzilla)?
   
  A cleanup issue is 
  that both TCF and RSE have a different concept of Service, and in fact have 
  different interfaces IService.  This isn't wrong, but it is confusing to 
  have two different design elements with the same name.
   
  Another cleanup 
  issue is that it appears that the constructor for class Command (which issues 
  an channel.send) has to be executed on the Protocol thread.  This forces 
  some awkward code if you want to get the IToken for a command in any other 
  thread--you're pretty much forced to do a Protocol.invokeAndWait all over and 
  this seems like an opportunity for improvement.  I've implemented a 
  WrapperChannel class which hides the invokeAndWait, but it would be great to 
  get the IToken on any thread.
   
  -Brian 
  Nettleton
  Wind River 
  Systems