Bug 18971 - [ExternalTools] Using external tool configs in other contexts
Summary: [ExternalTools] Using external tool configs in other contexts
Status: VERIFIED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Ant (show other bugs)
Version: 2.0   Edit
Hardware: All All
: P2 normal (vote)
Target Milestone: 2.1 M3   Edit
Assignee: Platform-Ant-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: ui
Depends on:
Blocks:
 
Reported: 2002-06-04 05:10 EDT by Marco Mulder CLA
Modified: 2002-11-15 10:42 EST (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marco Mulder CLA 2002-06-04 05:10:17 EDT
I want to use external tool configurations for launching Java applications on
remote targets. The steps to copy and launch an application on a specific device
will be defined by external tool configurations. I suppose there is no time to
come up with a structural way to use tool configurations in contexts like this.
However, if I could override classes instead of cloning them this would already
be an improvement

To configure the external tools in another context, I need to clone the
ConfigurationDialog. I could instead override the class if:
- a protected method would be used in createDialogArea() to assign the tools
  ArrayList, and
- a protected method would be used in okPressed() to save the tools.

I would like to use loadExternalTools() and saveExternalTools() of the
ExternalToolsRegistry. These could be rewritten to take a Reader and a Writer as
argument.

I need to add variable definitions like debug-port. To do this, I have to clone
two classes: EditDialog and DefaultRunnerContext.

In my clone of EditDialog, I changed VariableSelectionDialog.createDialogArea()
and VariableSelectionDialog.okPressed(). I propose to make method
hookButtonActions() use a Factory which creates the dialog classes. This factory
can then be overridden to return subclasses of these dialogs.

In my clone of DefaultRunnerContext, I changed private method expandVariable. I
would like this method to be protected.
Comment 1 Nick Edgar CLA 2002-06-04 10:32:24 EDT
We are in the middle of our second test/fix pass and are focussing on critical 
problems only.  We do not have time to consider API issues, unfortunately (even 
if they are kept internal).
If you want to make the changes and submit them, I'll try to get them in, but 
at this stage all changes need to be approved by two component owners.

Comment 2 Simon Arsenault CLA 2002-06-06 11:36:56 EDT
The plan for release 2.0 is for External Tools to have not publish any public 
API. There is not enough time now to properly expose the correct API - once it 
is exposed, we cannot change it anymore. Cloning is probably the better 
solution for now (even if we did make the changes you requested, they would 
change in the next release when we expose an API).

What you could do to help us out is to provide us with more information about 
how you want to use the tools configuration plug-in. One option is to provide 
extension points (that way the Ant support could use this instead of being hard 
coded in). Also, if you would like to participate in this, please let us know.

Defer until after release 2.0 for consideration when exposing an API to 
external tools.
Comment 3 Simon Arsenault CLA 2002-09-06 15:05:13 EDT
The new external tool support will provide an extension point to supply 
new "types" of external tools (by default we supply program and ant types). 
Also, there is an extension point to supply new variables for the argument 
field.

Would that be enough for you needs?

Note: new external tool work is not yet released to the head stream and won't 
for a while yet.
Comment 4 Marco Mulder CLA 2002-09-19 05:26:54 EDT
I think this would be enough for our plans.
Comment 5 Darin Wright CLA 2002-11-15 10:41:52 EST
External tools are now launch configs. You can define a new type of external 
tool by defining a new type of launch configuration, with a category attribute 
of "org.eclipse.ui.externaltools".
Comment 6 Darin Wright CLA 2002-11-15 10:42:12 EST
marking as verified.