Ejemplo n.º 1
0
        static async Task Main(string[] args)
        {
            var pythonConnector = new PythonConnectorServerManager();

            pythonConnector.ServerStateObservable
            .Subscribe(state => Console.WriteLine($"NEW SERVER STATE {state}"));

            pythonConnector.StdOutputObservable.Subscribe(s => Console.WriteLine($"STDOUD>{s}"));
            pythonConnector.ErrOutputObservable.Subscribe(s => Console.WriteLine($"STDERR!!!>{s}"));

            pythonConnector.Start();

            await pythonConnector.WaitForServerState(PythonServerState.Running);

            var awaitableAuth = pythonConnector.PerformOAuth();

            await pythonConnector.WaitForServerState(PythonServerState.AwaitingAuthenticationToken);

            Console.WriteLine("COPY TOKEN HERE >");
            var token = Console.ReadLine();

            await pythonConnector.SendAuthToken(token);

            await awaitableAuth;

            Console.ReadKey();
        }
Ejemplo n.º 2
0
        private void StartAndWaitUntilConnectorStarted()
        {
            var waitEvent = new ManualResetEventSlim();

            waitEvent.Reset();

            _pythonConnectorServerManager.ServerStateObservable.Subscribe((state) =>
            {
                if (state == PythonServerState.Running)
                {
                    waitEvent.Set();
                }
            });

            _pythonConnectorServerManager.Start();

            waitEvent.Wait();
        }