public bool Run(out string ErrorMessage) { // Set the default login state to failed LoginResult = LoginResult.Failed; // Get the server settings if (!TryGetServerSettings(ProjectFileName, ref ServerAndPort, ref UserName, Log)) { ErrorMessage = "Unable to get Perforce server settings."; return(false); } // Create the connection PerforceConnection Perforce = new PerforceConnection(UserName, null, ServerAndPort); // If we've got a password, execute the login command if (Password != null) { string PasswordErrorMessage; LoginResult = Perforce.Login(Password, out PasswordErrorMessage, Log); if (LoginResult != LoginResult.Succeded) { Log.WriteLine(PasswordErrorMessage); ErrorMessage = String.Format("Unable to login: {0}", PasswordErrorMessage); return(false); } } // Check that we're logged in bool bLoggedIn; if (!Perforce.GetLoggedInState(out bLoggedIn, Log)) { ErrorMessage = "Unable to get login status."; return(false); } if (!bLoggedIn) { LoginResult = LoginResult.MissingPassword; ErrorMessage = "User is not logged in to Perforce."; Log.WriteLine(ErrorMessage); return(false); } // Execute the inner task LoginResult = LoginResult.Succeded; return(InnerTask.Run(Perforce, Log, out ErrorMessage)); }
public bool Run(out string ErrorMessage) { // Set the default login state to failed LoginResult = LoginResult.Failed; // If we've got a password, execute the login command if (Password != null) { string PasswordErrorMessage; LoginResult = Perforce.Login(Password, out PasswordErrorMessage, Log); if (LoginResult != LoginResult.Succeded) { Log.WriteLine(PasswordErrorMessage); ErrorMessage = String.Format("Unable to login: {0}", PasswordErrorMessage); return(false); } } // Check that we're logged in bool bLoggedIn; if (!Perforce.GetLoggedInState(out bLoggedIn, Log)) { ErrorMessage = "Unable to get login status."; return(false); } if (!bLoggedIn) { LoginResult = LoginResult.MissingPassword; ErrorMessage = "User is not logged in to Perforce."; Log.WriteLine(ErrorMessage); return(false); } // Execute the inner task LoginResult = LoginResult.Succeded; return(InnerTask.Run(Perforce, Log, out ErrorMessage)); }