Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        /// <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);
        }
Ejemplo n.º 3
0
        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()