// Fill the LicenseData structure with information about this license key private void FillLicenseData(string licenseKey, out LicenseData licData) { licData = new LicenseData(); if (!string.IsNullOrEmpty(licenseKey)) { BBSLic bbsLic; licData.Initialize(); licData.licState = LoadAndValidateLicense(licenseKey, out bbsLic); if (bbsLic != null) { licData.isTrial = IsLicenseTrial(bbsLic); licData.key = licenseKey; licData.numLicensedServers = GetLicenseCount(bbsLic); licData.numLicensedServersStr = CountToString(licData.numLicensedServers); licData.licenseRepositoryID = 0; licData.forStr = GetLicenseScopeStr(bbsLic); licData.typeStr = GetLicenseTypeStr(bbsLic); licData.expirationDateStr = GetLicenseExpirationDateStr(bbsLic); licData.daysToExpireStr = GetLicenseDaysToExpirationStr(bbsLic); licData.daysToExpire = bbsLic.DaysToExpiration; if (licData.typeStr == BBSLicenseConstants.LicenseTypeProduction && licData.daysToExpire <= BBSLicenseConstants.ExpirationDayToWarnProduction || licData.typeStr == BBSLicenseConstants.LicenseTypeTrial && licData.daysToExpire <= BBSLicenseConstants.ExpirationDayToWarnTrial) { licData.isAboutToExpire = true; } else { licData.isAboutToExpire = false; } } } }
// Check to see if SQLsecure is licensed // Returns the combined license results and list of all licenses; public bool IsProductLicensed() { bool bInitialized = false; bool bLicensed = false; m_CombinedLicensedData = new LicenseData(); m_CombinedLicensedData.Initialize(); foreach (LicenseData licData in m_Licenses) { if (!bInitialized) { bLicensed = true; m_CombinedLicensedData = licData; bInitialized = true; } else { m_CombinedLicensedData.key = BBSLicenseConstants.CombinedLicenses; if (!licData.isTrial && licData.licState == LicenseState.Valid) { if (licData.numLicensedServers == -1) { m_CombinedLicensedData.numLicensedServers = -1; m_CombinedLicensedData.numLicensedServersStr = CountToString(m_CombinedLicensedData.numLicensedServers); } else if (m_CombinedLicensedData.numLicensedServers != -1) { m_CombinedLicensedData.numLicensedServers += licData.numLicensedServers; m_CombinedLicensedData.numLicensedServersStr = CountToString(m_CombinedLicensedData.numLicensedServers); } } if (m_CombinedLicensedData.expirationDateStr != licData.expirationDateStr) { if (licData.isAboutToExpire) { m_CombinedLicensedData.isAboutToExpire = true; } m_CombinedLicensedData.expirationDateStr = BBSLicenseConstants.CombinedLicensesMultiExpirationDates; m_CombinedLicensedData.daysToExpireStr = BBSLicenseConstants.CombinedLicensesMultiExpirationDates; } if (m_CombinedLicensedData.forStr != licData.forStr) { m_CombinedLicensedData.forStr = string.Format(BBSLicenseConstants.CombinedLicensesMultiTypes, m_scopeString); } } } if (!bLicensed) { m_CombinedLicensedData.Initialize(); } return(bLicensed); }