Example #1
0
 public void ResetState()
 {
     _Configuration            = null;
     _MonoRailContainer        = null;
     _UrlTokenizer             = null;
     _EngineContextFactory     = null;
     _ServiceProviderLocator   = null;
     _ControllerFactory        = null;
     _ControllerContextFactory = null;
     _StaticResourceRegistry   = null;
 }
Example #2
0
        void PerformOneTimeInitializationIfNecessary(HttpContext context)
        {
            _Locker.AcquireReaderLock(-1);

            if (_MonoRailContainer != null)
            {
                _Locker.ReleaseReaderLock();
            }
            else
            {
                _Locker.UpgradeToWriterLock(-1);

                if (_MonoRailContainer != null)
                {
                    _Locker.ReleaseWriterLock();
                }
                else
                {
                    try
                    {
                        if (_Configuration == null)
                        {
                            _Configuration = ObtainConfiguration(context.ApplicationInstance);
                        }

                        IServiceProviderEx userServiceProvider = _ServiceProviderLocator.LocateProvider();
                        _MonoRailContainer = CreateDefaultMonoRailContainer(
                            userServiceProvider,
                            context.ApplicationInstance);
                    }
                    finally
                    {
                        _Locker.ReleaseWriterLock();
                    }
                }
            }
        }
		void PerformOneTimeInitializationIfNecessary( HttpContext context )
		{
			_Locker.AcquireReaderLock( -1 );

			if ( _MonoRailContainer != null )
			{
				_Locker.ReleaseReaderLock();
			}
			else
			{
				_Locker.UpgradeToWriterLock( -1 );

				if ( _MonoRailContainer != null )
				{
					_Locker.ReleaseWriterLock();
				}
				else
				{
					try
					{
						if ( _Configuration == null )
						{
							_Configuration = ObtainConfiguration( context.ApplicationInstance );
						}

						IServiceProviderEx userServiceProvider = _ServiceProviderLocator.LocateProvider();
						_MonoRailContainer = CreateDefaultMonoRailContainer( 
												userServiceProvider, 
												context.ApplicationInstance );
					}
					finally
					{
						_Locker.ReleaseWriterLock();
					}
				}
			}
		}
		public void ResetState()
		{
			_Configuration = null;
			_MonoRailContainer = null;
			_UrlTokenizer = null;
			_EngineContextFactory = null;
			_ServiceProviderLocator = null;
			_ControllerFactory = null;
			_ControllerContextFactory = null;
			_StaticResourceRegistry = null;
		}