protected void Include(Type type) { if (typeof(IType).IsAssignableFrom(type)) { throw new ArgumentException( "Schema types cannot be used as resolver types."); } ResolverTypes.Add(type); }
/// <summary> /// Save settings to team foundation registry /// </summary> private void Save() { _settings.FetchDependenciesOnLocalSolutionBuild = FetchDependenciesOnLocalSolutionBuild; _settings.ValidDependencyDefinitionFileExtension = FilenameExtension.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries); _settings.RelativeOutputPath = RelativeOutputPath; _settings.BinaryRepositoryTeamProject = BinaryRepositoryTeamProject; _settings.IsBinaryRepositoryComponentSettingsEnabled = IsBinaryRepositoryComponentSettingsEnabled; _settings.BinaryRepositoryTeamProjectCollectionUrl = BinaryRepositoryTeamProjectCollectionUri; _settings.BinaryRepositoryFilterComponentList = BinaryRepositoryFilterComponentList; _settings.IsZippedDependencyAllowed = IsZippedDependencyAllowed; _settings.IsMultiSiteAllowed = IsMultiSiteAllowed; _settings.MultiSiteList = Sites.Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); // create a comma separated list of disabled resolvers _settings.DisabledResolvers = string.Join(",", ResolverTypes.Where(x => x.IsEnabled == false).Select(x => x.ReferenceName)); try { _settings.Save(); SaveSettingsFailed = false; RaiseNotifyPropertyChanged(() => SaveSettingsFailed); } catch (AccessCheckException) { Logger.Instance().Log(TraceLevel.Error, "You don't have permission to save to the registry."); SaveSettingsFailed = true; RaiseNotifyPropertyChanged(() => SaveSettingsFailed); } catch (Exception exception) { UserMessageService.ShowError("Failed to save settings to team foundation server registry."); Logger.Instance().Log(TraceLevel.Error, "Failed to save settings to team foundation server registry. Error was {0}", exception.ToString()); } finally { LoadSettings(); } }