public static Uri Purify(this Uri uri) { if (!uri.IsAbsoluteUri) { return(uri); } IPurifier purifier = null; if (isMono) { purifier = new PurifierMono(); } else if (hasBrokenDotNetUri) { purifier = new PurifierDotNet(); } else { return(uri); } purifier.Purify(uri); return(uri); }
/// <summary> /// Will purify the <param name="uri"></param> to the unscrubed version. /// <pre>Calling this will be a NOOP on .NET 4.5 and up.</pre> /// </summary> /// <param name="uri">The uri to be purified</param> /// <returns>The purified uri</returns> public static Uri Purify(this Uri uri) { IPurifier purifier = null; if (IsMono) { purifier = new PurifierMono(); } else if (HasBrokenDotNetUri) { purifier = new PurifierDotNet(); } else { return(uri); } return(purifier.Purify(uri)); }
public static void Purify(this Uri uri) { IPurifier purifier = null; if (isMono) { purifier = new PurifierMono(); } else if (hasBrokenDotNetUri) { purifier = new PurifierDotNet(); } else { return; } purifier.Purify(uri); }
public LocalePurifier() { _settingsReader = new SettingsReader(); _registryPurifier = new RegistryKeyLocalePurifier(_settingsReader); _inputLanguagePurifier = new InputLanguagePurifier(_settingsReader); //_keyboardLayoutSpy = new KeyboardLayoutSpy(); //KeyboardSurveillanceThread = new Thread(_keyboardLayoutSpy.Surveillance); _registryChangeMonitor = new RegistryChangeMonitor( $@"HKEY_USERS\{Utilities.SID}\Keyboard Layout\Preload"); Purify += OnPurify; _registryChangeMonitor.Changed += (sender, args) => { Console.WriteLine("Registry keys changed!"); Purify?.Invoke(sender, new PurifyEventArgs()); }; }