void PromptUserForLicenseIfTrialHasExpired()
{
if (!(Debugger.IsAttached && SystemInformation.UserInteractive))
{
//We only prompt user if user is in debugging mode and we are running in interactive mode
return;
}
bool createdNew;
using (new Mutex(true, $"NServiceBus-{GitFlowVersion.MajorMinor}", out createdNew))
{
if (!createdNew)
{
//Dialog already displaying for this software version by another process, so we just use the already assigned license.
return;
}
if (license == null || LicenseExpirationChecker.HasLicenseExpired(license))
{
var licenseProvidedByUser = LicenseExpiredFormDisplayer.PromptUserForLicense(license);
if (licenseProvidedByUser != null)
{
license = licenseProvidedByUser;
}
}
}
}