String defaultAssemblyPath = plugin.getDefaultAssemblyPath();
List platforms = plugin.getPlatforms();
for ( Iterator j = platforms.iterator(); j.hasNext(); )
{
CompilerCapability platformCapability =
(CompilerCapability) CompilerCapability.Factory.createDefaultExecutableCapability();
Platform platform = (Platform) j.next();
String os = platform.getOperatingSystem();
platformCapability.setLanguage( language );
platformCapability.setOperatingSystem( os );
platformCapability.setPluginClassName( pluginClassName );
platformCapability.setExecutable( executable );
platformCapability.setIdentifier( identifier );
platformCapability.setFrameworkVersions( frameworkVersions );
platformCapability.setProfile( profile );
platformCapability.setAssemblyPath( defaultAssemblyPath );
String arch = platform.getArchitecture();
CommandFilter filter = plugin.getCommandFilter();
platformCapability.setCoreAssemblies( coreAssemblies );
platformCapability.setNetDependencyId( plugin.getNetDependencyId());
List<String> includes = ( filter != null ) ? filter.getIncludes() : new ArrayList<String>();
List<String> excludes = ( filter != null ) ? filter.getExcludes() : new ArrayList<String>();
platformCapability.setCommandCapability(
CommandCapability.Factory.createDefaultCommandCapability( includes, excludes ) );
if ( arch != null )
{
platformCapability.setArchitecture( arch );
}
if ( compilerVendor.trim().equalsIgnoreCase( "microsoft" ) )
{
platformCapability.setVendor( Vendor.MICROSOFT );
}
else if ( compilerVendor.trim().equalsIgnoreCase( "mono" ) )
{
platformCapability.setVendor( Vendor.MONO );
}
else if ( compilerVendor.trim().equalsIgnoreCase( "dotgnu" ) )
{
platformCapability.setVendor( Vendor.DOTGNU );
}
else
{
System.out.println( "NPANDAY-062-001: Unknown Vendor, skipping: Name = " + compilerVendor );
continue;