예제 #1
0
        public IDataServerSecurity CreateAndLogonSecurity(IClientInfo clientInfo)
        {
            ApplicationServer.EnsureValueManager();
            string cacheKey = CreateCacheKey(clientInfo);
            var    result   = (IDataServerSecurity)cache.Get(cacheKey);

            if (result == null)
            {
                result = provider.CreateAndLogonSecurity(clientInfo);
                cache.Add(cacheKey, result, new CacheItemPolicy {
                    AbsoluteExpiration = DateTime.Now.AddHours(1)
                });
            }

            SecuritySystem.SetInstance(result);
            return(result);
        }
예제 #2
0
 public CachingRequestSecurityStrategyProvider(IRequestSecurityStrategyProvider provider)
 {
     this.provider = provider;
     ApplicationServer.EnsureValueManager();
 }