private static void ValidateLicense(string publicKeyPath, string licensePath) { var publicKey = new PublicCryptoKey { Contents = File.ReadAllText(publicKeyPath) }; var clientLicense = ClientLicense.Create(File.ReadAllText(licensePath)); var violations = new List<string>(); try { var licenseValidationRules = new List<ILicenseValidationRule> { new LicenseHasNotExpiredRule(), new ValidNumberOfCoresLicenseRule() }; new LicenseValidator().Validate(clientLicense, publicKey, licenseValidationRules); } catch (InvalidLicenseException exception) { violations.Add(exception.Message); } catch (AggregateException ex) { var innerExceptions = ex.InnerExceptions; foreach (var exception in innerExceptions) { if (exception is LicenseViolationException) { violations.Add(exception.Message); } } if (!violations.Any()) { throw; } } catch (Exception) { violations.Add(Messages.UnknownLicenseError); } if (violations.Any()) { Console.WriteLine(Messages.LicenseViolationsEncountered); foreach (var violation in violations) { Console.WriteLine(" - " + violation); } Console.WriteLine(Messages.PressAnyKey); Console.ReadKey(); Environment.Exit(-1); } }
private bool Equals(PublicCryptoKey other) { return string.Equals(this.Contents, other.Contents); }
private bool Equals(PublicCryptoKey other) { return(string.Equals(this.Contents, other.Contents)); }