public static void UnRegisterApplication(this BaseClientApplication pClientApplication)
{
if (ApplicationById.ContainsKey(pClientApplication.Id)) ApplicationById.Remove(pClientApplication.Id);
if (ApplicationByName.ContainsKey(pClientApplication.Name)) ApplicationByName.Remove(pClientApplication.Name);
foreach (var item in ApplicationByName.Where(x => pClientApplication.Aliases.Contains(x.Key)).ToArray())
{
ApplicationByName.Remove(item.Key);
}
if (DefaultApplication?.Id == pClientApplication.Id)
{
DefaultApplication = null;
}
pClientApplication.Log().Info("Application `{0}` ({1}) unregistered", pClientApplication.Name,
pClientApplication.Id);
}