Changed the discord bot to be case insensitive.

Added IsEmpty and HasOne IEnumerable Extensions.
This commit is contained in:
Brett Hewitson 2021-12-17 15:27:52 +10:00
parent 734332f10c
commit dd431e93b2
20 changed files with 383 additions and 107 deletions

View file

@ -0,0 +1,47 @@
using System;
using System.Collections.Generic;
namespace ServerManagerTool.Updater
{
public static class IEnumerableExtensions
{
public static bool IsEmpty<TSource>(this IEnumerable<TSource> source)
{
if (source == null)
{
throw new ArgumentNullException(nameof(source));
}
using (IEnumerator<TSource> enumerator = source.GetEnumerator())
{
if (enumerator.MoveNext())
{
return false;
}
}
return true;
}
public static bool HasOne<TSource>(this IEnumerable<TSource> source)
{
if (source == null)
{
throw new ArgumentNullException(nameof(source));
}
var count = 0;
using (IEnumerator<TSource> enumerator = source.GetEnumerator())
{
while (enumerator.MoveNext())
{
if (++count > 1)
return false;
}
}
return count == 1;
}
}
}

View file

@ -277,7 +277,7 @@ namespace ServerManagerTool.Updater
var processes = ProcessUtils.GetProcesses(process.ProcessName, executablePath);
// check if there is more than one instance of the application running
if (processes.Count() != 1)
if (!processes.HasOne())
throw new Exception("The application to be updated has more than one instance running.");
// get the command line of the process