Beispiel #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);
        }
Beispiel #2
0
        public DirectConnectionInfo GetDirectConnectionInfo()
        {
            DirectConnectionInfo result = new DirectConnectionInfo {
                ConnectionString = ApplicationServer.GetConnectionString()
            };

            if (ApplicationServer.WebApplicationType != null)
            {
                using (var application = ApplicationServer.CreateWebApplicationInstance())
                {
                    application.ConnectionString = ApplicationServer.GetConnectionString();
                    result.Provider = (application as IMixedDataStoreProviderApplication)?.CreateMixedDataStoreProvider();
                }
            }

            return(result);
        }
Beispiel #3
0
 public CachingRequestSecurityStrategyProvider(IRequestSecurityStrategyProvider provider)
 {
     this.provider = provider;
     ApplicationServer.EnsureValueManager();
 }