In this Eclipse RCP application I am making, when a new launch is made, it checks some details of the already running launches which are retrieved by DebugPlugin.getDefault().getLaunchManager().getLaunches()
.
If it has certain details of its configuration the same as any of the running launches, it should stop. Currently so far, so good.
The Issue
What happens when I edit a LaunchConfiguration while launches of its type are still ongoing? Will that change the attributes of all the running launches' launch configurations? (I am talking about what is retrieved by: ILaunch.getLaunchConfiguration()
)
EDIT: More details: in this case it is a hardware connection, and the hardware can only receive one ongoing concurrent connection. If the launch configuration changes, and we check all of the running launches' configurations, we will be unable to check if we're launching for the same hardware twice
When I call
ILaunch.getLaunchConfiguration().getAttribute(String,String)
it retrieves the new value that has been changed DURING the launch.So, yes, if an
ILaunchConfiguration
during an activeILaunch
has some attributes changed, if there is no deep copy made in theILaunch
, the changes will reflect on the runningILaunch
. Ugh.