@@ -238,7 +238,11 @@ protected override void BeginProcessing()
238238 }
239239
240240 object settingsFound ;
241- var settingsMode = FindSettingsMode ( out settingsFound ) ;
241+ var settingsMode = Generic . Settings . FindSettingsMode (
242+ this . settings ,
243+ processedPaths == null || processedPaths . Count == 0 ? null : processedPaths [ 0 ] ,
244+ out settingsFound ) ;
245+
242246 switch ( settingsMode )
243247 {
244248 case SettingsMode . Auto :
@@ -253,9 +257,6 @@ protected override void BeginProcessing()
253257 break ;
254258
255259 case SettingsMode . Preset :
256- settingsFound = Generic . Settings . GetSettingPresetFilePath ( this . settings as string ) ;
257- goto case SettingsMode . File ;
258-
259260 case SettingsMode . File :
260261 this . WriteVerbose ( String . Format ( "Using settings file at {0}" , ( string ) settingsFound ) ) ;
261262 break ;
@@ -344,17 +345,6 @@ protected override void StopProcessing()
344345
345346 #region Private Methods
346347
347- private static bool IsBuiltinSettingPreset ( object settingPreset )
348- {
349- var preset = settingPreset as string ;
350- if ( preset != null )
351- {
352- return Generic . Settings . GetSettingPresets ( ) . Contains ( preset , StringComparer . OrdinalIgnoreCase ) ;
353- }
354-
355- return false ;
356- }
357-
358348 private void ProcessInput ( )
359349 {
360350 IEnumerable < DiagnosticRecord > diagnosticsList = Enumerable . Empty < DiagnosticRecord > ( ) ;
@@ -399,64 +389,6 @@ private bool IsFileParameterSet()
399389 return String . Equals ( this . ParameterSetName , "File" , StringComparison . OrdinalIgnoreCase ) ;
400390 }
401391
402- private SettingsMode FindSettingsMode ( out object settingsFound )
403- {
404- var settingsMode = SettingsMode . None ;
405- settingsFound = this . settings ;
406- if ( settingsFound == null )
407- {
408- if ( processedPaths != null && processedPaths . Count == 1 )
409- {
410- // add a directory separator character because if there is no trailing separator character, it will return the parent
411- var directory = processedPaths [ 0 ] . TrimEnd ( System . IO . Path . DirectorySeparatorChar ) ;
412- if ( File . Exists ( directory ) )
413- {
414- // if given path is a file, get its directory
415- directory = System . IO . Path . GetDirectoryName ( directory ) ;
416- }
417-
418- if ( Directory . Exists ( directory ) )
419- {
420- // if settings are not provided explicitly, look for it in the given path
421- // check if pssasettings.psd1 exists
422- var settingsFilename = "PSScriptAnalyzerSettings.psd1" ;
423- var settingsFilePath = System . IO . Path . Combine ( directory , settingsFilename ) ;
424- settingsFound = settingsFilePath ;
425- if ( File . Exists ( settingsFilePath ) )
426- {
427- settingsMode = SettingsMode . Auto ;
428- }
429- }
430- }
431- }
432- else
433- {
434- var settingsFilePath = settingsFound as String ;
435- if ( settingsFilePath != null )
436- {
437- if ( IsBuiltinSettingPreset ( settingsFilePath ) )
438- {
439- settingsMode = SettingsMode . Preset ;
440- settingsFound = Generic . Settings . GetSettingPresetFilePath ( settingsFilePath ) ;
441- }
442- else
443- {
444- settingsMode = SettingsMode . File ;
445- settingsFound = settingsFilePath ;
446- }
447- }
448- else
449- {
450- if ( settingsFound is Hashtable )
451- {
452- settingsMode = SettingsMode . Hashtable ;
453- }
454- }
455- }
456-
457- return settingsMode ;
458- }
459-
460392 #endregion // Private Methods
461393 }
462394}
0 commit comments