示例#1
0
        /// <summary>
        /// Resgiser appointed module
        /// </summary>
        /// <param name="module"></param>
        public static void Register(IPWModule module, params object[] args)
        {
            if (module == null)
            {
                _log.Error("Module is not null.");
                return;
            }

            if (_modules.ContainsKey(module.ModuleName))
            {
                _log.WarnFormat("Could not add [{0}] to the registered list. Repeat entry in modules?", module.ModuleName);
                return;
            }

            _modules.Add(module.ModuleName, module);
            _log.InfoFormat("Registered module:[{0},{1}]", module.ModuleName, module.GetType().FullName);

            try
            {
                InitModule(module);
            }
            catch (Exception ex)
            {
                _log.Error("Module :[" + module.ModuleName + "] initialize fail.", ex);
            }
        }