internal void InitializeLicense(string licenseText)
{
//only do this if not been configured by the fluent API
if (licenseText == null)
{
licenseText = GetExistingLicense();
}
if (string.IsNullOrWhiteSpace(licenseText))
{
license = GetTrialLicense();
PromptUserForLicenseIfTrialHasExpired();
return;
}
LicenseVerifier.Verify(licenseText);
var foundLicense = LicenseDeserializer.Deserialize(licenseText);
if (LicenseExpirationChecker.HasLicenseExpired(foundLicense))
{
// If the found license is a trial license then it is actually a extended trial license not a locally generated trial.
// Set the property to indicate that it is an extended license as it's not set by the license generation
if (foundLicense.IsTrialLicense)
{
foundLicense.IsExtendedTrial = true;
PromptUserForLicenseIfTrialHasExpired();
return;
}
Logger.Fatal("Your license has expired! You can renew it at https://particular.net/licensing.");
return;
}
if (foundLicense.UpgradeProtectionExpiration != null)
{
Logger.InfoFormat("License upgrade protection expires on: {0}", foundLicense.UpgradeProtectionExpiration);
}
else
{
Logger.InfoFormat("License expires on {0}", foundLicense.ExpirationDate);
}
license = foundLicense;
}