Forwarding to tcf-dev.
From: cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx]
On Behalf Of ken.ryall@xxxxxxxxx
Sent: Monday, February 21, 2011 10:57 PM
To: dsdp-tcf-dev-bounces@xxxxxxxxxxx; cdt-dev@xxxxxxxxxxx
Subject: [cdt-dev] Changing TCF APIs
A few weeks back the API in org.eclipse.tm.tcf.services.IProcesses changed. A new version of IProcesses.start was added and the old one deprecated. When I was
adapting the EDC sources for this change I realized that the scope goes well beyond the java API change. The format for the TCF "start" command for the Processes service may now be sent to the agent in either the old way or the new one. New agents can easily
be revised to handle this, or take advantage or the additional options, but existing agents will at best behave unexpectedly or at worst fail or crash. I don't think a TCF client has any way of knowing which version of "start" is supported by the agent.
So changing TCF APIs has more consequences that just changing an API in Eclipse, it may break behavior that existing agents are relying on. So if we want to revise
the API to TCF service definitions we need a way to discover what version of a service is supported and not sent it commands in a format it doesn't support.
For now EDC will continue to use the old deprecated version of IProcesses.start so it will continue to work with existing agents.