コード例 #1
0
 internal static void CheckMaintenanceExpiration()
 {
     try
     {
         MaintenanceExpirationHelper.log.Debug((object)"Check Maintenance expiration");
         int expirationWarningDays = BusinessLayerSettings.Instance.MaintenanceExpirationWarningDays;
         Dictionary <string, MaintenanceExpirationNotificationItemDAL.ExpirationInfo> moduleExpirations = new Dictionary <string, MaintenanceExpirationNotificationItemDAL.ExpirationInfo>();
         ILicensingDAL licensing = (ILicensingDAL) new LicensingDAL();
         using (IEnumerator <LicenseInfoModel> enumerator = ((IEnumerable <LicenseInfoModel>)licensing.GetLicenses()).Where <LicenseInfoModel>((Func <LicenseInfoModel, bool>)(lic => !lic.get_IsHidden() && !lic.get_IsEvaluation() && !licensing.get_DefaultLicenseFilter().Contains <string>(lic.get_ProductName(), (IEqualityComparer <string>)StringComparer.OrdinalIgnoreCase))).GetEnumerator())
         {
             while (((IEnumerator)enumerator).MoveNext())
             {
                 LicenseInfoModel current = enumerator.Current;
                 if (MaintenanceExpirationHelper.log.get_IsDebugEnabled())
                 {
                     MaintenanceExpirationHelper.log.Debug((object)string.Format("Module:{0} MaintenanceTo:{1} DaysLeft:{2}", (object)current.get_LicenseName(), (object)current.get_MaintenanceExpiration().Date, (object)current.get_DaysRemainingCount()));
                 }
                 if (current.get_DaysRemainingCount() <= expirationWarningDays)
                 {
                     MaintenanceExpirationNotificationItemDAL.ExpirationInfo expirationInfo = new MaintenanceExpirationNotificationItemDAL.ExpirationInfo()
                     {
                         DaysToExpire  = current.get_DaysRemainingCount(),
                         ActivationKey = current.get_LicenseKey()
                     };
                     moduleExpirations[current.get_LicenseName()] = expirationInfo;
                 }
             }
         }
         if (moduleExpirations.Count > 0)
         {
             MaintenanceExpirationHelper.log.Debug((object)string.Format("{0} products found to be notified", (object)moduleExpirations.Count));
             MaintenanceExpirationNotificationItemDAL.Show(moduleExpirations);
         }
         else
         {
             MaintenanceExpirationNotificationItemDAL.Hide();
         }
     }
     catch (Exception ex)
     {
         MaintenanceExpirationHelper.log.Warn((object)"Exception while checking maintenance expiration status: ", ex);
     }
 }