/// <summary> /// Perform QuantConnect authentication /// </summary> /// <param name="serviceProvider">Visual Studio services provider</param> /// <param name="explicitLogin">User explicitly clicked Log In button</param> /// <returns>true if user logged into QuantConnect, false otherwise</returns> public bool DoLogIn(IServiceProvider serviceProvider, string dataFolderPath, bool explicitLogin) { _log.Info("Logging in"); if (!PathUtils.DataFolderPathValid(dataFolderPath)) { VsUtils.ShowMessageBox(serviceProvider, "Incorrect data folder", $"Incorrect data folder path: {dataFolderPath}\nGo to Tools -> Settings -> QuantConnect to set it"); return(false); } var authorizationManager = AuthorizationManager.GetInstance(); if (authorizationManager.IsLoggedIn()) { _log.Info("Already logged in"); return(true); } var previousCredentials = _credentialsManager.GetLastCredential(); if (!explicitLogin && LoggedInWithLastStorredPassword(previousCredentials, dataFolderPath)) { _log.Info("Logged in with previously storred credentials"); return(true); } return(LogInWithDialog(serviceProvider, previousCredentials, dataFolderPath)); }
/// <summary> /// Perform QuantConnect authentication /// </summary> /// <param name="serviceProvider">Visual Studio services provider</param> /// <param name="explicitLogin">User explicitly clicked Log In button</param> /// <param name="showLoginDialog">If true LoginDialog will be shown, careful it blocks UI</param> /// <returns>true if user logged into QuantConnect, false otherwise</returns> public async Task <bool> Login(IServiceProvider serviceProvider, bool explicitLogin, bool showLoginDialog = true) { VSActivityLog.Info("Logging in"); var authorizationManager = AuthorizationManager.GetInstance(); if (authorizationManager.IsLoggedIn()) { VSActivityLog.Info("Already logged in"); return(true); } var previousCredentials = CredentialsManager.GetLastCredential(); if (!explicitLogin && await LoggedInWithLastStorredPassword(previousCredentials)) { VSActivityLog.Info("Logged in with previously storred credentials"); return(true); } if (showLoginDialog) { return(LoginWithDialog(serviceProvider, previousCredentials)); } VsUtils.DisplayInStatusBar(serviceProvider, "Please login to QuantConnect"); return(false); }
/// <summary> /// Perform QuantConnect authentication /// </summary> /// <param name="serviceProvider">Visual Studio services provider</param> /// <param name="explicitLogin">User explicitly clicked Log In button</param> /// <returns>true if user logged into QuantConnect, false otherwise</returns> public bool Login(IServiceProvider serviceProvider, bool explicitLogin) { VSActivityLog.Info("Logging in"); var authorizationManager = AuthorizationManager.GetInstance(); if (authorizationManager.IsLoggedIn()) { VSActivityLog.Info("Already logged in"); return(true); } var previousCredentials = CredentialsManager.GetLastCredential(); if (!explicitLogin && LoggedInWithLastStorredPassword(previousCredentials)) { VSActivityLog.Info("Logged in with previously storred credentials"); return(true); } return(LoginWithDialog(serviceProvider, previousCredentials)); }