コード例 #1
0
        private void UpdateActiveConnection(IConnection candidateConnection = null)
        {
            lock (_syncObj) {
                var brokerConnectionInfo = _sessionProvider.Broker.ConnectionInfo;
                if (candidateConnection != null)
                {
                    if (candidateConnection == ActiveConnection && candidateConnection.BrokerConnectionInfo == brokerConnectionInfo)
                    {
                        return;
                    }
                }
                else if (brokerConnectionInfo == (ActiveConnection?.BrokerConnectionInfo ?? default(BrokerConnectionInfo)))
                {
                    return;
                }

                var connection = candidateConnection ?? RecentConnections.FirstOrDefault(c => brokerConnectionInfo == c.BrokerConnectionInfo);
                if (connection != null)
                {
                    connection.LastUsed = DateTime.Now;
                }

                ActiveConnection = connection;
                SaveActiveConnectionToSettings();
                UpdateRecentConnections();
            }
        }
コード例 #2
0
ファイル: ConnectionManager.cs プロジェクト: ktaranov/RTVS
        private void SwitchBrokerToLastConnection()
        {
            var connectionInfo = _settings.LastActiveConnection;

            if (!string.IsNullOrEmpty(connectionInfo?.Path))
            {
                SwitchBroker(connectionInfo.Name, connectionInfo.Path, connectionInfo.RCommandLineArguments);
                return;
            }

            var connection = RecentConnections.FirstOrDefault();

            if (connectionInfo != null)
            {
                SwitchBroker(connection);
                return;
            }

            var localRPath = new RInstallation().GetRInstallPath();

            if (localRPath != null)
            {
                SwitchBroker(CreateConnection("Local", localRPath, string.Empty));
            }
        }
コード例 #3
0
ファイル: ConnectionManager.cs プロジェクト: ktaranov/RTVS
        private void UpdateActiveConnection()
        {
            if (ActiveConnection?.Id == _brokerConnector.BrokerUri)
            {
                return;
            }

            ActiveConnection = RecentConnections.FirstOrDefault(c => c.Id == _brokerConnector.BrokerUri);
            SaveActiveConnectionToSettings();
        }
コード例 #4
0
        private void UpdateActiveConnection()
        {
            if (string.IsNullOrEmpty(_sessionProvider.Broker.Name) || ActiveConnection?.Id == _sessionProvider.Broker.Uri)
            {
                return;
            }

            ActiveConnection = RecentConnections.FirstOrDefault(c => c.Id == _sessionProvider.Broker.Uri);
            SaveActiveConnectionToSettings();
        }