Example #1
0
        /// <summary>
        /// this Constructor do the following things
        /// 1-Set Configurations
        /// 2-Connect to db
        /// 3-Start Logging Thread
        /// 4-Start thFlushMemory Thread
        /// </summary>
        public ConferenceServer()
        {
            /*
             * loading configuration files
             * */
            getConfig();
            dbCon=new MySqlWrapper();
            dbCon.Connect(databaseServer,databaseUsername,databasePassword);
            dbCon.SelectDB("ctool");
            staticServerInstance = this;
            #if TESTING
            Console.Write(databaseServer + " " + databaseUsername + " "+ databasePassword);
            #endif

            //			insertFlowThread = new Thread(new ThreadStart(insertFlowMessages));
            //			insertFlowThread.Name = "insertFlowThread Thread : ConferenceServer()";
            //			insertFlowThread.Start();
            //
            // thread free all extra resorces after specific time   Kamran
            Thread thFlushMemory = new Thread(new ThreadStart(overallFlushMemory)); //per2
            thFlushMemory.Name = "overallFlushMemory Thread : ConferenceServer";//per2
            thFlushMemory.Start();//per2
        }
Example #2
0
        static void Main(string[] args)
        {
            try
            {
                // setup .NET remoting
                System.Configuration.ConfigurationSettings.GetConfig("DNS");
                /*
                 * Belikov.GenuineChannels.DotNetRemotingLayer.GenuineGlobalEventProvider provides the global
                 * GenuineChannelsGlobalEvent event fired for each Genuine Channels event. You can attach a
                 * handler to it if you want to process events generated by all channels and services.
                 */
                GenuineGlobalEventProvider.GenuineChannelsGlobalEvent += new GenuineChannelsGlobalEventHandler(GenuineChannelsEventHandler);
                //GlobalLoggerContainer.Logger = new BinaryLog(@"c:\tmp\server.log", false);
                //Belikov.GenuineChannels.Logbook.GenuineLoggingServices.SetUpLoggingToFile("D:\\GenuineChannelsLog\\server.genchlog",GenuineLoggingServices.DefaultLoggingOptions);
                RemotingConfiguration.Configure("Server.exe.config");
                // bind the server
                ConferenceServer server = new ConferenceServer();
                RemotingServices.Marshal(server, "ChatServer.rem");

                #if TESTING
                Console.WriteLine("Server has been started. Press enter to exit.");
                #endif

                for(;;)
                    Console.ReadLine();

                //server.billingThread.Abort();

            }
            catch(Exception ex)
            {
                Console.WriteLine("Exception: {0}. Stack trace: {1}.", ex.Message, ex.StackTrace);
            }
        }