Beispiel #1
0
 /// <summary>
 ///     Loads the current module.
 /// </summary>
 public bool Load(IModuleContext context)
 {
     Should.NotBeNull(context, "context");
     if (!_supportedModes.HasFlagEx(context.Mode))
     {
         return(false);
     }
     if (!_iocContainerCanBeNull && context.IocContainer == null)
     {
         return(false);
     }
     lock (_locker)
     {
         _context      = context;
         _iocContainer = context.IocContainer;
         _mode         = context.Mode;
         try
         {
             return(LoadInternal());
         }
         finally
         {
             _context      = null;
             _iocContainer = null;
         }
     }
 }
        public bool Load(IModuleContext context)
        {
            Should.NotBeNull(context, "context");
            var mode = _supportedModes & context.Mode;

            if (_supportedModes.HasFlagEx(LoadMode.RuntimeDebug) || _supportedModes.HasFlagEx(LoadMode.RuntimeRelease))
            {
                if (mode != context.Mode)
                {
                    return(false);
                }
            }
            else
            {
                if (mode == 0)
                {
                    return(false);
                }
            }
            if (!_iocContainerCanBeNull && context.IocContainer == null)
            {
                return(false);
            }
            lock (_locker)
            {
                _context      = context;
                _iocContainer = context.IocContainer;
                _mode         = context.Mode;
                try
                {
                    return(LoadInternal());
                }
                finally
                {
                    _context      = null;
                    _iocContainer = null;
                    _mode         = default(LoadMode);
                }
            }
        }