예제 #1
0
        public static void Init(ServerInitializer initializer)
        {
            if (Interlocked.CompareExchange(ref model, new ServerModel(), null) != null)
            {
                throw new InvalidOperationException("model already inited");
            }

            Server = new AsyncServer();
            API    = initializer.API ?? new StandardServerAPI();

            Plugins = new ServerPluginManager(initializer.PluginsPath);
            Plugins.LoadPlugins(initializer.ExcludedPlugins);
        }
예제 #2
0
        public static void Init(ServerInitializer initializer)
        {
            if (Interlocked.CompareExchange(ref _chat, new ServerChat(), null) != null)
            {
                throw new InvalidOperationException("model already inited");
            }

            Api    = new ServerApi(initializer.AdminPassword);
            Server = new AsyncServer(Api, _notifier, Logger);

            Plugins = new ServerPluginManager(initializer.PluginsPath);
            Plugins.LoadPlugins(initializer.ExcludedPlugins);
        }
예제 #3
0
        public static void Init(ServerInitializer initializer)
        {
            if (!initializer.Certificate.HasPrivateKey)
            {
                throw new ArgumentException("Initializer should have certificate with private key.");
            }

            if (Interlocked.CompareExchange(ref _chat, new ServerChat(), null) != null)
            {
                throw new InvalidOperationException("model already inited");
            }

            Api    = new ServerApi(initializer.AdminPassword);
            Server = new AsyncServer(initializer.Certificate, Api, _notifier, Logger);

            Plugins = new ServerPluginManager(initializer.PluginsPath);
            Plugins.LoadPlugins(initializer.ExcludedPlugins);
        }
예제 #4
0
        public static void Init(ServerInitializer initializer)
        {
            if (Interlocked.CompareExchange(ref model, new ServerModel(), null) != null)
            throw new InvalidOperationException("model already inited");

              Server = new AsyncServer();
              API = initializer.API ?? new StandardServerAPI();

              Plugins = new ServerPluginManager(initializer.PluginsPath);
              Plugins.LoadPlugins(initializer.ExcludedPlugins);
        }