package monolipse.nunit.launching; import monolipse.core.IAssemblySource; import monolipse.core.launching.BooLauncher; import monolipse.nunit.INUnitLaunchConfigurationTypes; import org.eclipse.core.runtime.CoreException; import org.eclipse.debug.core.*; public class NUnitLaunchConfigurations { public static ILaunchConfiguration forAssemblySource(final IAssemblySource source) throws CoreException { final ILaunchConfiguration configuration = existingLaunchConfigurationFor(source); if (null != configuration) return configuration; return newLaunchConfigurationFor(source); } private static ILaunchConfiguration existingLaunchConfigurationFor( final IAssemblySource source) throws CoreException { return BooLauncher.findAssemblySourceLaunchConfiguration(source, getNUnitConfigurationType()); } private static ILaunchConfiguration newLaunchConfigurationFor( final IAssemblySource source) throws CoreException { return BooLauncher.createAssemblySourceLaunchConfiguration(source, getNUnitConfigurationType()); } private static ILaunchConfigurationType getNUnitConfigurationType() { return BooLauncher.getLaunchConfigurationType(INUnitLaunchConfigurationTypes.ID_NUNIT); } }