Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [platform-debug-dev] Launch configuration support not using dialog


Access to the launch delegate has been provided on ILaunchConfigurationType (as there is only one delegate per launch config type).

When a launch fails, a delegate should generally not de-register the launch. Sometimes, useful information can be obtained by leaving the launch registered - for example, some console I/O may provide details of the failed launch. If the launch fails before a debug target or process is created (i.e. a failed, empty launch), the debug framework could remove the launch. In this case, the delegate should be throwing an exception describing why the launch failed. This exception/status will be shown by the debug UI in an error dialog.

Question: Would it be possible for you to use the #launch method by passing the extra launch parameters as launch configuration attribtues? Although you could by-pass the framework's launch mechanism, it means that you do not inherit the common behavior, and you will be broken if/when more common behavior is added/changed.

Darin




desarmo@xxxxxxxxxx
Sent by: platform-debug-dev-admin@xxxxxxxxxxx

03/28/2002 05:21 PM
Please respond to platform-debug-dev

       
        To:        platform-debug-dev@xxxxxxxxxxx
        cc:        
        Subject:        [platform-debug-dev] Launch configuration support not using dialog


I am working on our launch configurations and I really like the design for
launching through the dialog.  However, I have run into difficulty with our
non-dialog scenario when an engine (or kicker) calls our daemon and
specifies the launch configuration (or launch configuration type) that
should be used for the launch. I cannot use
ILaunchConfiguration.launch(String, IProgressMonitor) because I have to
pass additional parameters to the delegate.  Therefore,  I need the
LaunchConfiguration.getDelegate() method to be public so that I know where
to delegate the launch request.

In response to the launch lifecycle changes proposed yesterday, I believe
this is OK provided that I can complete steps 1-4 myself (for the case
above) up to the point that the launch configuration takes over, i.e., I
won't be calling launch()...   I also still need to be able to create and
register a launch without going through a launch configuration.

<steps copied from Darin's proposal>
(1) An empty launch object will be created by a launch configuration when
its launch method is called (since there is only one shared implementation
of ILaunchConfiguration, all clients inherit this behavoir for free). The
launch is empty in the sense that it does not contain any debug targets or
system processes at this point.
(2) The launch object will be seeded to point to the associated launch
configuration being launched
(3) The launch object will be registered with the debug plug-in
(4) The launch object will be passed to the configuration's associated
delegate to perform the actual launch.
(5) The delegate will launch/create processes and debug targets and ADD
them to the provided (already existing) launch object

If the launch fails after step 3, what is the expected error reporting
process? Would the delegate de-register the launch or terminate it or just
set the target to null?

Thanks.

Kristen Desarmo
IBM Distributed Debugger

_______________________________________________
platform-debug-dev mailing list
platform-debug-dev@xxxxxxxxxxx
http://dev.eclipse.org/mailman/listinfo/platform-debug-dev



Back to the top