mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-09 18:15:23 +02:00
[173265] [api] Need systemType -> subsystemConfiguration association
This commit is contained in:
parent
6870a4a8e0
commit
53e096fc18
3 changed files with 27 additions and 2 deletions
|
@ -11,7 +11,7 @@
|
||||||
* Emily Bruner, Mazen Faraj, Adrian Storisteanu, Li Ding, and Kent Hawley.
|
* Emily Bruner, Mazen Faraj, Adrian Storisteanu, Li Ding, and Kent Hawley.
|
||||||
*
|
*
|
||||||
* Contributors:
|
* Contributors:
|
||||||
* {Name} (company) - description of contribution.
|
* Uwe Stieber (Wind River) - Extended system type -> subsystemConfiguration association.
|
||||||
********************************************************************************/
|
********************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.rse.core;
|
package org.eclipse.rse.core;
|
||||||
|
@ -112,4 +112,18 @@ public interface IRSESystemType extends IAdaptable {
|
||||||
* @return the bundle which defines this system type or <code>null</code> if none
|
* @return the bundle which defines this system type or <code>null</code> if none
|
||||||
*/
|
*/
|
||||||
public Bundle getDefiningBundle();
|
public Bundle getDefiningBundle();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a list of fully qualified known subsystem configuration id's that
|
||||||
|
* this system type wants to be registered against. More subsystem configurations
|
||||||
|
* can be added through the <tt>subsystemConfigurations</tt> extension point.
|
||||||
|
* <p>
|
||||||
|
* <b>Note:</b> The list returned here does not imply that the corresponding
|
||||||
|
* subsystem configurations exist. The list contains only possibilites not
|
||||||
|
* requirements.
|
||||||
|
*
|
||||||
|
* @return The list of subsystem configuration id or <code>null</code>.
|
||||||
|
*/
|
||||||
|
public String[] getSubsystemConfigurationIds();
|
||||||
|
|
||||||
}
|
}
|
|
@ -121,6 +121,15 @@ public class RSESystemType implements IRSESystemType {
|
||||||
return definingBundle;
|
return definingBundle;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.eclipse.rse.core.IRSESystemType#getSubsystemConfigurationIds()
|
||||||
|
*/
|
||||||
|
public String[] getSubsystemConfigurationIds() {
|
||||||
|
// We are not proposing any subsystem configuration here
|
||||||
|
// by default.
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
|
* @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -307,7 +307,9 @@ public class SubSystemConfigurationProxy implements ISubSystemConfigurationProxy
|
||||||
IRSESystemType[] systemTypes = RSECorePlugin.getDefault().getRegistry().getSystemTypes();
|
IRSESystemType[] systemTypes = RSECorePlugin.getDefault().getRegistry().getSystemTypes();
|
||||||
for (int i = 0; i < systemTypes.length; i++) {
|
for (int i = 0; i < systemTypes.length; i++) {
|
||||||
IRSESystemType systemType = systemTypes[i];
|
IRSESystemType systemType = systemTypes[i];
|
||||||
if (isMatchingDeclaredSystemTypes(systemType)) {
|
if (isMatchingDeclaredSystemTypes(systemType)
|
||||||
|
|| (systemType.getSubsystemConfigurationIds() != null
|
||||||
|
&& Arrays.asList(systemType.getSubsystemConfigurationIds()).contains(getId()))) {
|
||||||
resolvedSystemTypes.add(systemType.getName());
|
resolvedSystemTypes.add(systemType.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue