public enumSMSCheckResult Check()
        {
            SMSAccessCacheObject obj = SMSAccessCache.GetGlobalAccessLevel1InLimit();

            if (obj.Count <= SMSAccessSecurityByGlobalLevel1.GlobalLevel1Limit)
            {
                return(enumSMSCheckResult.Normal);
            }
            return(enumSMSCheckResult.GlobalLimited);
        }
Exemple #2
0
        public enumSMSCheckResult Check()
        {
            object lockObj = SMSAccessCache.GetUserAccessInLimit2Lock(OpenId);

            if (lockObj != null)
            {
                return(enumSMSCheckResult.UserLimited);
            }

            SMSAccessCacheObject obj = SMSAccessCache.GetUserAccessInLimit2(OpenId);

            if (obj.Count <= SMSAccessSecurityByUserLevel2.UserAccessLimit2)
            {
                return(enumSMSCheckResult.Normal);
            }
            else
            {
                SMSAccessCache.SetUserAccessInLimit2Lock(OpenId);
                return(enumSMSCheckResult.UserLimited);
            }
        }
Exemple #3
0
        public static SMSAccessCacheObject GetGlobalAccessLevel2InLimit()
        {
            string key = "SMS.Cache.Global2";
            SMSAccessCacheObject obj = HttpRuntime.Cache.Get(key) as SMSAccessCacheObject;

            if (obj == null)
            {
                obj = new SMSAccessCacheObject(1);
                HttpRuntime.Cache.Insert(key,
                                         obj,
                                         null,
                                         DateTime.Now.AddMinutes(SMSAccessCache.GlobalLimitLevel2Minutes),
                                         System.Web.Caching.Cache.NoSlidingExpiration,
                                         System.Web.Caching.CacheItemPriority.Default,
                                         null);
            }
            else
            {
                obj.Count++;
            }
            return(obj);
        }