public override void Connect()
        {
            LogConnectionInfo();

            NativeSessionStatusChanged(ConnectionStatusArguments.ArgumentsWithStatus(RtsConnectionStatus.rtsConnectionConnecting));

            // Delay by 1 second to demonstrate progress
            ApiUtils.ExecuteAfterDelay(() => {
                m_sessionViewController = new DummySessionViewController();
                SessionView             = m_sessionViewController.View;

                NativeSessionStatusChanged(ConnectionStatusArguments.ArgumentsWithStatus(RtsConnectionStatus.rtsConnectionConnected));
            }, 1000);
        }
        public override void Dealloc()
        {
            this.LogDealloc(true);

            if (m_sessionViewController != null)
            {
                SessionView = null;

                m_sessionViewController.Release();
                m_sessionViewController = null;
            }

            if (CurrentScreenshot != null)
            {
                CurrentScreenshot.Release();
                CurrentScreenshot = null;
            }

            this.SendMessageSuper(DummyConnectionClass, "dealloc");
        }