Esempio n. 1
0
        /// <summary>
        /// Main Entry point of the Server.
        /// </summary>
        /// <param name="args">Arguments: arg[0] the LogLevel (0=Lifecycle,1=Message,2=Protocol) - args[1] a Log File</param>
        /// <see cref="TypeCobol.LanguageServer.StdioHttp.ServerLogLevel"/>
        static void Main(string[] args)
        {
            ServerLogLevel logLevel;
            TextWriter     logWriter;

            GetArguments(args, out logLevel, out logWriter);
            // Open log file
            try
            {
                // Configure the protocols stack
                var httpServer     = new StdioHttpServer(Encoding.UTF8, logLevel, logWriter);
                var jsonRPCServer  = new JsonRPCServer(httpServer);
                var languageServer = new TypeCobolServer(jsonRPCServer);

                // Start listening to incoming request (block, infinite loop)
                httpServer.StartReceivingMessagesFor(jsonRPCServer);
            }
            finally
            {
                if (logWriter != System.Console.Error)
                {
                    logWriter.Close();
                }
            }
        }
        static void Main(string[] args)
        {
            // args[0] : Trace level
            ServerLogLevel logLevel = (ServerLogLevel)Int32.Parse(args[0]);
            // args[1] : Log file name
            string logFile = args[1];
            
            // Open log file
            using (StreamWriter sw = new StreamWriter(logFile))
            {
                sw.AutoFlush = true;

                // Configure the protocols stack
                var httpServer = new StdioHttpServer(Encoding.UTF8, logLevel, sw);
                var jsonRPCServer = new JsonRPCServer(httpServer);
                var languageServer = new TypeCobolServer(jsonRPCServer);

                // Start listening to incoming request (block, infinite loop)
                httpServer.StartReceivingMessagesFor(jsonRPCServer);
            }
        }