|
Lines 1596-1601
Link Here
|
| 1596 |
} |
1596 |
} |
| 1597 |
|
1597 |
|
| 1598 |
/** |
1598 |
/** |
|
|
1599 |
* Allows internal access to reset preferred delegates when re-importing |
| 1600 |
* preferences. |
| 1601 |
* |
| 1602 |
* @since 3.6 |
| 1603 |
*/ |
| 1604 |
protected void resetPreferredDelegates() { |
| 1605 |
fPreferredDelegates = null; |
| 1606 |
} |
| 1607 |
|
| 1608 |
/** |
| 1599 |
* Allows internal access to a preferred delegate for a given type and mode set |
1609 |
* Allows internal access to a preferred delegate for a given type and mode set |
| 1600 |
* @param typeid the id of the <code>ILaunchConfigurationType</code> to find a delegate for |
1610 |
* @param typeid the id of the <code>ILaunchConfigurationType</code> to find a delegate for |
| 1601 |
* @param modes the set of modes for the delegate |
1611 |
* @param modes the set of modes for the delegate |
|
Lines 2347-2389
Link Here
|
| 2347 |
* |
2357 |
* |
| 2348 |
* @since 3.3 |
2358 |
* @since 3.3 |
| 2349 |
*/ |
2359 |
*/ |
| 2350 |
private void persistPreferredLaunchDelegates() { |
2360 |
public void persistPreferredLaunchDelegates() { |
| 2351 |
ILaunchConfigurationType[] types = getLaunchConfigurationTypes(); |
2361 |
ILaunchConfigurationType[] types = getLaunchConfigurationTypes(); |
| 2352 |
Map preferred = null; |
|
|
| 2353 |
ILaunchDelegate delegate = null; |
| 2354 |
Set modes = null; |
| 2355 |
for(int i = 0; i < types.length; i++) { |
2362 |
for(int i = 0; i < types.length; i++) { |
| 2356 |
String preferenceName = PREF_PREFERRED_DELEGATES + '/' + types[i].getIdentifier(); |
2363 |
persistPreferredLaunchDelegate((LaunchConfigurationType)types[i]); |
| 2357 |
preferred = ((LaunchConfigurationType)types[i]).getPreferredDelegates(); |
2364 |
} |
| 2358 |
if(preferred != null && preferred.size() > 0) { |
2365 |
} |
| 2359 |
StringBuffer str = new StringBuffer(); |
2366 |
|
| 2360 |
for(Iterator iter = preferred.keySet().iterator(); iter.hasNext();) { |
2367 |
/** |
| 2361 |
modes = (Set) iter.next(); |
2368 |
* Persists the given launch configuration delegate. |
| 2362 |
delegate = (ILaunchDelegate) preferred.get(modes); |
2369 |
* @param type Launch configuration type to persist |
| 2363 |
if(delegate != null) { |
2370 |
* |
| 2364 |
str.append(delegate.getId()); |
2371 |
* @since 3.6 |
| 2365 |
str.append(','); |
2372 |
*/ |
| 2366 |
for(Iterator iter2 = modes.iterator(); iter2.hasNext();) { |
2373 |
public void persistPreferredLaunchDelegate(LaunchConfigurationType type) { |
| 2367 |
str.append(iter2.next()); |
2374 |
String preferenceName = PREF_PREFERRED_DELEGATES + '/' + type.getIdentifier(); |
| 2368 |
if(iter2.hasNext()) { |
2375 |
Map preferred = type.getPreferredDelegates(); |
| 2369 |
str.append(','); |
2376 |
if(preferred != null && preferred.size() > 0) { |
| 2370 |
} |
2377 |
StringBuffer str = new StringBuffer(); |
| 2371 |
} |
2378 |
for(Iterator iter = preferred.keySet().iterator(); iter.hasNext();) { |
| 2372 |
if (iter.hasNext()) { |
2379 |
Set modes = (Set) iter.next(); |
| 2373 |
str.append(';'); |
2380 |
ILaunchDelegate delegate = (ILaunchDelegate) preferred.get(modes); |
|
|
2381 |
if(delegate != null) { |
| 2382 |
str.append(delegate.getId()); |
| 2383 |
str.append(','); |
| 2384 |
for(Iterator iter2 = modes.iterator(); iter2.hasNext();) { |
| 2385 |
str.append(iter2.next()); |
| 2386 |
if(iter2.hasNext()) { |
| 2387 |
str.append(','); |
| 2374 |
} |
2388 |
} |
| 2375 |
} |
2389 |
} |
|
|
2390 |
if (iter.hasNext()) { |
| 2391 |
str.append(';'); |
| 2392 |
} |
| 2376 |
} |
2393 |
} |
| 2377 |
Preferences.setString(DebugPlugin.getUniqueIdentifier(), preferenceName, str.toString(), null); |
|
|
| 2378 |
} else { |
| 2379 |
Preferences.setToDefault(DebugPlugin.getUniqueIdentifier(), preferenceName); |
| 2380 |
} |
2394 |
} |
|
|
2395 |
Preferences.setString(DebugPlugin.getUniqueIdentifier(), preferenceName, str.toString(), null); |
| 2396 |
} else { |
| 2397 |
Preferences.setToDefault(DebugPlugin.getUniqueIdentifier(), preferenceName); |
| 2381 |
} |
2398 |
} |
| 2382 |
|
2399 |
|
| 2383 |
// Reset the legacy preference string. |
2400 |
// Reset the legacy preference string. |
| 2384 |
Preferences.setToDefault(DebugPlugin.getUniqueIdentifier(), PREF_PREFERRED_DELEGATES); |
2401 |
Preferences.setToDefault(DebugPlugin.getUniqueIdentifier(), PREF_PREFERRED_DELEGATES); |
| 2385 |
} |
2402 |
} |
| 2386 |
|
2403 |
|
| 2387 |
/** |
2404 |
/** |
| 2388 |
* finds and terminates any running launch configurations associated with the given resource |
2405 |
* finds and terminates any running launch configurations associated with the given resource |
| 2389 |
* @param resource the resource to search for launch configurations and hence launches for |
2406 |
* @param resource the resource to search for launch configurations and hence launches for |