public ICswResources make() { CswSetupVbls SetupVbls = new CswSetupVbls(CswEnumSetupMode.NbtExe); CswEnumPooledConnectionState PooledConnectionState; if (SetupVbls.doesSettingExist("CloseSchedulerDbConnections")) { if (true == CswConvert.ToBoolean(SetupVbls["CloseSchedulerDbConnections"])) { PooledConnectionState = CswEnumPooledConnectionState.Closed; } else { PooledConnectionState = CswEnumPooledConnectionState.Open; } } else { PooledConnectionState = CswEnumPooledConnectionState.Closed; } CswNbtResources ReturnVal = CswNbtResourcesFactory.makeCswNbtResources(CswEnumAppType.Nbt, CswEnumSetupMode.NbtExe, true, null, PooledConnectionState); ReturnVal.InitCurrentUser = InitUser; return(ReturnVal); }
/// <summary> /// Create a new CswNbtResources /// </summary> public static CswNbtResources makeCswNbtResources(CswEnumAppType AppType, CswEnumSetupMode SetupMode, bool ExcludeDisabledModules, ICswSuperCycleCache CswSuperCycleCache = null, ChemSW.RscAdo.CswEnumPooledConnectionState PooledConnectionState = RscAdo.CswEnumPooledConnectionState.Open, ICswResources CswResourcesMaster = null, ICswLogger CswLogger = null) { if (null == CswSuperCycleCache) { CswSuperCycleCache = new CswSuperCycleCacheDefault(); } CswSetupVbls SetupVbls = new CswSetupVbls(SetupMode); CswDbCfgInfo ConfigInfo = new CswDbCfgInfo(SetupMode); CswNbtResources ReturnVal = new CswNbtResources(AppType, SetupVbls, ConfigInfo, ExcludeDisabledModules, CswSuperCycleCache, CswResourcesMaster, CswLogger); ReturnVal.SetDbResources(PooledConnectionState); ////bz # 9896: This events must only be assigned when we first instance the class; ////if we also assign them to cached resources, we get duplicate events occuring :-( //CswNbtMetaDataEvents CswNbtMetaDataEvents = new CswNbtMetaDataEvents( ReturnVal ); //ReturnVal.OnMakeNewNodeType += new CswNbtResources.NewNodeTypeEventHandler( CswNbtMetaDataEvents.OnMakeNewNodeType ); //ReturnVal.OnCopyNodeType += new CswNbtResources.CopyNodeTypeEventHandler( CswNbtMetaDataEvents.OnCopyNodeType ); //ReturnVal.OnMakeNewNodeTypeProp += new CswNbtResources.NewNodeTypePropEventHandler( CswNbtMetaDataEvents.OnMakeNewNodeTypeProp ); //ReturnVal.OnEditNodeTypePropName += new CswNbtResources.EditPropNameEventHandler( CswNbtMetaDataEvents.OnEditNodeTypePropName ); //ReturnVal.OnDeleteNodeTypeProp += new CswNbtResources.DeletePropEventHandler( CswNbtMetaDataEvents.OnDeleteNodeTypeProp ); //ReturnVal.OnEditNodeTypeName += new CswNbtResources.EditNodeTypeNameEventHandler( CswNbtMetaDataEvents.OnEditNodeTypeName ); return(ReturnVal); }
public CswSessionResourcesNbt(HttpApplicationState HttpApplicationState, HttpRequest HttpRequest, HttpResponse HttpResponse, HttpContext Context, string LoginAccessId, CswEnumSetupMode SetupMode) { //SuperCycleCache configuraiton has to happen here because here is where we can stash the cache, //so to speak, in the wrapper class -- the resource factory is agnostic with respect to cache type CswSetupVbls SetupVbls = new CswSetupVbls(CswEnumSetupMode.NbtWeb); ICswSuperCycleCache CswSuperCycleCache = new CswSuperCycleCacheWeb(Context.Cache); // Set the cache to drop anything 10 minutes old CswSuperCycleCache.CacheDirtyThreshold = DateTime.Now.Subtract(new TimeSpan(0, 10, 0)); CswDbCfgInfo CswDbCfgInfo = new CswDbCfgInfo(CswEnumSetupMode.NbtWeb); CswResourcesMaster = new CswResources(CswEnumAppType.Nbt, SetupVbls, CswDbCfgInfo, new CswSuperCycleCacheDefault(), null); CswResourcesMaster.SetDbResources(ChemSW.RscAdo.CswEnumPooledConnectionState.Open); CswResourcesMaster.AccessId = CswDbCfgInfo.MasterAccessId; CswNbtResources = CswNbtResourcesFactory.makeCswNbtResources(CswEnumAppType.Nbt, SetupMode, true, CswSuperCycleCache, RscAdo.CswEnumPooledConnectionState.Open, CswResourcesMaster, CswResourcesMaster.CswLogger); bool RecordStatistics = CswConvert.ToBoolean(CswNbtResources.SetupVbls[CswEnumSetupVariableNames.RecordUserStatistics]); //Dictionary<string, string> Cookies = new Dictionary<string, string>(); //foreach( string CookieName in Context.Request.Cookies ) //{ // Cookies[CookieName] = Context.Request.Cookies[CookieName].Value; //} CswNbtSchemaAuthenticatorFactory AuthenticatorFactory = new CswNbtSchemaAuthenticatorFactory(CswNbtResources); ICswSchemaAuthenticater Authenticator = AuthenticatorFactory.Make(CswNbtResources.SetupVbls); CswSessionManager = new CswSessionManager(CswEnumAppType.Nbt, new CswWebClientStorageHttpHeader(HttpRequest, HttpResponse), //new CswWebClientStorageCookies( HttpRequest, HttpResponse ), LoginAccessId, CswNbtResources.SetupVbls, CswNbtResources.CswDbCfgInfo, CswNbtResources, CswResourcesMaster, Authenticator, //Cookies, _CswNbtStatistics = new CswNbtStatistics(new CswNbtStatisticsStorageDb(CswNbtResources), new CswNbtStatisticsStorageStateServer(), RecordStatistics)); CswNbtResources.CswSessionManager = CswSessionManager; CswNbtStatisticsEvents = _CswNbtStatistics.CswNbtStatisticsEvents; CswSessionManager.OnDeauthenticate += new CswSessionManager.DeathenticationHandler(OnDeauthenticate); CswNbtResources.AccessId = CswSessionManager.AccessId; }//ctor()