mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-09 12:46:47 +02:00
remove custom exception
This commit is contained in:
@@ -75,7 +75,7 @@ namespace Wox.Core.Plugin
|
|||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
Log.Exception($"|Wox.Core.Plugin.JsonRPCPlugin.Query|Exception when query <{query}>", e);
|
Log.Exception($"|JsonRPCPlugin.Query|Exception when query <{query}>", e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
@@ -123,39 +123,53 @@ namespace Wox.Core.Plugin
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
using (Process process = Process.Start(startInfo))
|
using (var process = Process.Start(startInfo))
|
||||||
{
|
{
|
||||||
if (process != null)
|
if (process != null)
|
||||||
{
|
{
|
||||||
using (StreamReader reader = process.StandardOutput)
|
using (var standardOutput = process.StandardOutput)
|
||||||
{
|
{
|
||||||
string result = reader.ReadToEnd();
|
var result = standardOutput.ReadToEnd();
|
||||||
if (result.StartsWith("DEBUG:"))
|
if (string.IsNullOrEmpty(result))
|
||||||
{
|
{
|
||||||
MessageBox.Show(new Form { TopMost = true }, result.Substring(6));
|
using (var standardError = process.StandardError)
|
||||||
return "";
|
|
||||||
}
|
|
||||||
if (String.IsNullOrEmpty(result))
|
|
||||||
{
|
|
||||||
using (StreamReader errorReader = process.StandardError)
|
|
||||||
{
|
{
|
||||||
string error = errorReader.ReadToEnd();
|
var error = standardError.ReadToEnd();
|
||||||
if (!String.IsNullOrEmpty(error))
|
if (!string.IsNullOrEmpty(error))
|
||||||
{
|
{
|
||||||
throw new WoxJsonRPCException(error);
|
Log.Error($"|JsonRPCPlugin.Execute|{error}");
|
||||||
|
return string.Empty;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Log.Error("|JsonRPCPlugin.Execute|Empty standard output and standard error.");
|
||||||
|
return string.Empty;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return result;
|
else if (result.StartsWith("DEBUG:"))
|
||||||
|
{
|
||||||
|
MessageBox.Show(new Form {TopMost = true}, result.Substring(6));
|
||||||
|
return string.Empty;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Log.Error("|JsonRPCPlugin.Execute|Can't start new process");
|
||||||
|
return string.Empty;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
throw new WoxJsonRPCException(e.Message);
|
Log.Exception($"|JsonRPCPlugin.Execute|Exception for filename <{startInfo.FileName}> with argument <{startInfo.Arguments}>", e);
|
||||||
|
return string.Empty;
|
||||||
}
|
}
|
||||||
return null;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Init(PluginInitContext ctx)
|
public void Init(PluginInitContext ctx)
|
||||||
|
|||||||
@@ -184,12 +184,13 @@ namespace Wox.Core.Plugin
|
|||||||
});
|
});
|
||||||
metadata.QueryCount += 1;
|
metadata.QueryCount += 1;
|
||||||
metadata.AvgQueryTime = metadata.QueryCount == 1 ? milliseconds : (metadata.AvgQueryTime + milliseconds) / 2;
|
metadata.AvgQueryTime = metadata.QueryCount == 1 ? milliseconds : (metadata.AvgQueryTime + milliseconds) / 2;
|
||||||
|
return results;
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
throw new WoxPluginException(pair.Metadata.Name, "QueryForPlugin failed", e);
|
Log.Exception($"|PluginManager.QueryForPlugin|Exception for plugin <{pair.Metadata.Name}> when query <{query}>", e);
|
||||||
|
return new List<Result>();
|
||||||
}
|
}
|
||||||
return results;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void UpdatePluginMetadata(List<Result> results, PluginMetadata metadata, Query query)
|
public static void UpdatePluginMetadata(List<Result> results, PluginMetadata metadata, Query query)
|
||||||
|
|||||||
@@ -43,31 +43,43 @@ namespace Wox.Core.Resource
|
|||||||
|
|
||||||
private Language GetLanguageByLanguageCode(string languageCode)
|
private Language GetLanguageByLanguageCode(string languageCode)
|
||||||
{
|
{
|
||||||
Language language = AvailableLanguages.GetAvailableLanguages().FirstOrDefault(o => o.LanguageCode.ToLower() == languageCode.ToLower());
|
var lowercase = languageCode.ToLower();
|
||||||
|
var language = AvailableLanguages.GetAvailableLanguages().FirstOrDefault(o => o.LanguageCode.ToLower() == lowercase);
|
||||||
if (language == null)
|
if (language == null)
|
||||||
{
|
{
|
||||||
throw new WoxI18nException("Invalid language code:" + languageCode);
|
Log.Error($"|Internationalization.GetLanguageByLanguageCode|Language code can't be found <{languageCode}>");
|
||||||
|
return AvailableLanguages.English;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return language;
|
||||||
}
|
}
|
||||||
|
|
||||||
return language;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ChangeLanguage(Language language)
|
public void ChangeLanguage(Language language)
|
||||||
{
|
{
|
||||||
if (language == null) throw new WoxI18nException("language can't be null");
|
if (language != null)
|
||||||
|
|
||||||
string path = GetLanguagePath(language);
|
|
||||||
if (string.IsNullOrEmpty(path))
|
|
||||||
{
|
{
|
||||||
path = GetLanguagePath(AvailableLanguages.English);
|
string path = GetLanguagePath(language);
|
||||||
if (string.IsNullOrEmpty(path))
|
if (!string.IsNullOrEmpty(path))
|
||||||
{
|
{
|
||||||
throw new Exception("Change Language failed");
|
Settings.Language = language.LanguageCode;
|
||||||
|
ResourceMerger.UpdateResource(this);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Log.Error($"|Internationalization.ChangeLanguage|Language path can't be found <{path}>");
|
||||||
|
path = GetLanguagePath(AvailableLanguages.English);
|
||||||
|
if (string.IsNullOrEmpty(path))
|
||||||
|
{
|
||||||
|
Log.Error($"|Internationalization.ChangeLanguage|Default english language path can't be found <{path}>");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
Settings.Language = language.LanguageCode;
|
{
|
||||||
ResourceMerger.UpdateResource(this);
|
Log.Error("|Internationalization.ChangeLanguage|Language can't be null");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ using System.Windows;
|
|||||||
using Wox.Core.Plugin;
|
using Wox.Core.Plugin;
|
||||||
using Wox.Plugin;
|
using Wox.Plugin;
|
||||||
using Wox.Infrastructure.Exception;
|
using Wox.Infrastructure.Exception;
|
||||||
|
using Wox.Infrastructure.Logger;
|
||||||
|
|
||||||
namespace Wox.Core.Resource
|
namespace Wox.Core.Resource
|
||||||
{
|
{
|
||||||
@@ -54,7 +55,7 @@ namespace Wox.Core.Resource
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
throw new WoxPluginException(plugin.Metadata.Name, "Can't find plugin location.");
|
Log.Error($"|ResourceMerger.UpdatePluginLanguages|Can't find plugin path <{location}> for <{plugin.Metadata.Name}>");
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,19 +0,0 @@
|
|||||||
namespace Wox.Infrastructure.Exception
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Base Wox Exceptions
|
|
||||||
/// </summary>
|
|
||||||
public class WoxException : System.Exception
|
|
||||||
{
|
|
||||||
public WoxException(string msg)
|
|
||||||
: base(msg)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public WoxException(string msg, System.Exception innerException)
|
|
||||||
: base(msg, innerException)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
namespace Wox.Infrastructure.Exception
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Represent exceptions that wox can't handle and MUST close running Wox.
|
|
||||||
/// </summary>
|
|
||||||
public class WoxFatalException : WoxException
|
|
||||||
{
|
|
||||||
public WoxFatalException(string msg) : base(msg)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
namespace Wox.Infrastructure.Exception
|
|
||||||
{
|
|
||||||
public class WoxHttpException :WoxException
|
|
||||||
{
|
|
||||||
public WoxHttpException(string msg) : base(msg)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
namespace Wox.Infrastructure.Exception
|
|
||||||
{
|
|
||||||
public class WoxI18nException : WoxException
|
|
||||||
{
|
|
||||||
public WoxI18nException(string msg) : base(msg)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
namespace Wox.Infrastructure.Exception
|
|
||||||
{
|
|
||||||
public class WoxJsonRPCException : WoxException
|
|
||||||
{
|
|
||||||
public WoxJsonRPCException(string msg)
|
|
||||||
: base(msg)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
namespace Wox.Infrastructure.Exception
|
|
||||||
{
|
|
||||||
public class WoxPluginException : WoxException
|
|
||||||
{
|
|
||||||
public string PluginName { get; set; }
|
|
||||||
|
|
||||||
public WoxPluginException(string pluginName, string msg, System.Exception e)
|
|
||||||
: base($"{pluginName} : {msg}", e)
|
|
||||||
{
|
|
||||||
PluginName = pluginName;
|
|
||||||
}
|
|
||||||
|
|
||||||
public WoxPluginException(string pluginName, string msg) : base(msg)
|
|
||||||
{
|
|
||||||
PluginName = pluginName;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -67,12 +67,6 @@
|
|||||||
<Link>Properties\SolutionAssemblyInfo.cs</Link>
|
<Link>Properties\SolutionAssemblyInfo.cs</Link>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="Exception\ExceptionFormatter.cs" />
|
<Compile Include="Exception\ExceptionFormatter.cs" />
|
||||||
<Compile Include="Exception\WoxException.cs" />
|
|
||||||
<Compile Include="Exception\WoxFatalException.cs" />
|
|
||||||
<Compile Include="Exception\WoxHttpException.cs" />
|
|
||||||
<Compile Include="Exception\WoxI18nException.cs" />
|
|
||||||
<Compile Include="Exception\WoxJsonRPCException.cs" />
|
|
||||||
<Compile Include="Exception\WoxPluginException.cs" />
|
|
||||||
<Compile Include="Helper.cs" />
|
<Compile Include="Helper.cs" />
|
||||||
<Compile Include="Hotkey\InterceptKeys.cs" />
|
<Compile Include="Hotkey\InterceptKeys.cs" />
|
||||||
<Compile Include="Hotkey\KeyEvent.cs" />
|
<Compile Include="Hotkey\KeyEvent.cs" />
|
||||||
|
|||||||
@@ -21,10 +21,6 @@ namespace Wox.Helper
|
|||||||
Application.Current.MainWindow.Dispatcher.Invoke(() =>
|
Application.Current.MainWindow.Dispatcher.Invoke(() =>
|
||||||
{
|
{
|
||||||
Report((Exception)e.ExceptionObject);
|
Report((Exception)e.ExceptionObject);
|
||||||
if (!(e.ExceptionObject is WoxException))
|
|
||||||
{
|
|
||||||
Environment.Exit(0);
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user