当前位置: 首页>>代码示例>>C#>>正文


C# IConfig.GetServerList方法代码示例

本文整理汇总了C#中IConfig.GetServerList方法的典型用法代码示例。如果您正苦于以下问题:C# IConfig.GetServerList方法的具体用法?C# IConfig.GetServerList怎么用?C# IConfig.GetServerList使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在IConfig的用法示例。


在下文中一共展示了IConfig.GetServerList方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Initialize

        /// <summary>
        /// Initializes with the specified config.
        /// </summary>
        /// <param name="config">The config.</param>
        /// <returns></returns>
        public static bool Initialize(IConfig config)
        {
            m_Config = config;

            if(!config.IndependentLogger)
                LogUtil.Setup(new ELLogger());
            else
                LogUtil.Setup(new DynamicELLogger("Logs", m_Config.GetServerList().Select(s => s.Name)));

            List<IServiceConfig> serviceList = config.GetServiceList();

            Type serviceType;

            foreach (IServiceConfig service in serviceList)
            {
                if (service.Disabled)
                    continue;

                if (!AssemblyUtil.TryGetType(service.Type, out serviceType))
                {
                    LogUtil.LogError("Failed to initialize " + service.ServiceName + "!");
                    return false;
                }

                m_ServiceDict[service.ServiceName] = serviceType;
            }

            return true;
        }
开发者ID:xxjeng,项目名称:nuxleus,代码行数:34,代码来源:SocketServerManager.cs

示例2: Start

        /// <summary>
        /// Starts with specified config.
        /// </summary>
        /// <param name="config">The config.</param>
        /// <returns></returns>
        public static bool Start(IConfig config)
        {
            List<IServerConfig> serverList = config.GetServerList();

            Type serviceType = null;

            //ServiceCredentials credentials = null;

            //if (config.CredentialConfig != null)
            //    credentials = GetServiceCredentials(config.CredentialConfig);

            foreach (IServerConfig serverConfig in serverList)
            {
                if (serverConfig.Disabled)
                    continue;

                bool startResult = false;

                if (m_ServiceDict.TryGetValue(serverConfig.ServiceName, out serviceType))
                {
                    if (serviceType == null)
                    {
                        LogUtil.LogError(string.Format("The service {0} cannot be found in configuration!", serverConfig.ServiceName));
                        LogUtil.LogError("Failed to start " + serverConfig.Name + " server!");                        
                        return false;
                    }

                    IRunable server = Activator.CreateInstance(serviceType) as IRunable;
                    if (server != null && server.Setup(GetServiceProvider(serverConfig.ServiceName, serverConfig.Provider), serverConfig, config.ConsoleBaseAddress))
                    {
                        //server.ServerCredentials = credentials;

                        if (server.Start())
                        {
                            m_ServerList.Add(server);
                            startResult = true;
                        }
                    }
                }

                if (!startResult)
                {
                    LogUtil.LogError("Failed to start " + serverConfig.Name + " server!");
                    return false;
                }
                else
                {
                    LogUtil.LogInfo(serverConfig.Name + " has been started");
                }
            }


            return true;
        }
开发者ID:xxjeng,项目名称:nuxleus,代码行数:59,代码来源:SocketServerManager.cs


注:本文中的IConfig.GetServerList方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。